What is Canonical Tag?
An HTML tag declaring which URL is the authoritative version of a page when the same content is reachable at several addresses.
<link rel="canonical" href="https://example.com/page/">
A worked example
A product is reachable at the clean URL, with a colour filter appended, with a sort parameter, and with a tracking tag from a campaign. Four URLs, one product. Canonical tags on all four pointing at the clean version consolidate the signals instead of splitting them four ways.
Why it matters
Duplicate URLs are generated constantly by ecommerce platforms, filters, pagination, tracking parameters and simple inconsistency between www and non-www. Left unresolved, they split ranking signals across addresses and waste crawl budget on pages that should never have been separate.
Canonical tags resolve this by naming the authoritative version. They are a strong hint rather than a directive, so Google can override them where the evidence disagrees, but a consistent canonical strategy across templates is one of the more reliable technical wins available.
The commercial effect is concentration. Links, engagement and relevance that were spread across five near-identical URLs consolidate onto one, which is frequently enough to move a page that had stalled for no obvious reason.
The nuance most people miss
Canonical tags fail silently and in specific ways. A canonical pointing at a staging domain, at a page that redirects, at a noindexed page, or at a URL that returns 404 will be ignored, and nothing will tell you. Self-referencing canonicals on every page are the safest default, since they remove ambiguity even where no duplicate exists. Check the rendered HTML rather than trusting the plugin setting, because themes and plugins both inject their own and the last one can win.
Common mistakes
- Canonicals pointing at a staging domain after a site launch, which happens more often than it should
- Canonicalising paginated pages to page one, which hides the deeper content from indexing
- Assuming a canonical is obeyed when it points at a redirect or a noindexed URL
- Trusting the plugin setting instead of checking the rendered HTML for conflicting tags