Glossary
Canonical URLs: telling search engines which duplicate is the real one
A canonical URL is the version of a page a search engine treats as the original when the same content lives at several addresses. What it is, the ways to declare one, the mistakes that quietly cost pages, and how to see which version Google picked.
Want to know where your own site stands? Run a free Growth Scan
What a canonical URL is
A canonical URL is the address a search engine treats as the representative version of a page when the same, or nearly the same, content can be reached at more than one address. The search engine indexes and shows that one, and folds the signals from the duplicates into it.
Duplicates are rarely deliberate. The same page is reachable with and without "www", over http and https, with and without a trailing slash, with tracking parameters on the end, with sort and filter options in the address, and as a printer version. To a person these are one page. To a crawler each is a separate URL until something says otherwise.
The canonical tag, written as a link element with rel="canonical" in the head of the page, is how you state which version you prefer. It is a preference, and search engines treat it as one.
The ways to signal a canonical, and how much each counts
Google documents several methods. They work best together, and they cause trouble when they contradict each other.
| Dimension | What it is | Weight | Use it when |
|---|---|---|---|
| 301 redirect | The old address sends visitors and crawlers permanently to the new one. | Strong | Nobody needs to reach the duplicate any more, as with http to https or an old URL after a migration. |
| rel="canonical" in the HTML | A link element in the page head naming the preferred URL. | Strong | Both versions must stay reachable, such as a product page with sort or tracking parameters. |
| rel="canonical" HTTP header | The same statement sent in the response header instead of the HTML. | Strong | The file is not HTML, such as a PDF that duplicates a web page. |
| Sitemap inclusion | Listing only the preferred URLs in your XML sitemap. | Weak | Always, as a supporting signal. On its own it rarely settles anything. |
| Internal links | Linking consistently to one version across the site. | Supporting | Always. A site that links to one version and canonicalises to another is arguing with itself. |
Canonical mistakes that quietly cost pages
Most canonical problems are not dramatic. A template sets the wrong value once and it repeats on every page built from it.
- Every page canonicalises to the homepage
- Usually a template default nobody changed. It asks search engines to treat every page as a copy of the homepage, and if they believe it, the other pages stop appearing. It is one of the most expensive one-line mistakes in SEO.
- The canonical points at a URL that redirects or returns an error
- A canonical should name a live page that returns 200. Pointing it at a redirect or a 404 sends two contradictory signals, and the search engine will usually ignore the tag and choose for itself.
- Paginated pages all canonicalise to page one
- Page two of a category lists different products from page one, so it is not a duplicate. Google’s guidance is to let each page in a series canonicalise to itself; pointing them all at page one can hide the items only listed further in.
- A canonical and a noindex on the same page
- One says "index that other URL instead", the other says "do not index this". They are different requests and combining them muddles both. Use a canonical to consolidate duplicates and noindex to keep a page out of search entirely.
- The canonical only exists after JavaScript runs
- Google can read a canonical added by JavaScript, but it has to render the page first, and a canonical in the raw HTML that differs from the rendered one is a contradiction. Put it in the HTML the server sends.
How to see which version Google chose
Search Console’s URL Inspection tool shows two values for any indexed page: the user-declared canonical, which is what your tag says, and the Google-selected canonical, which is what Google decided. When they match, there is nothing to do.
When they differ, the page appears in the indexing report under "Duplicate, Google chose different canonical than user". Treat that as a question about your own signals. Check which version your internal links point at, which one your sitemap lists, whether a redirect points the other way, and whether the two pages are in fact different enough that neither is a duplicate.
BOOSTD is built to read the canonical on every page it checks, and to verify after any change it makes that the canonical is still what it should be. A wrong canonical or an accidental noindex is one of the conditions that reverses a change automatically. BOOSTD is in early access; the free scan already checks whether your pages declare a canonical at all.
Questions about canonical URLs
Is a canonical tag an instruction Google has to follow?
No. Google describes rel="canonical" as a strong signal, not a directive. It weighs the tag alongside redirects, sitemaps, internal links and whether the pages are really duplicates, and it can choose a different URL.
If you need a URL to stop being shown, a permanent redirect is the stronger tool, provided nobody needs to reach the old address.
Should every page have a canonical tag pointing at itself?
It is good practice, though not required. A self-referencing canonical removes ambiguity when the page is reached with tracking parameters or a different letter case, and it costs nothing.
What matters more is that it is correct: absolute, pointing at a URL that returns 200, and matching the version you link to internally.
Can a canonical point at a page on another domain?
Yes. Google supports cross-domain canonicals, which is how a publisher that syndicates an article can point the copy back at the original. The same caveat applies: it is a signal, and the pages need to be substantially the same.
Check whether your pages declare a canonical
The Free Growth Scan reads a sample of your public pages and reports how many declare a canonical URL, alongside the other technical checks it can run from outside your site.
References
Sources
The primary documents and published research this page relies on. Platform rules change, so check the source before acting on a detail.
Last updated · Published by Zubair Afzal (responsible editor), on owner authorisation