Each of these would be a new URL and as the page content would be the same, you would create duplicate content. You have (at least) three options:
a) Make sure you use canonical link element on the page, to point to the canoncal version
b) you could tell google to ignore this parameter in Google Webmaster Tools parameter settings
c) alternatively you could append the distance as anchor fragment, eg /pet-stores-in-boston-ma#mi=5
Thanks for the answer! Is C an acceptable alternative that would make options A & B not relevant? Any downside?
Seems GA doesn't track anchors so C is out :(
If we do option B, and do a url rewrite server side before the page loads so there will be no duplicate content because the original non-variable link will no longer be available, will that affect SEO?
are you saying there will only be one url per city?
with a fixed value for the mi parameter?
why do you need the additional information in the url?
is it a different page if the value of mi changes?
Yes phranque, adding the variable is only for us to segment in GA and it will replace the existing city url without the parameter to become the only on. We need this to run reports in GA on visitors that were on a page with mi=1 and mi=5 but not mi=10 or more. We also want to add only mi=1 and mi=5 to a remarketing list but not the others.
So if we redirect all existing pages to add the parameter and tell WMT to ignore "mi" because it doesn't change content, would the url "pet-stores-in-boston-ma" currently in the SERP that would redirect to "pet-stores-in-boston-ma?mi=5" just be ignored by google/googlebot and keep its rankings? We also want to keep the non-paramater url on internal links even though it will redirect, so that we don't need to update internal links everytime closer merchants are added.
What are your thoughts?
You should make sure that URL requests with NO parameter returns search results for a default size (preferably a large size) and then use this as the canonical URL that all other pages requested with with parameters refer to. Google will prefer that the URL without parameters is the canonical version.
This works in the same way that example.com/product-listing lists all of the products and
example.com/product-listing?perpage=20&page=3 only lists a few of them, but refers to the "all" page as the canonical URL.
internally linking to lots of urls that redirect is a signal of low quality.
I think you are using the wrong technical solution to an analytics requirement.
You are mixing redirect and rewrite.
If you internally "rewrite" the URL, then the user/google will still see the URL with ?mi= parameter, this will create duplicate content.
|If we do option B, and do a url rewrite server side before the page loads so there will be no duplicate content because the original non-variable link will no longer be available, will that affect SEO? |
How are you going to "redirect" existing page to add the parameter? Redirect would mean that the page arrives without the parameter, and then you would issue 301 redirect to a page with the parameter - and this would be no good.
|So if we redirect all existing pages to add the parameter and tell WMT to ignore "mi" because it doesn't change content,... |
There is another option you might want to explore, for this I am assuming that you would have internal link somewhere with the miles of the closest store (I am quite not understanding whether your distance information is a distance between city centre and the merchant or distance between user and the merchant and if it is from the user, where do you get the information on miles distance from the user, i.e. how do you figure out what should be your ?mi= parameter).
But assuming that your original idea was that you intended that the URL with ?mi= parameter was an internal link somewhere on your site, and that the URL with and without mi= parameter would return the same page content, then you may want to explore Google Analytics Event Tracking code instead of using ?mi= parameter.
This is tracking that you can set up within your GA, and then ensure that you put the correct syntax in your HTML source. The syntax would be something like:
<a onclick="_gaq.push(['_trackEvent', 'miles-distance', 'clicked-on-link', 'Pet store in Boston', '9 miles']);" href="/pet-stores-in-boston-ma">some anchor text</a>
This would work only for internal links though. Search for "Google Event Tracking" for more.
<added> The above is just an example, you would have to figure out how to best set up variables and what to track where to get what you want. </added>
Thanks! Onclick won't work because it won't track organic traffic directly to those pages. A solution we have is to just alter the page title by adding the number of miles at the end and then running our reports based on page title.
The best way is you should contact google to ignore this parameter in Google Webmaster Tools parameter settings .
[edited by: tedster at 5:56 am (utc) on Nov 9, 2012]
[edit reason] removed non-authoritative link [/edit]
OR simply you can redirect the old URL to new using .htaccess file.
You can redirect, but the canonical URL should be the one without parameters and the content it returns should include everything.