One of the fun problems we have working at WhatClinic.com is trying to organise the millions of pages that result from listing tens of thousands of clinics in thousands of locations for thousands of treatments.
Our search results pages list up to 12 clinics at a time, and when they’re full they offer a great user experience. Lots of choice and lots of information is presented along with a simple way to contact whichever of the clinics takes your fancy.
However, not every combination of clinic type + location + treatment will have a full page of results. In fact with only a little knowledge you could probably guess the URL of a page with no results on it. The obvious solution to these empty pages is to return a 404 response code and not to link to the pages internally, minimising the chance that they’ll be found by users or search engines alike.
What’s Right For The User?
Add one clinic to the page though and we’re left with a quandary. Is this really a useful page for a user? Wouldn’t they like more choice? We know for instance that pages with more clinics on them have a better conversion rate, so would we be better off sending users to a “parent” location page instead, i.e. a location that contains the smaller location but should have more than one clinic on offer?
Another option available to us would be to fill the rest of the page with 11 of the nearest clinics to the location (which could be tens if not hundreds of miles away in some cases), but this would massively increase the duplication of data served across the pages on our site as clinics’ listings would appear in far more locations than they currently do.
Similar Pages – The Rel=”Canonical” Solution
We decided we’d like to see what effect the first option had, i.e. sending the users to a parent page, but we were uncomfortable with 301 redirecting every page that only had one clinic on it, so we decided to try a slightly softer approach.
Having read an article on SEOMoz about using the Rel=”Canonical” tag to get more than one keyword to rank for a given piece of content, we decided to try what we thought was quite a clever scheme that would serve the user and the search engines.
We would put a Rel=”Canonical” tag on our search results pages with only one clinic listed, and we’d hope to send people searching Google for Place A to the search results of Place B, which would contain the search results for Place A and more, giving the user a better choice.
Anchor Text Isn’t A Very Strong Ranking Signal For Pages With A Rel=”Canonical”
Unfortunately for us, the experiment hasn’t exactly gone to plan. We were cautious and only put the Rel=”Canonical” links on a subset of our one result pages, but even still we have enough data to see that for now at least none of the Place B pages are ranking for Place A keywords.
Of a sample set of 20 one result pages with a Rel=”Canonical” tag, 14 have been crawled and no longer appear in Google’s index, and searching using the “Place A” keyword for these pages doesn’t return the Place B search results page.
You might think, well Google have decided that the Place A and Place B pages aren’t sufficiently similar to be a valid use of the Rel=”Canonical” tag, and you might be right, but the fact that original Place A URLs are no longer appearing in the index seems to counter this supposition.
More likely it seems is that the anchor text of the links pointing at Place A pages isn’t a strong enough signal for the Place B pages to rank for keywords based on “Place A”.
Back To The Drawing Board
So it looks like we’re back to square one on this particular problem. I think the next thing to try is the option discussed above where we fill out the search results. It seems like a good thing to do for the user, but I am slightly worried about diluting our content by potentially overusing it. We’ll be sure to keep you posted about the results when we try it out.
Have you run any experiments with the Rel=”Canonical” tag yet? For what purpose, and what results did you see? Let us know in the comments.













I’m not sure I’d agree with your obvious solution and returning a 404.
You’re being asked a question “Is this treatment available here?”, which has an answer “No, but have you considered these other options”.
Since the answer could change to “Yes, here you go”, this is a clear 200.
The current pattern on whatclinic of presenting results of related queries, clearly marked up as such, on the requested resource, is better, for the searcher and the search engine, than 404s or 301s.
A 404 is a very strong signal that the resource that was previously here, is not available, and should no longer be referred to.
We’ve found rel=”Canonical” to be invaluable for it’s intended purpose, identifying the preferred location for resources that have multiple access routes and multiple addresses.
For listings and search results, we’d recommend using appropriate microformats to markup your breadcrumbs and page elements.
http://www.schema.org/WebPage
http://www.schema.org/SearchResultsPage
http://www.google.com/support/webmasters/bin/answer.py?answer=185417
You should be able to provide strong signals for both the treatment and location heirarchies.
To avoid having the related search suggestions diluting other page ranks, markup those links with a rel=”nofollow”
Nice idea, shame it didn’t work. I guess you could try to tweak your CMS to create a page that contains the entries from the one-result-page AND many-result-page entries and your canonical links to point to this new hybrid?
I am curious, when the non canonical (page A) was deindexed how did you reach the conclusion that the canonical (page B) did not receive the link juice (also called page rank). The only way to test that would be to make sure that page A has a few inbound links and then wait some time to see if page B ranks better in the SERPs. Did you do that? Also, did you look at the “Links to your site tool” in the Webmaster tools to see if the canonical link (from page A to page B) was registered by Google. To do that you check for inbound links toward page B and the tool tells you when the links were actually toward page A. I did a similar experiment and discussed the subject in http://codeforweb.org/dedicated.php?store=somerled .