Why I Still Hate Rel=Canonical

Note: this article assumes you understand the basics of canonicalization. If you don’t, have a look at my article, 8 Canonicalization Best Practices In Plain English.

I still don’t recommend using rel=canonical. It should be your weapon of absolute last resort.

Last February, the Big 3 search engines announced support for this link tag. A lot of folks danced a happy jig. By inserting a single line of code you could force search engines to resolve duplicate page URLs to a single page.

So, if your site is generating all of these URLs for a single page:

  • http://www.mysite.com/page.php
  • http://www.mysite.com/page.php?tracking=2
  • http://www.mysite.com/page.php?affiliate=2341

No worries…just put this in the head element of that page and search engines will ignore the duplicates. They’ll even (in some cases) redirect link authority to the right canonical page:

<link rel="canonical" href="http://www.mysite.com/page.php" />

It’s like magic!

I was more skeptical. And I remain skeptical. Wait, there are real reasons! This isn’t just me being me! Keep reading!

It’s too easy

Adam Audette wrote about this last December. It’s so easy to place a rel=canonical tag at the top of a page. One line of code, duplicate content problems fixed. But sometimes, ‘easy’ is bad.

People keep throwing the canonical tag into their sites without learning how it works. The result: They use it wrong, and sometimes royally screw up their web site’s search presence. Here’s a real-world example with names, industries, etc., changed:

A client’s site generates duplicate content due to tracking urls, inconsistent home page linking and other common issues. Their development team decided the canonical tag. That’s a lot easier than fixing each issue. So they added the tag to their next code release. Problem is, they had the tag load the URL of the current page, rather than the address of the correct canonical version. So, if I went to page.php?tracking=2, the canonical tag contained that address.


The result: They actually ended up with more duplicate content.

I’ve seen sites that insert the home page address into the canonical tag, too. Every page on the site has the equivalent of a redirect to www.mysite.com.

Double doh.

In all, half of the rel=canonical implementations I’ve checked for clients are incorrect.

My point: putting rel=canonical in the hands of anyone who can edit a web page is like giving me a Taser. You’d better hope they never use it, because they’ll do more harm than good.

Uneven support by search engines

Yes, all three search engines support rel=canonical. But they all support it differently. Google supports cross-domain use and says the canonical tag is almost a 301 redirect. Bingahoo says it sees rel=canonical as a ‘hint, not a command’.

In my testing, Bing ignores the canonical tag altogether. I don’t think Facebook’s web search supports it, either. And in my testing, Google follows rel=canonical only when there are a few duplicates. If there are hundreds or thousands of duped pages, Googlebot has a nervous breakdown, and you’re stuck with duplicates anyway.

So rel=canonical is more a set of guidelines, I guess?…

My point: Cross-search engine support for rel=canonical is at best inconsistent, and may be nonexistent. Use this tag at your peril.

Messy URL structures and duplication are still bad

Rel=canonical doesn’t make duplication and messy URL structures OK! Search engines haven’t penalized for duplicate content in a long time. But there are still consequences:

  1. It’s a performance killer. If you have the same page at many different URLs, any caching tools you’re using still have to cache all of those copies. And search engines will still have to somehow hit/access/index those pages. I won’t say ‘crawl’ because I otherwise might get gotcha’d :) .
  2. It’s messy. Other sites may link to yours at any one of the duplicate URLs. Your own writers/content managers may link to the wrong canonical URLs, too. See the next section to understand why that’s a problem.
  3. It confuses your visitors. If your URL structure contains all kinds of dross like ?this=234a3245 or ?refer=blahblahblah it makes your page URLs harder to pass around via e-mail. Which, despite assertions to the contrary, is still how much of the world passes around information.

My point: The canonical tag may fix client-side duplication problems, but those problems still exist on your server. Which is bad.

Authority decays

If PageRank passed via 301 redirects decays, I’ll bet authority passed by rel=canonical does, too. So links pointing at the wrong canonical version of a page that has rel=canonical on it may pass less and less PageRank over time.

