Learn about the Canonical Link Element in 5 minutes

Last week Google, Yahoo, and Microsoft announced support for a new link element to clean up duplicate urls on sites. The syntax is pretty simple: An ugly url such as http://www.example.com/page.html?sid=asdf314159265 can specify in the HEAD part of the document the following:

<link rel="canonical" href="http://example.com/page.html"/>

That tells search engines that the preferred location of this url (the “canonical” location, in search engine speak) is http://example.com/page.html instead of http://www.example.com/page.html?sid=asdf314159265 .

I also did a three-minute video with WebProNews after the announcement to describe the tag, and you can watch the canonical link element video for another way to learn about it. Watching the video is the easiest way to learn about this new element quickly.

The search engines have also posted about this new open standard. You can read a blog post or help center documentation from Google, Yahoo’s blog post, or Microsoft’s blog post.

Also exciting is that Joost de Valk has already produced several plug-ins. Joost made a canonical plug-in for WordPress, a plugin for e-commerce software package Magento, and also a plug-in for Drupal. I’d expect people to make plug-ins for other software packages pretty soon, or modify the software to use this link element in the core software.

Thanks to the folks at Yahoo (e.g. Priyank Garg and others) and Microsoft (e.g. Nathan Buggia and others) who built consensus to support this open standard. On the Google side, Joachim Kupke did all the implementation and indexing work to make this happen; thanks for the heavy lifting on this, Joachim. I want to send a special shout-out to Greg Grothaus as well. Although people had discussed similar ideas in the past, Greg was a catalyst at Google and his proposal really got the ball rolling on this idea; read more about it on his blog.

If you’re interested, you can see the slides I presented last week to announce this new element:

I’ll be happy to try to answer questions if you’ve got ’em, or you can ask questions on the official Google webmaster blog. If you’re going to SES London this week, Google’s own Maile Ohye will be at SES London to answer questions as well.

Update: I had “value” instead of “href” in the link element. Serves me right for not double-checking, and thanks to the commenters who noticed!

Update, 2/23/2009: Ask just announced that they will support the canonical link element. That means all the major search engines will be supporting this tag, which is great news for site owners, developers, and webmasters. Yay!

