By now, we should all be aware of the canonical tag and how it gets used to help prevent duplicate content issues. For example, you might have URLs like this:
Domain.com/article-name?sessionid=123456
The canonical tag would read something like this:
<link rel="canonical" href="http://domain.com/article-name" />
Let’s say you had a site selling various kinds of widgets. Your initial widget category page URLs might look something like this:
Domain.com/widgets
Domain.com/widgets?page=2
Domain.com/widgets?page=3
In an effort to avoid the appearance of duplicate content on the subsequent results pages, many webmasters have placed this tag on the “page=n” results pages:
<link rel="canonical" href="http://domain.com/widgets" />
The idea here is that Page data would be consolidated back to the core category page via the canonical tag.
In September Google announced they would acknowledge the rel=”next” and rel=”prev” HTML link elements to show that content spread across multiple pages is related. We can illustrate how it works with our example from above
URL: domain.com/widgets
- <link rel="next" href="http://domain.com/widgets?page=2" />
- Rel=”prev” is not applicable
URL: domain.com/widgets?page=2
- <link rel="prev" href="http://domain.com/widgets" />
- <link rel="next" href="http://domain.com/widgets?page=3" />
What does this then do for Google? According to Google:
“Now, if you choose to include rel=”next” and rel=”prev” markup on the component pages within a series, you’re giving Google a strong hint that you’d like us to:
- Consolidate indexing properties, such as links, from the component pages/URLs to the series as a whole (i.e., links should not remain dispersed between page-1.html, page-2.html, etc., but be grouped with the sequence).
- Send users to the most relevant page/URL—typically the first page of the series.”
This sounds an awful lot like what we wanted the canonical tag to accomplish, doesn’t it? Should we then remove the canonical tag and just go with the rel=prev/next attributes? The answer lies in the flaw with the initial implementation of the canonical tag. The canonical tag shouldn’t have been pointed to the main category page. Here is my recommended implementation for all three tags:
Example URL: http://domain.com/widgets?page=2
- <link rel="canonical" href="http://domain.com/widgets?page=2" />
- <link rel="prev" href=”http://domain.com/widgets" />
- <link rel="next" href="http://domain.com/widgets ?page=3" />
Why does this work?
- The rel=prev/next tags consolidate all the content and indexing information across the results pages back to the main category page.
- The canonical tag then handles any duplicate content issues that may arise from things like table-sorting links, session IDs or other tracking parameters a webmaster may want to add in the future.
I’d love to hear from you webmasters out there. Is this how you’re using these tags? Let’s hear your story!
ICF Ironworks is always on the lookout for experienced professionals who believe in hard work, having fun, and great client service.
Hey Ken,
Great post! I think more people should definitely take the time to really think about implementing these tags across their site, especially if those sites have any kind of a 'results page' on them. The big question in my mind is, will the search engines get mixed signals by having the canonical prevalent through the pages with the 'next' & 'prev' tags found? There is also the scenario of creating a 'View All' page and having the canonical point to that page but continue to use the rel='next' & 'prev' tags as a way for SE's to choose what page is more relevant for SERPs. It is definitely going to be interesting to see how this plays out and something I am going to keep a very close eye on. I know that I will be recommending the implementation of these tags at Apartments.com. Thanks again!
Posted by: Amado Candelario | 12/29/2011 at 01:03 PM
Thanks Amado! To answer your question, the canonical tag and the rel=next/prev tags are two discrete pieces of code. There shouldn't be any reason for search engines to become confused since they perform two distinct functions.
I think the common misconception is that using the canonical tags on page=n results pages by having them point back to the first page is the proper implementation. Unfortunately, it isn't. This has been confirmed by Google employees as well as other SEO folks.
The canonical tag should be reserved for things like URLs with sorting parameters, session IDs or tracking code, etc.
The rel=next/prev actual performs the function we may have previously assumed the canonical tag was performing on paginated pages.
Posted by: Ken Shafer | 12/29/2011 at 01:20 PM
Hey Ken! Nicely outlined.
I remember a discussion about just this when canonicals were first announced. It definitely occurred to me at the time that by canonicalizing the overflow pages back to the initial page we might be losing/deindexing the content on the subsequent pages -- but that this might be a good trade-off if the rest of the products could be indexed via XML Sitemaps. One could argue theoretically that the products should be indexed on their own and not based on their membership in one or more categories. But it was always a little murky and it's high time we had a pagination procedure.
Posted by: Bonnie Gibbons | 01/03/2012 at 06:16 PM
Hi Bonnie!
I'll concede that I personally wouldn't rely solely on the XML sitemap for indexing purposes. I've found that search engines rarely like "island" pages...or content they can't reach through normal crawling.
I do agree with your assertion that many times "product" pages shouldn't necessarily be tied into one category or another...especially when they may be found through multiple category paths. Therefore, unless a product in inextricably attached to a particular category, I think we'd both recommend something like this:
domain.com/[product-name]
instead of...
domain.com/[category]/[product-name]
Posted by: Ken Shafer | 01/04/2012 at 08:55 AM
Hi Ken,
I have to agree with Amado that implementing both the canonical and prev/next tags may confuse search engines. Although I agree with your argument that this is a correct use of the canonical tag there is an issue: Will search engines give priority to the canonical or prev/next tag? In both cases, issues will arise.
Posted by: Lovett | 02/11/2012 at 04:52 AM
Hi Lovett! Thanks for the question...and it's definitely a good one!
I think the thing to keep in mind is that the canonical tag and the prev/next tags function in two very different capacities. Therefore, search engines needn't be concerned about which tags to prioritize.
The canonical tag is applied to the specific URL or page it is on. Whereas the prev/next tags are applied in a way that ties a collection of pages together.
On "page 2" of a multi-page result set or article, the canonical tag is properly applied when it's pointing at domain.com/article?page=2, for example. This mitigates duplicate content issues from URLs such as domain.com/article?page=2&id=12345 or domain.com/article?page=2&sort=lowtohigh. In either instance, the canonical page is always "/article?page=2"
Then, in this example, the prev/next are pointing at "/article" and "/article?page=3" (notice they are without the extra parameters) This advises the search engine that all content along this "chain" is related and should be treated collectively when applying Page Data or ranking-related information. It's a collection of canonical URLs all rolled-up into one larger content block.
We can now see that there are two very different functions at work here. Because of that, we no longer need to be concerned about how a search engine prioritizes those two function since they are not really in competition with one another. If applied properly, the search engine should have no problem reading both sets of tags.
Hope that helps, Lovett! Thanks!
Posted by: Ken Shafer | 02/13/2012 at 09:32 AM
Hello Ken,
Thanks for this useful post. It gives the really fair understanding about the implantation of canonical tags. Still i need a little help from you to implement these tags on my sites. Well i have a product site (Software promotion site) where i would like to use these tags to avoid any plagiarism issue.
I've have one product page (View all page) for windows where there is a information about the every single software, that page URL is:
estelargroup.com/windows-software-solution.html
and there is a separate page for the per product available on the view all page, like this:
estelargroup.com/windows/lock-a-folder-for-windows.html
Now i don't want to use only "Canonical" on the all non canonical version of the pages as i want Google to Index all the pages. So how to do it? Should i suppose to use rel="next", rel="prev" tag so that all the pages would appear in the Search Results? If yes then how to do it? Any help would be greatly appreciated.
Posted by: Pamella | 04/16/2012 at 05:41 AM
Hi Pamella! Thanks for stopping by!
I checked out the links you provided and here's what I would do...
Since estelargroup.com, in its normal crawl path, doesn't appear to have any pagination that I can find, you don't need to worry about rel=next/prev.
The biggest problem this site has is crawling from the list of products (estelargroup.com/windows-software-solution.html) to the product detail page (estelargroup.com/windows/lock-a-folder-for-windows.html). Right now, there's just no way to get there that I can find.
I understand that it looks like you're looking to generate leads as an affiliate here. That's totally fine. However, if this was my site, I would use the product title on the list page div class="product-heading" Estelar Lock A Folder for Windows /div, along with possibly the image, and use them to link to your product detail page. So it would look like this:
div class="product-heading" a href="estelargroup.com/windows/lock-a-folder-for-windows.html">Estelar Lock A Folder for Windows /a /div
(sorry, this form doesn't allow me to type out correct code)
That will provide a clear crawl path to all of your product detail pages, while still allowing your "Try it free" and Buy it now" buttons to act as drivers to your lead-gen/purchase forms.
I wasn't able to find any "non-canonical" versions of pages on the site. I really don't see a need to implement those tags OR the rel=next/prev. Unless I'm missing something...if that's the case, please provide an example of two URLs pointing to the same page and I'll let you know how to implement that canonical tag.
Hope that helps!
-ken
Posted by: Ken Shafer | 04/16/2012 at 08:40 AM