My tinfoil hat doesn’t like it

My last problem with rel=canonical: I don’t trust client-side software to resolve problems on a web site, ever. Didn’t you all learn your lesson with nofollow? Search engine support for tags changes. Or it’s buggy and inconsistent.

The canonical tag is a client-side fix. It commands search engines to behave differently. In my experience, SEO goes far better if you resolve issues in a way that lets search engines behave normally.

Just fix it

Rel=canonical seems too good to be true. That’s because it is. With inconsistent support, a host of technical problems that remain after use and general confusion over it, the canonical link tag is at best an emergency measure.

The best solution for canonical issues is to fix them, instead.

I promise, after this article I will stop harping on canonicalization. For a little while.

Opinions expressed in the article are those of the guest author and not necessarily Search Engine Land.

Related Topics: All Things SEO Column | Channel: SEO


About The Author: is Chief Marketing Curmudgeon and President at Portent, Inc, a firm he started in 1995. Portent is a full-service internet marketing company whose services include SEO, SEM and strategic consulting.

Connect with the author via: Email | Twitter | Google+ | LinkedIn


Get all the top search stories emailed daily!  


Other ways to share:

Read before commenting! We welcome constructive comments and allow any that meet our common sense criteria. This means being respectful and polite to others. It means providing helpful information that contributes to a story or discussion. It means leaving links only that substantially add further to a discussion. Comments using foul language, being disrespectful to others or otherwise violating what we believe are common sense standards of discussion will be deleted. Comments may also be removed if they are posted from anonymous accounts. You can read more about our comments policy here.
  • Duane Forrester

    I’m reaching for my tin-foil cap to stand right beside you, Ian! Great overview. I’m seeing the same kinds of uneven, incorrect implmentations as you point out. It’s a really, really simple thing to misunderstand and insert the wrong URL into the code. Seasoned SEOs will spot the issue, but maybe not in time to stop problems.

    I think the two biggest take aways are:

    1 – fix the problem, don’t bandage it
    2 – things change, so relying on any things like this create more work later

  • Ian Lurie

    Duane, couldn’t agree more (obviously). In 13+ years in this business, I’ve never seen a tag, gadget, add-on or other ‘workaround’ introduced by anyone – including search engines – that really worked as advertised.

    Remember nofollow?

    The only exceptions MIGHT be robots.txt and the meta robots tag, but I’ll bet someone will point out some issues there, too.

  • http://www.dragonsearchmarketing.com DragonSearch

    OK, from one curmudgeon to another, I beg to differ… sort of.

    Will the canonical tag be a crutch and a band-aid(tm) for many developers. Yes, no doubt. But let’s not defenestrate this baby with the bath water. There are some really legitimate situations where the tag makes a lot of sense. In comlex ecommerce sites, there are often many instances where:
    1. You want a product to show up in several places, within the context of a certain group of pages, and
    2. It isn’t practical to create unique text for each instance.

    So, c’mon, enough of the highhorse business. Canonical is a tool that makes sense.

  • http://www.sitestreamseo.com Alastair

    Thanks for a good post.

    You seem to be expecting some abuse on this one but I couldn’t agree more. The search engines providing a band-aid does not make bad practice a good idea. I have nothing against using the tag, as a backup or a last resort but it is not the ideal solution. The ideal solution is to fix the problem.

    I can just see the developers of web apps and CMS platforms in their meetings now. A lot of them never really believed or were aware that spewing out duplicate content was a problem so what are the chances that they build in rel=canonical and refuse to engage with the issue beyond that?

    Anyone who has been doing this for more than a year or two ought to have seen this before and nofollow is a perfect example. You solve your own problems, you don’t rely on individual search engines to do it for you.

  • http://www.dragonsearchmarketing.com Etela

    Thank you Ian. I couldn’t agree more. This is an ongoing, never ending discussion between my boss (who’s comment you see above under DragonSearch) and I. I’ve been saying the same things you are. This is a tag that is not in our control, which means the search engines can change the way they treat it any time. Matt Cutts himself said that they do not promise they’ll absolutely abide by this 100%. The canonical link element is a hint, not a directive/requirement. Search engines reserve the right to choose when to use or ignore it. Matt also recommends fixing duplicate issues upstream, looking at all the other alternatives to fix it before becoming rel=canonical happy.
    While it is not easy and not always feasible to redo the entire site’s information architecture, it should be set as an ultimate goal rather than relying on tools controlled by others.

  • conrad

    Thanks for the post.

    The rel=canonical tag must never be a solution to solve linking issues. If this is the case the website’s architecture should be solved.

    However I think the rel=canonical as DragonSearch also outlined is still correct to implement in certain scenarios, such as a duplicate page which is a printer friendly version.

  • Ian Lurie

    @DragonSearch I understand what you’re saying. As it stands now, if every search engine consistently applied rel=canonical, it’d be a useful tool (IF applied sensibly, which it never is).

    But it’s not applied consistently. Not even within any one search engine. It’s a total failure as an SEO tool. Even worse, it’s become one more reason for people not to build their sites right in the first place.

    Want to show one product in several places? How about aggregating the products on category pages, and then linking to a single common product page? You can use javascript to provide a contextual backlink to the category page. That’s what all that stuff was built for.

    The e-commerce scenario you’re describing happens all the time. That doesn’t mean it’s right, or that it’s the best solution.

  • http://2helixtech.com matthiaswh

    Fun post as always, Ian.

    I think saying the tag is bad because people don’t use it properly is a little bit of backward logic. Yes, it’s primarily a bandaid for emergency measures resulting from bad site architecture or poor linking. What kind of people (particularly if there is an SEO involved) make those mistakes commonly? The kind that are going to want to take the easy way out by using the canonical tag.

    That isn’t to say good SEOs and webmasters don’t make mistakes, because they do. But they’re the ones that are going to fix the problem properly (the hard way), and only slap the canonical tag in there as a last resort or temporary fix. And they’ll be careful to use it properly.

    The people that the tag is designed to help the most are the ones who already make frequent mistakes with architecture and linking. Why would you expect them to use the tag properly?


  • robhammond

    Good post, absolutely agree – also a much neglected factor is how much duplicate content screws up the accuracy and usefulness of web analytics, which is a business case in itself for fixing the problem properly.

    Obviously rel=canonical doesn’t help the analytics issue at all, and if anything risks SEOs providing advice that we have to backtrack on at a later date. Only really advisable as a last resort with lots of disclaimers IMHO.

  • http://KTurk KTurk

    Great article on rel=canonical, I was always aware of the benefits but never saw the negatives to using the tag.

    Question for Ian or anyone else (I would greatly appreciate any insight into this scenario if this IS when you want to us rel=canonical)

    On a client site, it doesn’t take too much effort to request page edits/put 301′s in place, etc. The URL structure is clean and very user friendly through out the entire site, except for the homepage. Links from the home page (on the page, not within top nav) contain a Webtrends parameter (?WT) for analytic purposes. Google and Yahoo have recognized some duplicate pages and some people have linked to the pages using the URL with the Webtrends parameter.

    Implemented properly, would this be a best case to use the rel=canonical tag? (I don’t think the Webtrends parameters would be removed)

    Reclamation will be attempted to update the inbound link URLs; I am more concerned about the value being passed from the home page to these specific pages.

    Again, thank you for providing any insight into this situation.


Get Our News, Everywhere!

Daily Email:

Follow Search Engine Land on Twitter @sengineland Like Search Engine Land on Facebook Follow Search Engine Land on Google+ Get the Search Engine Land Feed Connect with Search Engine Land on LinkedIn Check out our Tumblr! See us on Pinterest


Click to watch SMX conference video

Join us at one of our SMX or MarTech events:

United States


Australia & China

Learn more about: SMX | MarTech

Free Daily Search News Recap!

SearchCap is a once-per-day newsletter update - sign up below and get the news delivered to you!



Search Engine Land Periodic Table of SEO Success Factors

Get Your Copy
Read The Full SEO Guide