What a Canonical URL Tag Does — and What It Does Not
Canonical tags are one of the most widely copied pieces of SEO advice and one of the most frequently misunderstood. They consolidate duplicates — they do not rank pages, fix bad URLs, or override a redirect.
The one-sentence version
A canonical tag tells a search engine: of these URLs that show the same content, index this one. It is a hint, not a command, and treating it as a command is where most canonical-tag problems come from.
Why duplicate URLs exist at all
Before the tag makes sense, it helps to be clear about the problem it solves. A single page routinely has several legitimate addresses:
- With and without a trailing slash —
/aboutand/about/ - With
http://andhttps:// - With
www.and without - Reachable through a
?utm_source=campaign link or a?ref=internal link - Reachable through a filtered view —
?page=2,?sort=asc,?category=guides
None of these are different content. A search engine that indexed all of them would spend crawl budget on duplicates and could split link equity across them, so consolidation matters.
The syntax
<link rel="canonical" href="https://example.com/article/real-url/" />
Three requirements, and violating any of them makes the tag unreliable:
- Absolute URL. Include the scheme and host. A relative href is tolerated in some cases and ignored in others.
- In the
<head>. Not in the body. - One per page. If a page emits three canonicals pointing at different URLs, the behaviour is undefined. Pick one.
The WHATWG specification treats rel="canonical" as a link type with defined semantics
rather than proprietary syntax, which is worth knowing: it is standard HTML, not a
Google-specific hack.
What it does
Google describes the tag as a hint, and the phrasing is deliberate. When honoured, a canonical causes the engine to consolidate signals — links, mentions, crawl history — onto the declared URL and to pick that one for its index.
In practice, “canonical” is close to “the URL I would have chosen anyway, if you had made it obvious.”
What it does not do
This is the part worth memorising, because each of these is a common and expensive misunderstanding.
It does not redirect users. The tag is invisible to browsers. A visitor following a link
to /page?variant=2 is served /page?variant=2 regardless of what the tag says. If you
need visitors moved, use a redirect.
It does not override a server redirect. If /old issues a 301 to /new, the
redirect determines what is served. Adding a canonical on top of that is a configuration
conflict, not a refinement.
It does not create pages. A canonical pointing to a URL that does not exist, or that
returns 404, is ignored — and you have lost the signal you were trying to send.
It does not stop crawling. The tag influences indexing, not discovery. Google will still crawl a non-canonical URL it finds linked, in order to see its canonical.
It does not fix content. If two pages are genuinely different, tagging one as canonical of the other is a signal to consolidate signals onto a page that does not contain the material a searcher wanted. The right fix is usually to merge the content.
Canonical or redirect?
The two mechanisms answer different questions, and using the right one is most of the battle.
| Situation | Use |
|---|---|
| The old URL should send visitors to the new one | Redirect (301) |
| Several URLs show identical content, any may be linked | Canonical tag |
| A filtered view should not be indexed but should stay crawlable | Canonical tag pointing at the base view |
| A campaign URL should count for the landing page | Canonical tag; the utm_ params are stripped in reporting |
| Two pages are near-identical but not identical | Canonical tag, plus noindex on the weaker one if needed |
| A page moved and the old URL is gone entirely | 301 redirect, plus sitemap update |
A useful rule: canonical is for telling search engines which of several live URLs is authoritative. Redirect is for telling everyone, including users, that a URL has moved.
These compose. If /old redirects to /new and /new self-references, both mechanisms
agree and nothing needs reconciling.
Diagnosing a tag that is being ignored
When a canonical is not honoured, check these in order. Most failures are configuration mistakes rather than anything to do with content:
- Does the target URL return
200? A canonical pointing to a redirect or an error is dropped. - Is the target itself canonicalised elsewhere? Canonical chains and loops occasionally resolve in unhelpful ways.
- Is the tag absolute, in the head, and singular? Check all three.
- Are the pages actually duplicates? Google will sometimes decline a hint it disagrees with, particularly when the pages differ substantially.
- Is another canonical signal winning? For URLs with many inbound links, engines sometimes prefer the most-linked version regardless of the tag.
- Is the page noindex? If a page carries both
noindexand a canonical, the noindex wins and the tag is moot. This is a common and confusing combination.
Self-referencing canonicals
Put a self-referencing canonical on every indexable page:
<link rel="canonical" href="https://example.com/this-exact-page/" />
This is unremarkable and widely recommended. It does nothing on its own, which is precisely the point — it removes ambiguity, so that when a non-canonical URL is linked, the signal is unambiguous about where it should consolidate.
It also means every URL a site publishes is explicit about its own identity, which is a useful property as a site grows into hundreds of pages and query parameters start appearing in internal links.
Anti-patterns
A short list of things that look helpful and are not:
- Canonicalising every page to the homepage. Collapses the entire site into one URL.
- Changing a canonical in response to a query string parameter. If
?page=2and?page=3point at different content, they are different pages and need different URLs. - Canonicalising to a page that redirects. Silently does nothing.
- Relying on a canonical to consolidate pages you have not merged. Searchers arriving on the consolidated page still will not find the material they were looking for.
- Adding a canonical to a noindex page and expecting it to index. Contradictory directives; the noindex is honoured.
The underlying principle
Canonical tags are a way of expressing an editorial decision about which URL represents a piece of content. The tag only helps when that decision has already been made honestly and implemented consistently across the templates, the sitemap and the internal links.
A site whose canonical tags match its real information architecture has done the hard part already. A site using the tag to paper over an inconsistent structure will find the search engine quietly declining the suggestion.
Topics
Frequently asked questions
Should a canonical tag be self-referencing?
Yes, on almost every indexable page. A self-referencing canonical is a clear signal that the URL is the preferred version of itself, and it is the default that makes cross-page canonicals easier to reason about. The exception is a page that genuinely consolidates into another, such as a tag archive.
Can a canonical tag redirect a user?
No. It is a hint to search engines only. Users following a link to a non-canonical URL will still be served that URL. If you need visitors sent somewhere else, use an HTTP redirect.
Does rel canonical override a redirect?
They are different mechanisms and the redirect wins for users. If a URL 301-redirects to another page and also carries a canonical tag pointing somewhere else, you have a configuration conflict. Pick one destination and make both the redirect and the canonical agree.
Why is Google ignoring my canonical tag?
The most common reasons are that the canonical points to a URL returning a 4xx or 5xx status, that it points somewhere that itself redirects, that it is malformed or relative when an absolute URL is expected, or that the pages are not actually near-duplicates and Google has decided it knows better. Diagnosing this means checking the target URL status, not the tag itself.
Sources and references
- Specify canonical URLs in Google Search Central documentation — Google, accessed 2026-09-27
- Link types — HTML specification — WHATWG, accessed 2026-09-24
- rel="canonical" — MDN Web Docs — Mozilla, accessed 2026-09-27