Canonicalization is the method that search engines like google use to find out the primary model of a web page. That’s the web page that might be listed and proven to customers. The chosen model is canonical, and rating indicators like hyperlinks will consolidate to that web page. This course of is usually known as standardization or normalization.

In response to Google Webmaster Traits Analyst Gary Illyes, ~60% of the web is duplicate content material.

Canonicalization is complicated and sometimes misunderstood. I don’t suppose many of the duplicates are nefarious. It’s principally going to be technical points that trigger them. We’ll take a look at this extra in a bit. I’m going to speak about how the canonicalization course of works as nicely as:

A variety of totally different indicators go into the canonicalization course of. These embrace:

  • Duplicates
  • Canonical hyperlink components
  • Sitemap URLs
  • Inner hyperlinks
  • Redirects

Google appears to be like in any respect the totally different indicators and weighs them to find out what the canonical model needs to be. That’s the model of the web page they’ll index and what they normally present to customers.

Weighing scale. "URL in Sitemap" and "Duplicate content" on lighter side; "Internal Links" and "Canonical URL" on heaver side

A possible situation when Google decides on the canonical primarily based on inner hyperlinks and the canonical URL.


With duplicate content material, Google will choose a canonical model to index. All of the eligible pages type a cluster of pages, and the indicators that go to the pages in that cluster will consolidate on the chosen canonical. That canonical might even change over time.

How duplicate signals consolidate

Some SEOs imagine there’s a duplicate content material penalty, however that’s not true. Typically, you’re going to have one model or one other listed. It might not be the model you need to be listed, however will probably be listed and rank simply in addition to some other model of the identical web page.