143 Responses to Learn about the Canonical Link Element in 5 minutes (Leave a comment)

  1. Matt, let’s say 1 URL is NOT the preferred one but it ranks on page 1 of the SERPs for the preferred key phrase or words. Won’t using this tag be taking a risk as the preferred URL may only rank on page 2, 3 or lower?

    I normally leave well enough alone, rather than temp fate.

  2. Hello,

    I think this Link is a good idea. Some webmasters linking back with deliberate with parameters in a url an hopes so damage this other webmastes in his searchengines ranking.

  3. Matt,

    Unfortunately the new format rel=”canonical” doesn’t apply for news sites sharing articles across domains.

    I.e we can say; the search enginnes have only adressed 1/2 of the problem 🙂

    Can this link tag be used to suggest a canonical URL on a completely different domain?
    No. To migrate to a completely different domain, permanent (301) redirects are more appropriate. Google currently will take canonicalization suggestions into account across subdomains (or within a domain), but not across domains. So site owners can suggest http://www.example.com vs. example.com vs. help.example.com, but not example.com vs. example-widgets.com.

  4. Matt, could you make clear the differences between the new Canonical LINK tag and the “classic” Alternate LINK tag?

    To me they seem very similar, and personally I’ve previously used the Alternate tag especially for these “dynamically created duplicate content” scenarios that the Canonical tag is now meant to solve.

  5. Hi Matt,

    I have 2 things to ask here.

    1. If i have 2 pages with similar content and i have added the rel=”canonical” code in one of my page. Will the page where i have added the code will be indexed in SE’s. If this gets indexed, we can create more no. of pages with same content and point the one we look for ranking in SE’s (there might be a chance for using spamming techniques for pages where rel=”canonical” is used).

    2. In my website i would like to change the file name for a particular page. Also i have condition that i cannot use any kind of 301 redirection method in my website. In this case if i use rel=”canonical” in the old page, will this be considered as like 301 redirection.

  6. Big thanks are due to Joost de Valk for his quick work on creating WordPress and Drupal plugins, these site especially Drupal, suffer canonicalisation issues quite alot on larger scale sites, so these plugins will be very useful.

  7. Hi Matt You’ve use apsx and html as examples will still work through PHP and AJAX XML ?

  8. Matt

    Some Content Management Systems require that tags such as are displayed on every page, even is the tags are left unpopulated. They are then populated once a field in the CMS is completed on a page-by-page basis. Example of what I mean is

    I’d just like to check whether this would cause any negative issues with the canonical tag, should they be left unpopulated as I can’t seem to find the answer anywhere else. I would imagine, like with other tags, that having the canonical tag there, just unpopulated, will not cause any issues. Would just like to clarify with this new tag to be 100% sure.

    Many thanks and kind regards 🙂

  9. Great

    That will solve a ton of problems on some of the less than optimal CMS a few of our clients use.

  10. I hope this solves the duplicate URL stuff. I know some worried webmasters 🙂 Thanks a lot for the tip.

  11. This is a great tool – delighted to see all 3 Search Engines agreeing on this – its going to be handy for webmasters and searchers too! Well done on communicating this so well.

  12. I don’t get it 🙁

    Isn’t this introducing a lot of work on software authors/website owners to fix a problem that the big search engine companies have already solved?

    Also, it doesn’t seem to do anything to address the other major problem with duplicated content, e.g. the search engines “wasting time ” spidering all the different variants of a page only to later decide that they’re duplicates?

  13. @lee ist a lot easier to work out what the caononical link is and use this tag than to cater for the myriad ways that a site can generate dupliacte content.

    with this you know you have fixed all pages. Using redirects how do you “KNOW” that you have all the possible duplicate cases covered especisly if its a large site that you didnt develop and whos developers lets just say might be “in need of some improvement”

  14. About slide two. The primary definition of factoid is “an invented fact believed to be true because of its appearance in print”. Norman Mailer coined the word in 1973. Some (or, many) now use it to mean a small or trivial fact. But the -oid suffix is used to mean something that is similar to or like but not real. A humanoid is not a small person.

  15. If I have two pages:


    somepage.html is the ‘real’ page. Should this *not* have the rel=”canonical” in it? I.e. do I have to test for the existance of random URL parameters and only add the rel=”canonical” if they’re there?

    Hope that makes sense…

  16. Matt,

    Did you mean ‘href=’ instead of ‘value=’?

  17. I think this is a great start, as a retailer we have many different pages with the same content (CMS), and making all 301s would make a terrible overhead on the server. Using this tag will simplify the whole process.
    Thanks for the news Matt.

  18. Matt,
    will the tag also remove unpreferred URLs that have previously been indexed?

  19. >Did you mean ‘href=’ instead of ‘value=’?

    I’m pretty sure he did – the “resources” links at the end of the presentation all use “href”, not “value”. Also, a “value” attribute isn’t defined for the tag in the w3c docs.

  20. Matt

    Sorry to bother you but I have no one else to really ask this question too. I have about 60 or so sites hosted on my dedicated server. Recently I have had two sites that were listed on the front page of Google (both sites are fairly new – less then a month old) in a niche that is not very popular. One niche has about 1.6 million pages indexed and the other has under 400k.

    So, like I said, both sites were on the front page and now they are both gone. I can’t find them anywhere. If I do a site check – site:domainname.com they still sow that there are indexed but there placements are gone. I have checked in webmaster tools and according to what I have seen one site should have a placement of the 7th spot and the other in number 2. That was what I read this morning. But – they are not there. One of these sites is currently in the number 2 spot in Yahoo.

    So my questions are – why would they all of a sudden be gone from Google searches and where can I go to find out why they are not showing up so I can get them back where they were.

    If you can point me in the right direction that would be great – thanks!

  21. This helps clear up so many issues for big companies that use external CMS programs and have difficulty integrating the content. It amazes me that it took this long to come up with a standard like this but it sure feels good to see Google/Yahoo/MSN working together to try and bring some order to this issue.

    Much respect!

  22. @MattCutts: Love it. As you know, the biggest way to gets crewed in SEO is by competitors pulling crap! Hopefully this will help.

  23. I saw the video a day or so ago….

    I think this is something that VBulletin (as well as many other software developers) should be taking note of as they can use this in updates of their forum software which (VBulletin specifically) creates a few copies of their forum posts with different URL’s….

    A good example of this is their “showthread” “printthread” and the forum archive all produce very similar pages with the same content and I believe a visitor would much prefer being directed to the active showthread version…

    This is probably one of the reasons for that VBseo product that had gotten it pretty popular over the years, I think it was supposed to address that… At least that was what I liked about it more than the static url portion….

    Anyway, great new developers feature which I’ll have on my mind if it can be implemented on some sites, especially if it can be done dynamically for instances like the above…..

    Google may have already spotted and preparred somethign for this on VB with all the discussion on it over the years, but cool stuff anyhows….

  24. Matt,
    If I have several versions of an url and the only difference is how table data is sorted, and there’s a preferred version of the page that also has a cleaner url specified in the htaccess file, can I just throw the tag in all versions of the page? In other words, is it ok if the preferred page points to itself or do I need to add a conditional to check which version of the page I’m displaying?

  25. Rick Regan and Jim Keller, I *did* mean href instead of value — thanks for noticing. I checked my post against my slides, but somehow my slides didn’t reflect reality. Updated them both, and thanks for mentioning it.

  26. Dave (original), this is much like a 301/permanent redirect that only flows within a site. That’s the mental model that is quite accurate for predicting how things will work. So while it should work fine, feel free to not tempt fate — no need to change things if they’re working for you with no problem.

    Harith, we wanted to constrain it to one domain to prevent possible ways that people might try to abuse this. For sharing articles, you could use 301 redirects or simply link to the original article in every syndicated or shared article.

    Ziv, the way that search engines handle the alternate link tag is not really standardized; I’m not sure that Google uses it at all, in fact. The search engines will probably be much more uniform on this new link element. But I don’t think it would hurt to use both; just make sure that they always agree, for example.

    CAP Digisoft Solutions,
    1. No, it should be treated like a 301 and won’t be indexed. Instead, it’s PageRank/anchortext flows to the canonical url.
    2. I would do it in two steps. First, create a new page with the url that you want. Maybe as a half-step, see if you can change any backlinks (especially internal links) to point to the new url. Finally, use the canonical link tag on the previous page to point to the new canonical url.

    James, this should work with any page type, because it’s handled when search engines process a page for indexing.

    Simon, I’m not positive whether this would work. You can not have the tag, or you can have the tag and set the value to the current url. Both of those should work fine. But having the tag, but with href set to “” might not work. Let me check on that.

    David Quaid, thanks! It’s nice to offer something that lots of people can use.

    Lee, wasted time on downloading pages is not the critical problem for search engines, so I don’t worry about that. Search engines already do quite well at duplicate content, but I wouldn’t claim that we handle it 100% perfectly to everyone’s satisfaction. This new option lets people give search engines additional hints to make everybody happier.

    penultimate, good point. I’ve updated the slides. I love that Google Docs lets me do that and the embedded presentation is automatically updated too. 🙂

    Geoff, you can handle it two ways:
    1. On the true canonical page, you can just leave out the canonical tag
    2. On the true canonical page, you can keep the canonical tag, but make the tag point back to the same url.
    You’re welcome to do whatever is easiest for your particular programming environment.

    Jill Culbertson, it’s treated like a 301, so the unpreferred url will disappear from our index, but the anchortext/PageRank from the unpreferred url will be transferred to the preferred url.

    Collin De Ruyck, it’s possible that your site has been hacked or that we consider them spammy, or that we weren’t able to crawl the sites. I’d check in Google’s webmaster console (sign up at google.com/webmasters ) for messages and read posts such as http://googlewebmastercentral.blogspot.com/2007/09/quick-security-checklist-for-webmasters.html or http://googlewebmastercentral.blogspot.com/2008/04/my-sites-been-hacked-now-what.html for starters.

    John Colascione, we haven’t talked to any vBulletin folks but this would be a great example of a software package that could use the canonical tag wisely to prevent duplicate content issues and help vBulletin sites.

    Dave, it’s totally fine for the preferred version of the page to point back to itself. I’d recommend using absolute urls just to prevent any potential problems from popping up, but that should be no problem at all.

  27. I modified Sandvox to use the canonical tag within an hour of reading the announcement last week. 🙂 It will be part of Sandvox 1.6, due out in a few weeks.

  28. Hey Matt. I just noticed that someone registered google.cm and is redirecting over to http://www.daytradingrobot.com (an affiliate page).

    I thought you had to have to have a physical location in the country of Cameroon to register a .cm. Guess not.

    Anyway, I thought your people would like to know so you can send cease and desist letters or take the domain…

  29. Dan Wood, that’s great news on Sandvox — thanks for mentioning it, and glad that it was pretty easy to add. 🙂

  30. Hi Matt,

    Great for this new element, really.

    You should wrap the blue line demonstrating this code within code tags as WordPress then will convert ” to normal ” instead as it should be. People could get errors how it is written now. And while you are at it you could skip the font tag and instead adjust the style of your code tag in your CSS file – color blue for example.

    Don’t want to be picky … 😉

  31. Matt – imagine you had a list of 100 products (eg digital cameras) in alphabetical order, split over 4 pages (25 per page). Then say the user could choose to order these by price, instead, or by rating/score (Eg number of stars). And for each of these they could go in either way (low price to high, high to low, A to Z, Z to A etc).

    Could/should you use this tag to point all these different pages to one URL? The pagination means that the content is different across all 4 pages. But the different sort orders mean that there are multiple versions of essentially the same data.

    Similary, as you’re a wordpress user, could/should you use this on individual posts with paginated comments? So imagine a post had 200 comments, and these are split across 4 pages of 50 comments, but each page has the full post at the top. Should you use this? The post is the same on each page, but the comments are different. So the content isn’t identical. Yet the site owner would probably want the SEO benefit of links pointing to the ‘main’ permalink, not the comment pages if these are linked to. (More here: http://www.malcolmcoles.co.uk/blog/use-rel-canonical-fix-duplicate-comment-problems-comment-pagination-in-wordpress/ )

    Any thoughts?

  32. Has https (SSL) been mentioned already?

    Http and https should probably be recognized as different domains so that rel=”canonical” will not be supported between them. Right?

  33. Matt, are you saying that there is a chance the preferred URL wont rank as well as the non-preferred one? Or, the preferred URL will simply replace the non-preferred URL and keep the same SERP position?

    BTW, you’d make a fine Politician 🙂

  34. This is a really helpful tag and very much needed… it will make a difference for many of our sites and client sites. So thank you.

    Let me shamelessly add a plug for my own efforts to explain the concept of the canonical tag to non-technical folk… this powerpoint presentation might also be useful for people:


  35. Matt, Good slides and as you said absolute urls are best to be used for avoiding side effects 🙂

  36. finally this solves the issue of duplicate contents, specially with the comment pagination plugin 😀

  37. I have tried this PHP Code in my blog . Will this work

    <link rel=”canonical” href=”” />

  38. Jim Westergren, good point. Added the code wrapper.

    Oliver Bockelmann, I mentioned it in the slides, but this solution does work to canonicalize between HTTPS and HTTP.

    Dave (original), there’s always a chance that something could happen. If you have the rankings you want, I would move very cautiously while rejiggering your url structure. That’s always true though.

  39. Sorry. I have read Q&A again and found the answer on page 9:
    https should be supported? That`s pretty cool!

    But one problem left: Different Shops with different http or top level domains sharing only one secure domain (or sub domain) for SSL purposes like this:

    http://…xyz.de, http://xyz…com, …
    all use https://sec.xyz.com/sub1,2,3…/
    for cart options – “buy more and checkout”.

    Linking with nofollow to this https domain (“buy more and checkout here…”) seems not to be enough for being safe. Would you say “noindex” is a must for the whole https domain in this case? (Canonical support would have been wonderful. ;-))

  40. hey Matt, can canonical link help us to prevent from content duplication? I use WordPress, /category/ and /tag/ generally crawl by search engines (Google,yahoo) apart from the post pages, so by using “canonical” link can we prevent ourselves from content duplication? If so, then any WordPress plugins for that?

  41. This is a big step toward for finaly solving the issue of duplicate content.

    How much can an average wordpress blog benefit from rel=”canonical” ?

  42. Hi Matt – I have one absolutely burning question about this tag:

    If I include it on a page which has a meta robots tag of “noindex”, and point it to a canonical variant of this page (which can be indexed), does this cause any problems?

    Essentially, we use meta robots “noindex, follow” for things like pagination, different sorting order of products, etc etc – this handles the duplicate content issue (and much better than robots.txt, from a site-owner’s perspective).

    What I want to make sure is that, if I include this new rel=canonical tag, that search engines that don’t handle this new tag can handle the “noindex” tag to eliminate duplicate content that way and search engines which do use the canonical tag are correctly supported.

    This is the single most important thing I need to know about this new tag.

    The second most important thing is – is the behaviour of the above standardised with the other search engines which are using it too?

  43. Matt
    That’s a good step to solve canonical issue for duplicate page content, can we use for solve domain canonical issue – www and without www


  44. Here is a new question ;

    Can I point ;

    “…com/439-page-title.html” to



  45. What about http vs https and www. vs without www. ?

  46. Hi Matt

    Can I apply canonical tag to co-branded versions of the site. I.e to
    which have identical underlying content as http://www.example.com but have different header and footer. Good example of a co-brand would be

  47. Hi Matt,
    If we are already doing 301 redirect, will you suggest us to add the canonical element just to be on the safe side?

  48. Hi Matt,

    Accepted that I am a noob, I have a question.

    I get a feeling that to use this system, I first need to identify the link that needs to be redirected. Like I need to first know that http://www.example.com/page.html?sid=asdf314159265 needs to be redirected to http://example.com/page.html. Now, what if I have thosands of pages in my website with such crappy urls? like asdf314159266, asdf314159267,asdf314159268 etc in the end of abobe url? How does this new system handle this situation?

    Here is how I’ve understood 301 redirect.
    urls without www in it will be redirected to url with www no matter what the rest is. Thats pretty simple.

  49. Thanks, Matt. While some of my pages in the SERPs are not the preferred URLs, I wont temp fate as they actually rank quite well.

  50. Hi,

    I have a query.

    Suppose previously I had a page called http://www.abc.com/xyz wyz.html

    Now I have changed the url http://www.abc.com/xyz_wyz.html

    Now I am unable to remove the older page from server and am also unable to use 301 redirect on it.

    So, If I use this code, will work out here too to help Google understand they are the same page?

  51. Hi Matt – finally had time to look through your slides. There are two mistakes in them:

    Firstly, http://www.example.com and http://www.example.com/ are actually the same URL – this example is valid for any subdirectory (e.g. http://www.example.com/path and http://www.example.com/path/) but not for when there is no path. The first / character is not actually part of the path of a URL, it’s a separator between the hostname (or port etc) and the URL path. It’s a very common mistake to make (I had to correct Msn when they made the same mistake) – if you want to find out more see the RFC. Please could you update the slides to correct this?

    Secondly, you write “Don’t forget the final / at the end of the link tag.” – this is only true if you’re writing XHTML – it’s actually invalid if you’re using HTML 4 (although IIRC HTML 5 allows it).

  52. Thanks for the slide. It is good to see that arch rivals are coming together for good cause. Lets hope that this move will eliminate duplicate content from internet.

  53. Love the new standard and the fact that the big SEs all worked together on it. Honest collaboration across all parts of our industry would be a huge boon for everyone involved, including the SEs, the site owners and all the various vendors.

    We mostly build (i.e. design, write and create) optimized b2b websites for small manufacturers who don’t sell online, so this isn’t anything I’d use real soon.

    But … as more companies request CMS, I can see this being a wonderful feature to implement.

    Thanks to Google (OK, to Yahoo and MSN, too) for setting an example of how our industry should work.

  54. Which page would the canonical link tag go on if I wanted to redirect from http://domain.com to http://www.domain.com?


  55. What would be the recommended method: mod rewriting a url and using the canonical tag or creating a page with a clean url and 301 redirecting the old page to the new one?

  56. Hi Matt,

    thanks for the explanation. But I got one big question coming to marketing, where I think, this tag could be very useful. Offen when a cooperation with other partner were agreed, the formulars, magazins oder the order track is implemented into the look and feel of a partner homepage. Offen this order track will be on a subdomain. For example: my shop is: http://www.shirtshop.com and my partner is AOL and I implement my order track and some content in the look and feel and with the framework of AOL under aol.shirtshop.com. This will be absolutely be DC, or? And will the tag work here? Because the content is similar, but there is this framework of AOL (Logo, Navigation etc.).
    Thanks for your answer,

  57. Matt, This is a great solution. But does this open up a hole for spammers to exploit?

  58. No it wont as 99% of Webmaster will never know about this new element.

  59. I agree with Dave, that 99% of webmaster do not know about this new element SEO in this 2009. Matt explanation is helpful, I think I have some homework for this.

  60. Matt – any chance of getting this into the HTML 5 standard? rel=nofollow has made it. It’s not like HTML 5 is going to be finished for years anyway 🙂

  61. Matt – I would also really like answers to the pagination question asked by malcolm coles and the co-branded pages question asked by David G.

  62. Alice – you wrote “If we are already doing 301 redirect, will you suggest us to add the canonical element just to be on the safe side?”

    You can’t do a 301 and include this – with a 301, the search engines are only going to look at the HTTP header. If you’re doing a 301, leave it as it is (it’s more reliable).

  63. Chris – http/https and non-www/www works ok with this tag.

  64. We are starting to include the tag in our pages at Wahanda. To make it easier for us we have created a firefox extension that allows us to see the tag value without having to do a view source.

    It can be downloaded from http://www.wahanda.com/inspire/canonical-uri-extension-for-firefox if anybody thinks it will be useful for them too

  65. This is really a big help for those are non-techy persons that wanted to redirect their website into search engine friendly approach.. Thanks Matt 🙂

  66. Hi,
    if a website/CMS already has “search engine friendly” URLs without any (crappy) dynamic parameters (like session-IDs etc…) then this new element has no advantage, right? Or do I have missed something?

  67. Glad to see that the canonical tag was finally implemented. I’m really glad to see that it takes care of the http / https issue. Honestly, I think this is going to really help a lot of ecommerce sites out there, especially those retailers who sell products with multiple colors, sizes, etc.

    Andreas if the site is already search engine friendly and you don’t see any reason for it to be implemented, then like Matt said in one of his videos…you need to exhaust every other option first and then use the canonical tag if necessary.

  68. Because of the way my CMS works, I have to break certain things into multiple lines in the source code of my pages. Will the following work acceptably?

  69. Rats, my code snippet got filtered out. Here’s what I was wondering about, with HTML brackets replaced with square ones:

    [link rel=”canonical”

    Will Google recognize the tag – and the full URL – even with the tag wrapped onto multiple lines?

  70. The canonical tag is a great supplementary tool to use with duplicate content issues. At was talk of town at SES London.

    I think it will take some time before I truly understand how to balance the use of robots.txt, 301 and the canonical tag.

    Are there any guidelines on this … what is preferred by the search engines, some speak about negative attitudes towards the very heavy use of redirects.

    Steen Öhman

  71. Hello!

    http://example.com/page.html instead of http://www.example.com/page.html?sid=asdf314159265 .
    Where do the contents of the downloading page come from?

  72. Hi Matt,

    Your blog is very informative but I cannot seem to find anything on dropped rankings and why they suddenly happen. For nearly 3 weeks now our above website has disappeared off Google. We had a forum which someone hacked and posted links to adult and gambling sites which was totally unknown to us and no fault of ours.
    On discovery of these links we removed the forum immediately and put a 301 redirect to our homepage. We have had issues with other websites copying our content and have taken immediate legal action to have these sites remove the duplicated content. We have now gone down every avenue and submitted three reconsideration requests but to no avail. I’d be hugely grateful if you could give us advice on why we are still not displaying anywhere on Google for our search terms as it is now having serious effects on the business. We were on page 1 for a great deal of search terms for our website and not knowing what we’ve done wrong or what is going wrong is killing us.
    I’d be most grateful for your advice.
    Yours sincerely,
    Rowan Evans

  73. Matt

    Can the canonical link element be placed on the orignal page and link back to itself? My site’s duplicated pages use the same HTTP headers as the original page, so I would need to set the element on the original page in order for the duplicated to use it.

    Would this be ok?

  74. Will the canonical link element work for www3.yourdomain.com to http://www.yourdomain.com?


  75. I would love to have this for PDF files, too. Lots of PDFs are mirrored to other web sites, it would be nice to have a canonical tag included.

  76. Hi Matt,

    Because this tag only works internally i.e. not with external domains, I guess it does not help with the proxy URL hijacking problem? I think you guys have found other ways to nullify this somewhat anyway. But, for people who still have this issue, if the spoofed URL starts with ‘www.someproxy.com/blahblah…’, but the end result is that the proxy has just duplicated the original page (with the canonical tag too I guess) this will not fix this duplicate content issue here becuase the URL will suggest that this is an external domain and therefore the canonical tag won’t work?



  77. Matt,

    “Secondly, you write “Don’t forget the final / at the end of the link tag.” – this is only true if you’re writing XHTML – it’s actually invalid if you’re using HTML 4 (although IIRC HTML 5 allows it).”

    Well, I’m using cave man HTML, so do I need to take the “/” off for Google to understand it, or does he just mean that it wouldn’t validate properly if I was carzy enough to check?


  78. Interesting! Let me see if I have this right, as I think I see a way this might be used to supply potential affiliates with their own web page that is duplicate content using this Canonical Tag in conjunction with adding an email “subject” to track referrals rather than using cookies.

    Here is an example (apologies for blatant plug of things – please feel free to edit to something less commercially orientated if you so desire Matt).

    OK let’s say I offer an affiliate program from http://www.hire-seo.com and I offer potential affiliates their own web page with a 10% commission. Would it (for example) be possible to use the canonical tag on those pages and they still get listed in Googles index?

    Here is an example of what I have in mind.

    Let’s say some guy called Matt Cutts (Never heard of him – Have you? – Yes my idea of a joke) signed up to promote the SEO service on hire-seo.com, if I gave Matt Cutts the url hire-seo.com/matt-cutts and then changed the email settings on the original page for Matt Cutts personal (DUPLICATE) affiliate page and then added matt-cutts to the email “subject =” and then added the canonical element to Matt Cutts (Duplicate) affiliate page would this work as an alternative to Cookies between two trusting parties?

    (PS If that is the case – Does any one know of a way to use the same email subject = matter to trigger an email to said affiliate, by any chance, so that an affiliate would not just have to rely on trust, but would be assured they are informed of an enquiry, and perhaps even further still on the result of that enquiry, so that no doubts are apparent and no skimming or deceiving of affiliate would be possible by original merchant?)

  79. Does this have any kind of effect on older domains?

    I have a client who’s webmaster is hesitant to to canonicalize the non www site to the www site because it’s an older domain, early 2000 and said that adding a 301 redirect will do more harm than good. Would this be a better thing for them to execute?


  80. Hi Matt,

    Can the canonical link element be combined with meta refresh (set to 0s) if server-side 301 can’t be done? Would this be 301 or 302 if the pages don’t have similar content?

    Or is the canonical link element only used for duplicate content?

  81. Matt

    Thank you for answering my question in your Canonical Link Element video about leaving the href empty.

    The question is at: [http://www.mattcutts.com/blog/canonical-link-tag/#comment-247360]

    and your answer is at: [http://www.youtube.com/watch?v=Cm9onOGTgeM#t=17m31s]

    It’s most helpful to know that this will parse as an error, pointing to itself, therefore not causing any issues to be concerned with.

    With kind regards

    Simon Cullum

  82. Cyril Grisvard From Paris


    What’s the difference between canonical link element and a conditional 301 redirect ?

    In each case we have to use a regexp to automatise multiple treatments.

    Today I use 301 redirects, I must change it ?

    Matt, Thx for all.

  83. You wrote: “specify in the HEAD part of the document”. If I can’t edit the HEAD area, can I add it in the beginning of the BODY ?

  84. Forgive me if this is a dumb question, or even off topic, but what I am curious about is the case of Dynamic content. Say in a blog or Shopping cart where one page URL can host different content depending on the conditions of variables in a query string.

    For example url :
    http://www.mydynamicsite.com/dynamicpage.asp?category=01&testosterone=true which delivers widgets for guys and
    http://www.mydynamicsite.com/dynamicpage.asp?category=02&testosterone=false which delivers widgets for girls.

    Would the “canonical link” include the querystring or not, would the page have a canonical link at all ?
    Does the “Canonical link” only pertain to duplicate content ?

    What do you do when the querystring cannot be ignored with reference to the content delivered ?

  85. Matt, in desperate need of canonical link element clarification, and appropriate usage.

    A lot of online shopping carts have category pages that contains so many products that pagination settings are set to limit the display of 100 products per page, thus creating multiple category pages (with the same title tag, meta description and meta keywords for said category) with different product listing, would the use of canonical link elements be applicable in these instances?

    Example of pages for the same category:

    Category Page – Mens Shirts (Page 1):
    Product 1
    Product 2, …100

    Category Page – Mens Shirts (Page 2):
    Products 101 –

    The problem is that because subsequent pages are continuation of the previous ones, they may be erroneously perceived to be duplicate content because they have the same tags despite the fact they have additional (“different”) product listing.

    Example of pages link format for the same category:

    Shopping cart category “Mens Shirts” first page:

    Shopping cart category “Mens Shirts” second and subsequent pages:
    http://www.Domain.com/Mens-Shirts.html?Screen=CTGY&amp; Offset=30&Category_Code=Mens-Shirts&DSP=30&Page=2

    Some online shopping carts second and subsequent page address remains the same when using the Next and Previous page link versus numbered page link (ie: http://www.Domain.com/merchant.mvc?).


    Result Page:

    Finally, would you recommend placing a nofollow link element on subsequent category page numbers and/or Previous/Next links to avoid duplicate content issues?

    By the way, our sitemap only list the first category page for each category and subcategories, in addition to all products pages.

    Thanks, JC

  86. The 301 redirections in sitemap will be help us!!

    Our servers can’t make all redirects

  87. All links have “?cat=X” (X is a number) in my site. For example mysite.com/article.html?cat=2

    catid shows current category’s id. There is no “article.html” link (without catid) in any page on my site but i want to be indexed it as “article.html”. Must i use canonical link element?

    I’m waiting a reply about this quickly Matt. It’s very important for me. Thanks. 🙂

  88. Hey there Matt, great article helped clarify a lot of questions I had however before I implement the canonical tag I have a question.

    Our company has various landing pages, in case they google a common term in collections it allows us to redirect them to our site. I believe this is actually hurting us in S.E.O. rankings, so if we use the canonical tags on our landing pages that link customers to our direct site, it turns our landing pages from hurting our main site to helping it in S.E.O.?

  89. Thanks Matt , you cleared things up for me.

  90. Hey Matt (or any other experts!),

    I was wondering if there are any issues with encoded spaces etc?

    For example, if this page:

    http://www.www.com/hello world.html

    is in the canonical tag, but google says this is what is indexed:


    are they treated as the same thing?



  91. Matt,
    Can I use Canonical tag to redirect one of my blog in typepad to another blog in typepad itself.
    For example I want to redirect traffic from http://blogs.example.com/examplecom/
    to http://blogs.example.com/examplecom-2/ both are blogs supported by typepad.
    No redirects are supported in typepad. Please suggest me if you have any alternative solutions.


  92. Matt, the link at the bottom of Helen M Overland’s comment does not go where originally intended. Looks like cli.gs links were hacked. I think the intended destination is at http://www.slideshare.net/helenmoverland/canonicalizahow-to-use-the-canonical-url-tag-to-avoid-duplicate-contenttion (sic)

  93. confused, i am. I am trying to use a permenant 301 redirect to move from one site to a completely different site and having NO luck

  94. This is great especially if the webmaster isn’t allowed get at the .htaccess file (which is most cased with shared hosts) or even working without a server-side programming language 🙂 Excellent!!

  95. Matt, I have been trying to work around the issue of “/” and “index.php” being read as duplicate content as Google Analytics and Webmasters suggests. It doesn’t appear to be affecting the rankings all that much – would the canonical tag be suitable to put on “index.php” in this case?

  96. As I understand it’s use, the tag is intended mostly to avoid pages like /, /index.php, /index.php?code=5, /index.php?ad=gaw. /index.php?session=4ab6d6q0f1d2, and so on from seeming like they are all different pages. With this tag you can specify if it should be /, /index.php, or something else.

    Rather than have link credit go to all, it is collected and assigned to the one “real” page.

    I don’t think you can use it as a re-direct and it is not intended as that. Use a 301.

    And .htaccess is available in most sharted hosting accounts unless you are on Windows. 🙂

  97. I didn’t have time to read all the comments, but if I have the canonical tag on a category page of my site, but the tag is for the homepage domain name, would that hurt the category page?

    Are we supposed to have canonical tags on every page of our site? Is it safe to put the canonical tag and a 301 redirect in place or just one or the other? Thanks to anyone who can help!

  98. Google tells us to use a certain code, they even provide us with that code syntax.
    You specifically say “use this and you’ll be alright”

    Well I did “do that”, just as Google described, I tried it on Google’s own blog platform: Blogger.com

    umm, one Google hand apparently doesn’t know what the other Google hand is doing?


    Some bloggers are not aware that we have to add a space and a forward slash immeadiatly after the closing tag or it wont work!
    I’ll bet there are hundreds of frustrated bloggers out there muttering curses to the Google engineer who assumed we can code in PHP or XML
    Bloggers claim to fame (and I love it, I have 60 of em) is that you don’t NEED to know how to code

  99. Good article but you use wrong URL for you examples, means you used this canonical URL
    http://www.example.com/page.html?sid=asdf314159265 .

    But simple HTML page cannot have variable in URL. it should be .php or .aspx extension. I hope you understand my point of view

  100. Why google doesnot understand this all urls are one page address?

  101. If I do a permanent Redirect will search engines be able to tell that my site is indeed just one site. For example, I have mydomain.com and http://www.mydomain.com, search engines might think those are two different sites. Is this true? or should I not worry about it? Thx!

  102. harmonsmith: You can tell the webserver to treat html files as php – it’s just a setting. And on top of this you can use for example Apache’s mod_rewrite to point something.html to something.php internally. His example is perfectly valid.

  103. Canonical link element will make ulrs more representable.

  104. Great read here! I normally use a wordpress blog and use the all in one seo pack plugin. It has a tick box for use canonical link there… Thanks for this informative post.

  105. Margarita Grisales

    I recently discovered a cute little C on my Firefox browser bar next to the RSS icon. I love it because if you’re on a page that has the canonical link element, the little C tells you whether or not that page is the canonical version. If it is the C is gray and if it is not the C is blue.
    My problem is that I have no clue how I got that to show up in my browser, and I would like for my co-workers to also have it, so if anyone know how to get it please let me know!


  106. This may be a naive question, but here goes. I have installed a couple of Google Custom Search Engines on sites in which the search results are written to an iframe on a page called, “search.html.” In Google Analytics I see these page addresses, with long strings of stuff on the tail of a ?, likely because I have ga.js tracking code on the “search.html” page.

    This is not creating duplicate content, is it? I don’t need to put rel=”canonical” in the of “search.html” pointing right back at “search.html,” as: , right?

    Thank you for sharing!

  107. I think this might be a rather amateurish question. I got to your comments on canonical links because I was searching “web links”. What I want to know is – for a naive author of a simple blog – can I provide the reader with “paths” through my blog? What I want to do is to suggest to the reader, quite visibly, that if he/she has just read blog x, then bloq q might be a sensible one to read next, rather than going serially on to blog y. In fact, what I would like to be able to do is to say to the reader: “If you are interested in topic A, then I suggest you read in the sequence x, q, r, s, f ….; but if you are interested in topic B, then I suggest you read in the sequence x, y, j, k, l” Can I do that in the popualr blog software, Currently I am using the Blog software provided on One.com, the Danisk company founded by Jacob Jensen.

  108. Question: Are canonical links or 301 redirects more appropriate in this case?

    You have ppl entering a page with this link: http://www.domain.com/page.html

    but you’d prefer them to enter here: http://www.domain.com/page.html#total

  109. Man, I’m I glad I took all that time to name my links over the last 5 years! I guess I got lucky because I used software that recommended you take the time to name links and by the time I got into blogging, it was standard on the system I use.

  110. Hi Matt
    Thought I understood canonical url’s i.e. non www versus www site, and for static html sites I think it is fairly straightforward. I just verified the site with Google and using Webmaster tools, told Googlebot, which one I preferred.
    But now that I’ve got into WordPress… it’s like starting all over again.
    Need to read this post again, watch the video, read a few other posts! looks like I’ll get back to you in about a months time when I may understand more on canonical url’s, duplicate content and WordPress.

  111. Does the canonical-tag requires an absolute URL (‘http://www.domain.com/real-article/’) or could it also be relative (‘/real-article/’)?

  112. Gotta say, I’m a big fan of this. Gotta love clean URL’s

    Especially love the Drupal plug in! ;o)

  113. What should one do for old content vs new content. where chance is that something will be same on both the page.
    but I do not want to use 301 for historical reason,
    I am not sure of 301 redirect is good in this case or not?

  114. This is really good news from Google as content duplication has always been a gray area for SEOs and developers. At least now we have some control or at least we can express our preferences. We’ve started using that in our Brighton seo and web design website at so have a look at the source code to see how it works.

  115. Hello Matt, I have a question, perhaps you can help me..
    I am responsible for marketing at an online gaming website in Brazil, our website has the largest gaming community in South America, I have done some SEO on it and we have no penalties on google, yet, for our main keywords “jogos online” we appear on the 9th page of results in google, our pagerank is 4 and I’m working in tweeter, facebook and Orkut for now, and will start a blog soon, in the attempt of making that number grow. Also, our website is on UOL, which is the largest web portal in Brazil (Pagerank 7) and our site has its own URL there megajogos.uol.com.br and also its own pagerank of 5.
    At first I thought, hey, put the rel=canonical in the UOL site pointing to ours, but its not in the same domain, a 301 I can’t use cause the site, although it is ours, runs through a script and shows up as part of their website (our site + a navigation bar at the very top with the UOL brandname) when you type in that address or click on our logo in their “online games” section. So now we have 2 identical websites and the perfect situation to use the canonical link element, but as far as I can tell, I can’t use it. 🙁
    I have been trying my best to do everything the whitehat way, and as far as I know, there is nothing wrong with our site or our content. Megajogos is a site focused on Brazilian people and culture, and we have almost 500k pageviews a day, people play on our site from over 170 countries, and around 10k people are playing at any given time simultaneously (sometimes that number gets up to 15k) but we don’t show up in google for that keyword (we do show in the first and second page for many other keywords, and in some cases even at the very top of results).
    Any suggestions?

  116. I used canonical urls for my site. but in webmaster tools every post of my site shows 3 duplicate title tags like..


    how can i remove these duplicate title tags..

  117. Hi Matt,

    How do the three search engines handle the instance where there are multiple canonical tags on a page?

    Our company has manually placed canonical tags on a handful of our pages. We are moving towards generating these automatically. We’re wondering how Google will handle a page should we miss the manual removal of some of the first tags that we placed.

    Linda Caplinger

  118. @Linda Caplinger
    Good question. I would think that the the conanical url that is mentioned lastly in the source code will override any previous ones.

  119. Hi Matt,

    I understand totally this is an old post, and you might not even see this. But I’m having a serious issue due to the rel canonical and really hope you can look into this.

    In my Buddypress site, I installed All in One SEO plugin, which has done wonders in my other wordpress site. Unknowingly, the plugin has created havoc to the site, by creating rel canonical links to unrelated page. I have removed the AIO SEO plugin, but the damage is done.

    I can see you are emphasizing that rel canonical should be treated as 301, or a permanent redirect. Does it mean there is no chance to fix this problem, to undo the damage? Are the redirected pages forever gone?

    It does not seem like a popular discussion at this moment, but I have feeling this problem is more widespread than realized.

    Here are some related discussion about this problem:

    And this http://i.imgur.com/pkQvb.png is probably the result from a bad implementation of rel canonical.

    Waiting for your reply.

    Kind regards,

  120. Thanks for this article, I had hard time understanding how and why to put canonical link tag… your post is simple 🙂

  121. I like the way russian search engine Yandex implemented that!

    In fact, it is used only to show that some paramaters can be ignored by search engine:
    you add in your robots.txt file a string like

    Clean-param: color /forum

    and in all pages containing ‘/forum’ in their path parametr ‘color’ will be perceived as meaningless.
    So pages

    will be considered as a single one!
    Notice: in this case you shouldnt edit your code – only robots.txt and thats great!
    I wish google did the same thing!

  122. I inherited a website with an index.htm and an index.html (both have lots of inbound links)

    Is it better to use the Canonical Link Element or a 301 redirect to move the “.htm” traffic to index.html and eventually remove the .htm file?

    Thanks for the continuous excellent info!

  123. What can i do with Hebrew wordpress Websites ?

    Since the URL in hebrew is converted to a long string i dont
    know if its right to do a <link rel="canonical" href="”/>

    The actual URL is: http://www.sagive.co.il/company-services/קידום-אתרים

    But what i get in the canonical is:

    do you think that would affect the quality of the adress which
    in hebrew includes 3 keywords which is a popular search string ??

    would apreaciate your help since this hebrew thing makes like harder 🙂

  124. Hi Matt,

    I’ve been implementing canonical to prevent duplicate content issues, however, I’m not sure how to deal with the following case:

    I’m working on a site dealing with apartment rental listings. They have pages that list properties within a city, for example http://mydomain.com/CITYNAME canonical with http://mydomain.com/cities?cityid=1234.. Simple solution would be to put the rel=canonical to point to the CITYNAME version. No question here.

    However, we have things like http://mydomain.com/CITYNAME?page=2 (canonical with cities?cityid=1234&page=2). Do I make the rel=canonical point to CITYNAME?page=2, or to just CITYNAME? It is worth noting that the actual properties listing is randomized (to prevent giving preference to any individual property), so the content on page=2 for one user would be different than for another; however, the general template for all pages would be the same with exception of a few featured properties being listed on the first page.

    Maybe I should have all pages giving a canonical link back to the main CITYNAME page?

    Matt, can you recommend to me what the best way to use canonical would be in this situation; or if there is another solution to this issue?

  125. Sorry for the additional post.. this is unrelated to the previous..

    If the appears in the body of a page, rather than in the head, will google still make use of the information in the same way, even though it’s not according to spec?

    I have come across a particular case where a site is using global headers, with the exception of the title tag, it is a nuisance to try and modify it to allow canonical.

  126. @s boggs

    Hello, I’m not Matt, those would be pretty big shoes to fill 🙂 But from my experience and what I’ve read, using the canonical on the older page you wish to remove and putting it to the new one should help Google figure out which page you want listed, and hopefully transfer the “link juice” to that page. I’d suggest doing that for starters, then watching results to see if anything indicates the change was picked up.

    From there, you should able to do the 301 redirect which will help keep all your backlinks from breaking. Wether that will transfer the “link juice” from the pages linking in to the indext.html page or not is something I can not really answer. One would think it would if Google paid attention to this such possibility, but as I am not Matt nor a google employee, I have no concrete answer for you. Good luck with the process.

  127. Looking back two years latter, it’s hard to imagine going back to fixing pagination and duplicate content issues old way before the Canonical Link tag.

  128. Thanks for sharing this. But is there any negative ranking for not using canonical tags?

  129. Hi Matt,

    I have a blogger.com blog and I have purchased a custom domain for it. The home page displays a single post. Depending on which link I click, I see three different “canonical” links added automatically by blogger.com for the same content: –

    i) If I type the home page URL, here is what the canonical link looks like: –
    http : / / www . example . com

    ii) If I click on the title of the one and only post on the home page, here is what the canonical link looks like: –
    http : / / www . example . com / 2011 / 01 / example . html

    iii) If I click on the post’s “label”, here is what the canonical link looks like: –
    http : / / www . example . com / search / label / Example

    I have not changed anything in the code. The above canonical links are added automatically by blogger.com. My question is, since all the three links point to the same content shouldn’t the canonical link always read as follows: –

    I would greatly appreciate a reply.

    Thank you.

    Kind regards,

    P.S. Sorry once again, the “canonical” links disappeared in my previous post, so I am posting this again. I give up if they disappear again.

  130. I’ve read about this canonical from SEOmoz.org since I’m a newbie in blogging. Then the guide in SEOmoz.org recommends me to read your blog; that’s how I came here Matt.

    I wanted to implement the canonical, but when I veiwed the page source of my blog, I saw the canonical code already in it. Do wordpress blogs today have default canonical?

    Thanks for this wonderful post.:-)

  131. Canonical tags are quite useful to overcome the duplicacy issue within the website. But i wants to clarify one thing here.

    As you have mentioned in your slide that :
    (Don’t forget the final / at the end of the link tag.)

    My question is that: Is the trailing slash (/) is associated with document type of the webpage/website?

    Because while validating any webpage which is using the below mentioned document type through http://validator.w3.org :

    Gives warning like :

    The sequence can be interpreted in at least two different ways, depending on the DOCTYPE of the document. For HTML 4.01 Strict, the ‘/’ terminates the tag ‘). However, since many browsers don’t interpret it this way, even in the presence of an HTML 4.01 Strict DOCTYPE, it is best to avoid it completely in pure HTML documents and reserve its use solely for those written in XHTML.

    So if i have declared the document type of my website as HTML 4.01 Transitional, then

    1) May i remove the self closing trailing slash (/) from
    2) Does all search engines will honor this or i might have to move forward to use XHTML document type to get validated through W3.org

    Replies are most welcomed.

  132. This was a lifesaver for one of our dynamically driven sites where we had about three different versions of every page. Admittedly, I didn’t implement it right the first time but after I got the hang of it our site’s indexing went MUCH more smoothly.

  133. Wordpress User


    I run a wordpress blog and when I checked my blog statistics using Google Webmaster Tools, I found that each and evry article of my blog has “Duplicate title tag” problem in “HTML Suggestions” section of GWT.

    The duplicate title tags are detected for each article in following format:


    As you can see, the problem is occurring because of the extra comments=true and postcomment=true parameters in URL.

    Does it happen for all wordpress blogs or I have some settings enabled for my blog which should be disabled?

    Any kind of help would be highly appreciated.

  134. I learned the canonical tag the hard way. Some of our former tech nerd contractor played a wrong canonical tag on our website/ Manufactures. So the result was no listing on search engines for the brands! We changed that asap we found that problem. We will see how long it will take till we get listed?!

  135. Hi Matt, I’ve tried to put the rel=’canonical’ tag to my blog but it doesn’t work. So could you give some me advise with this ? My fiends tell me that blogger.com does not support the rel=’canonical’ tag in their template, does it true ? I really apreciate if you send an email to me.

  136. Do search engines find any value in a canonical tag pointing to the page it’s placed on?

    Putting in the head section of http://www.example.com/product.php?item=swedish-fish

  137. How about multi-country sites such as shopfactory.com and shopfactory.com.au ?
    Based on this info above we should put lots of canonical links in for same content – but at the same time we are being told that websites which target a specific market should have an IP number range from that country.
    I am scratching my head on this one. How can we rank in Australia and the US when we serve both markets with our product but are given different priorities in one market based on the IP number or URL compared to “local” companies?

  138. Dear Matt,
    thank you for the info on canonical tags across domains. Within our family business my hubby writes the html and I do the SEO (I am not an html guru!) hence I was struggling with the whole “verify the www and non www” sentiment. I then used a tool called Woorank which I found extremely useful (hope its OK to say that on here!) and it pointed me to the canonical tag issue as one of the “problems” with a clients site. That led me to re-read and find out you have allowed the canonical across domains. The whole “www and non www” thing fell into place and – perhaps it is coincidence – my client has regained his page one Google position after falling to the top of page 2 ( HAVE also added some fresh content and had a tidy-up!). The canonical is now something I will always ask hubbie to do with a clients site – as best practice – and I am SO grateful that all this advice is freely available to fairly new (but quite succesful!) SEO people like me! Thank You Again.
    Kay (in the UK – for me, you should be “Sir Matt”!).

  139. Can I use the “Canonical” link element for my two similar domain names one having .co.uk and the other .com? Both have similar content and pointing to similar ISP company domain? Thanks

  140. Hi Matt,

    I’ve watched your videos and the topic about Canonical Link here.
    Your explaination about its theory is clear enough.
    My questions
    1. How to solve the repeated links in a real case? Do you have such a demo?
    If I add a Canonical Link JUST in my preferred page (ignore other referred pages
    as some of the pages are out of my control), will Search Engines like Google know
    what I’m prefer and solve the issue?

    2. How to track the result (see really problem solved)?



  141. Hi Matt, thanks for the explanation. But I got one big question coming for my blog.
    How to avoid duplicate content from tag in wordpress?

  142. Hi, i am new to web design and SEO, when i use SEO software to audit my site, i get duplicate title errors for index.html and /, without sounding dumm would this be a time to use the rel cononical tag on the index.html page?

  143. What if you have 1 page with a single tier url http://www.mysite.com/product-a but this page is in several categories. Many sites now have a single tier url structure so the only difference is that when the page is in Category A & Category B the breadcrumb is different.

    You can’t use canonical tag as you have a page in 3 different locations but with the same url and page content – only the breadcrumb is different.

    Anyone any thoughts on how / what to do in this situation?