Listed below are some examples of what may cause duplicate pages and typically canonicalization points:

  • HTTP and HTTPS variants (e.g., http://www.instance.com and https://www.instance.com)
  • Non-www and www variants (e.g., http://instance.com and http://www.instance.com)
  • URLs with and with out trailing slashes (e.g., https://instance.com/web page/ and https://instance.com/web page)
  • URLs with and with out capital letters (e.g., https://instance.com/web page/ and https://instance.com/Web page/)
  • Default variations of the web page equivalent to index pages (e.g., https://www.instance.com/, https://www.instance.com/index.htm, https://www.instance.com/index.html, https://www.instance.com/index.php, https://www.instance.com/default.htm, and many others.)
  • Alternate variations of pages. This might embrace cell variations (e.g., instance.com and m.instance.com), AMP variations (e.g., instance.com/web page and amp.instance.com/web page), print variations (e.g., instance.com/web page and instance.com /web page/print), alternate variations meant for different nations however containing the identical content material (e.g., instance.com/en-us/, instance.com/en-gb/, instance.com/en-au/), or variations in a dev or staging website (e.g., dev.instance.com).
  • URL parameters (e.g., instance.com?parameter=no matter). These might exist due to monitoring codes, faceted navigation, sorting content material, session IDs, and many others. There are some situations the place parameters might change the web page’s content material in order that it’s not a reproduction.
  • Different pages exhibiting the complete content material. Google might select the unsuitable canonical when one other web page shows the content material in full. This may increasingly embrace the primary weblog web page, paginated pages, tag pages, class pages, or feed pages.
  • Scraped or syndicated content material. Content material syndication greatest practices usually suggest having a canonical tag again to the unique content material or a minimum of a hyperlink to the unique content material. That’s as a result of the canonical chosen generally is a fully totally different area. They attempt to choose the unique supply because the canonical, however in some instances, they select the unsuitable web page.

Most of those aren’t normally points. As I discussed, Google will normally select one model or one other because the canonical. There are just a few exceptions to this.

  1. Typically with content material syndication, the unique supply isn’t chosen because the canonical. It is a actual drawback. How would you’re feeling if another person began rating for an article you wrote?
  2. Hreflang doesn’t resolve duplication on worldwide websites. Google will usually attempt to swap to indicate the right model, nevertheless it’s not assured, and this setup usually breaks. When this occurs, customers see pages from the unsuitable nation. It’s greatest to keep away from having the identical content material on a number of pages for worldwide web sites.
  3. With some JavaScript websites (sometimes app shell fashions), the preliminary code for the pages can appear like different pages and even the code from different web sites. Typically these pages get canonicalized to different pages on the identical and even totally different web sites.

I imagine a part of the issue with each hreflang and the JavaScript content material is that Google could also be operating the duplicate detection through crawl algorithms that detect duplication patterns, once more after simply seeing the code, and but once more after rendering the pages.

Flowchart showing process of duplication detection

Google’s render path marked up the place I imagine duplicate detection methods are run.

Google’s render path marked up the place I imagine duplicate detection methods are run.

With the pages utilizing hreflang, in the event that they determine that the pages are duplicates with out crawling them, they might not be capable to swap them correctly.

Earlier than a web page is even rendered, it might “look” like one other web page primarily based on the HTML content material. Google might select the canonical primarily based on this preliminary model and should not prioritize it for rendering as a result of it’s already deemed a reproduction web page. This normally resolves itself after rendering, however it will probably take a while to clear up.

Google has a few guidelines they often observe in terms of canonicalization of duplicates.

1. They like HTTPS pages over HTTP pages

They’ll usually index the HTTPS model, however there are just a few points or conflicting indicators which will trigger them to decide on the HTTP model as an alternative, such as:

  • Having an invalid safety certificates
  • HTTPS web page hyperlinks to HTTP assets on the web page (excludes photographs)
  • HTTPS redirecting to HTTP
  • HTTPS web page having a rel=“canonical” hyperlink ingredient pointing to the HTTP web page

2. They like shorter URLs over longer URLs

This has been misconstrued over time by SEOs to say that every one your URLs needs to be shorter. However that’s not what was meant by the unique assertion. What Google stated was that should you had, as an example, a clear brief model of a URL and an extended model with parameters hooked up, they’d usually select the shorter model of the URL with out the parameter because the canonical model.

Canonical hyperlink ingredient

That is additionally generally known as a canonical tag. It appears to be like like this:

<hyperlink rel=”canonical” https://www.instance.com />

The canonical tag is usually known as a touch as a result of it’s only one canonicalization sign. Google ignores it if different indicators are stronger.

If the canonical tag is revered, all indicators like hyperlinks will cross. Nonetheless, if the canonical is ignored, no worth is handed. The worth isn’t misplaced; it stays with the unique web page or goes to no matter web page Google chooses because the canonical.

A canonical hyperlink ingredient may be applied in two alternative ways. It may be within the <head> part or the HTTP header.

A enjoyable anecdote. Google’s search engine marketing Starter Information was a PDF. They didn’t have a canonical tag set within the HTTP header, and folks used to “steal” the itemizing with their very own duplicate model.

Typically the <head> part of a web page will finish earlier than it ought to. That is normally attributable to a tag within the <head> not closed out correctly. When that occurs, a canonical tag could also be put into the <physique> part as an alternative. If that occurs, your canonical tag gained’t be revered.

Example of invalid canonical tag

Invalid canonical tag positioned within the <physique> part.

Sitemap URLs

The URLs you embrace in your sitemap are additionally a canonicalization sign. More often than not, you solely need to embrace URLs of pages that you simply need to be listed.

There are some exceptions to this as a result of sitemap URLs additionally assist with crawling. After a web site migration, you must create a sitemap that also lists the previous pages, though they aren’t canonical. This may assist the redirects be processed quicker. You’ll need to delete this sitemap after many of the redirects have been picked up and processed.

Inner hyperlinks

It issues the way you hyperlink to pages. Inner hyperlinks are one other canonicalization sign.

Typically, you must hyperlink to the model of a web page you need to be canonical and replace the hyperlinks to any URLs which will have modified. Nonetheless, there are exceptions to this, equivalent to with faceted navigation. In some instances like this, what’s greatest for customers might trump what’s greatest for search engine marketing.


There are a number of various kinds of redirects, and so they’re all canonicalization indicators. They cross PageRank and assist decide which URL will get proven in Google’s index.

301s and 308s ship indicators ahead to the brand new URL. 302s and a few 307s ship indicators backwards to the redirected URL. If a 302 is left in place lengthy sufficient or the URL it’s redirected to already exists, it might be handled as a 301 and ship indicators ahead as an alternative. It requires sufficient indicators to flip the dimensions we noticed earlier for canonicalization indicators. As hyperlinks construct up, inner hyperlinks are modified, sitemap URLs are up to date, and many others., extra indicators level to the brand new URL than the previous URL, and the flip happens.

Example of scale flipping for 302s

Sooner or later, the dimensions flips for 302s.

A 307 has two totally different instances. In instances the place it’s a short lived redirect, will probably be handled the identical as a 302 and try to consolidate backward. When net servers require shoppers to solely use HTTPS connections (HSTS coverage), Google gained’t see the 307 as a result of it’s cached within the browser. The preliminary hit (with out cache) may have a server response code that’s possible a 301 or a 302. However your browser will present you a 307 for subsequent requests.

There are additionally different varieties of redirects like these applied with JavaScript. These are additionally canonicalization indicators and cross the complete worth similar to different redirects so long as they are often seen and processed by Google. They’re high-quality to make use of in most instances.

How one can verify the canonical

Your principal supply of reality for what Google selected because the canonical would be the URL Inspection device in Google Search Console. Enter the URL, and it’ll present what the declared canonical is and what Google selected because the canonical.

The declared and Google-selected canonical via Google Search Console

In case you don’t have entry to Google Search Console, the really useful approach to verify the model of a web page Google has listed is to stick the URL into Google. The highest result’s normally the canonical.

Equally, should you verify the cached model of a web page in Google and a unique web page is proven, Google has chosen a unique model of the web page.

Warning: Don’t use website: searches for checking canonicals. It reveals what Google is aware of about, not essentially what’s listed or the chosen canonical.

Inside Web site Audit, we present many points associated to canonicalization. Take into account that we’re flagging greatest practices usually. As a result of the canonical is a touch, Google and different search engines like google should select which model of a web page to index.

Canonicalization issues in Ahrefs' Site Audit

Even when your web site has a number of points associated to canonicalization, search engines like google might be able to work out what model needs to be listed and the place they need to consolidate indicators. It could not create any actual issues for them.

Enjoyable truth. When operating a Web site Audit, we solely rely the canonical model of pages as crawl credit. Another instruments rely each model of a web page in the direction of the credit. On many websites, this could eat a number of credit per web page!

There’s rather a lot that may go unsuitable with canonicalization. Let’s take a look at some widespread errors.

Mistake #1: Blocking the canonicalized URL through robots.txt

Blocking a URL in robots.txt prevents Google from crawling it, that means that they can’t see any canonical tags on that web page. That, in flip, prevents them from transferring any “hyperlink fairness” from the non-canonical to the canonical.

Except you have got a crawl price range difficulty, it’s in all probability higher to let all of the indicators consolidate. Even should you’re going to dam or noindex some variations, you continue to might need to verify for variations with hyperlinks that you must canonicalize as an alternative. Nonetheless, as Google tends to crawl non-canonical pages much less over time, you could simply need to wait.

Mistake #2: Setting the canonicalized URL to ‘noindex’

By no means combine noindex and rel=canonical. They’re contradictory directions.

As John Mueller states, Google will normally prioritize the canonical tag over the ‘noindex’ tag.

Mistake #3: Setting a 4XX HTTP standing code for the canonicalized URL

Setting a 4XX HTTP standing code for a canonicalized URL has the identical impact as utilizing the ‘noindex’ tag: Google might be unable to see the canonical tag and switch “hyperlink fairness” to the canonical model.

Mistake #4: Canonicalizing all paginated pages to the foundation web page

Paginated pages shouldn’t be canonicalized to the primary paginated web page within the sequence. As an alternative, self-referencing canonicals needs to be used on all paginated pages.

Why? As Google’s John Mueller acknowledged on Reddit, that is improper use of the rel=canonical.

The primary factor to keep away from, since this put up is about canonicalization, is to make use of the rel=canonical on web page 2 pointing to web page 1. Web page 2 isn’t equal to web page 1, so the rel=canonical like that will be incorrect. 

John Mueller

We now have a information on pagination for search engine marketing and greatest practices should you’re .

Mistake #5: Don’t use the URL removing device in Google Search Console for canonicalization.

This will take away all variations of a URL, successfully deindexing your web page from search.

Mistake #6: Not retaining canonicalization indicators constant.

As we talked about earlier, there are lots of totally different canonicalization indicators.

Having totally different indicators counsel totally different canonicals signifies that you can be counting on Google to pick a canonical for you. The extra constant indicators you present them along with your most popular model, the extra possible it’s that model would be the chosen canonical.

Mistake #7: Not utilizing canonical tags with hreflang

Hreflang tags specify the language and geographical concentrating on of a webpage.

Google states that when utilizing hreflang, you must “specify a canonical web page in the identical language, or the very best substitute language if a canonical doesn’t exist for a similar language.”

Mistake #8: Having a number of rel=canonical tags

Having a number of rel=canonical tags will normally trigger Google to disregard them. In lots of instances, this occurs as a result of tags are inserted right into a system at totally different factors, equivalent to by the CMS, the theme, and plugin(s). For this reason many plugins have an overwrite choice meant to make sure they’re the one supply for canonical tags.

One other space the place this may be an issue is with canonicals added with JavaScript. If in case you have no canonical URL specified within the HTML response after which add a rel=canonical tag with JavaScript, it needs to be revered when Google renders the web page. Nonetheless, in case you have a canonical laid out in HTML and swap the popular model with JavaScript, you ship blended indicators to Google.

Mistake #9: Rel=canonical within the <physique>

Rel=canonical ought to solely seem within the <head> of a doc. A canonical tag within the <physique> part of a web page might be ignored.

The place this could turn into an issue is with the parsing of a doc. Even when the web page’s supply code has the rel=canonical tag within the right place, many alternative issues equivalent to unclosed tags, JavaScript injected, or <iframes> within the <head> part may cause the <head> to finish prematurely whereas rendering. In these instances, a canonical tag could also be by accident thrown into the <physique> of a rendered web page the place it won’t be revered.

Last ideas

Lots of the instruments SEOs had for dealing with canonicalization have been taken away, such because the URL Parameters Device and Most well-liked Area setting in Google Search Console. Nonetheless, there are nonetheless loads of different indicators to assist Google select a canonical.

If in case you have questions, message me on Twitter.


Previous articleWhat Is Private Branding & 4 Causes Why It’s Vital
Next article6 JavaScript Optimization Ideas From Google


Please enter your comment!
Please enter your name here