Canonical tag

nounalso called rel=canonical or canonical URL

Definition

A canonical tag is an HTML link element (rel="canonical") that tells search engines which URL is the preferred version of a page reachable at several addresses, consolidating its ranking signals onto that one URL — a strong hint, not a command.

Updated 6 min read6 cited sources

On this page8 sections

Why it matters for founders and small teams

Every page you publish can be reached at more addresses than you think — with tracking parameters, with and without www, through a syndication partner — and each copy splits the links and attention one page should get. A correct canonical tag is a one-line fix that keeps your best page credited as the source, in Google’s results and in the AI answers built on its index.

How does a canonical tag work?#

A canonical tag works by placing <link rel="canonical" href="…"> in a page’s <head> to name the URL you want indexed; when Google clusters duplicate or near-duplicate pages, it weighs that hint alongside redirects, sitemaps and other signals to choose the one version it crawls most, ranks and shows.

html
<!-- On every version of the page, including the canonical itself -->
<head>
<title>Plannora pricing: plans for teams of every size</title>
<link rel="canonical" href="https://www.plannora.io/pricing" />
</head>
 
<!-- For a PDF or other non-HTML file, send an HTTP header instead -->
Link: <https://www.plannora.io/guides/launch-plan.pdf>; rel="canonical"

Google ranks its canonicalization signals by strength: redirects (strong), rel="canonical" annotations (strong) and sitemap inclusion (weak), and they stack when they agree. The chosen canonical “will be crawled most regularly; duplicates are crawled less frequently,” it becomes “the main source to evaluate content and quality,” and links pointing at the duplicates are consolidated onto it.

  • Use absolute URLs. Google supports relative paths but recommends against them.
  • Put it in the <head>. Google only accepts the element there, so keep the <head> valid HTML.
  • Add a self-referencing canonical to the canonical page itself, as Google recommends.
  • One method, one answer. Never declare a different URL in the HTTP header, the HTML and the XML sitemap.

Why does Google ignore my canonical tag?#

Google ignores a canonical tag when other signals disagree with it — the pages aren’t really duplicates, internal links point elsewhere, or the target redirects — because a canonical is a strong hint, not a command, and Google picks whichever version it judges most useful to searchers.

Search Console shows the verdict. URL Inspection lists the user-declared and Google-selected canonical side by side, and the Page indexing report flags “Duplicate, Google chose different canonical than user” when “Google thinks another URL makes a better canonical.” That’s different from “Alternate page with proper canonical tag,” which means everything worked and needs no action.

Likely causeFix
The pages aren’t truly duplicatesMake them clearly distinct, or merge them — Google clusters on the main content
Internal links point at another versionLink to the canonical URL everywhere, navigation included — see internal linking
Header, HTML and sitemap disagreeDeclare the same URL in every method
The target redirects, 404s or is noindexPoint the tag at a live, indexable page
HTTP and HTTPS both resolveRedirect to HTTPS; Google prefers it unless signals conflict
JavaScript rewrites the tagSet it in the server HTML and leave it unchanged

Worked example

The URL Variant Multiplier

A way to count how many addresses one page really has before deciding where canonicals and redirects are needed. The inputs are illustrative, for the pricing page of a fictional app called Plannora — count your own variants the same way, from your server logs.

  1. 1

    Protocol and host

    http and https, with and without www — four combinations when the server answers on all of them.

    4

  2. 2

    Trailing slash

    /pricing and /pricing/ both return 200 instead of one redirecting to the other.

    × 2 = 8

  3. 3

    Tracking parameters

    The clean URL plus three parameters that show up in the logs from newsletters and ads: ?utm_source=, ?ref= and ?gclid=.

    × 4 = 32

  4. 4

    Syndicated copy

    A partner republished Plannora’s pricing explainer on its own domain.

    + 1 = 33

  5. =

    Result

    33 crawlable URLs for one page, each able to collect links and split signals. Redirecting http and the non-www host to one version, enforcing one slash rule and adding a self-referencing canonical collapse the 32 on-site variants into one; the partner’s copy needs noindex or a canonical back.

    33 → 1

The result: Run the same count across a site and it doubles as a crawl budget estimate: every variant a crawler can reach is a fetch not spent on a new page. Fix protocol and host with redirects first, since they’re the strongest signal, then let canonicals handle the parameters you can’t avoid.

Free to use and adapt. If you cite it, link to rankbox.xyz/glossary/canonical-tag.

Canonical tag vs noindex vs redirect: which should you use?#

Use a redirect when the duplicate URL should stop existing for people too, a canonical tag when both versions must stay reachable, and noindex only when a page shouldn’t appear in search at all — Google advises against noindex for choosing a canonical within a site, because it removes the page entirely.

SituationUseWhy
An old URL replaced by a new one301 redirectThe strongest signal; people and bots both land on the new page
Tracking parameters, sort orders, print viewsrel="canonical"Every URL keeps working while signals consolidate on one
Your article republished by a partnerThe partner adds noindex, or a canonical to youGoogle now prefers the partner blocking indexing for syndication
Cart, account and internal search pagesnoindex, or keep them out of crawlingThey shouldn’t be in search at all
Duplicates you’d like to hideNot robots.txtA blocked URL can still be indexed without its content, and the crawler never sees your canonical

Syndication is the case that matters most for AI search. Google’s troubleshooting guide says the canonical element “is not recommended for those who want to avoid duplication by syndication partners,” and that the most effective fix is for partners to block indexing of your content. Write one or the other into every syndication deal: Columbia’s Tow Center caught Perplexity citing republished copies of articles instead of the originals.

Google’s AI features inherit its canonicalization, because AI Overviews, AI Mode and Gemini ground answers in a Search index where duplicates are already folded into one canonical. OpenAI and Perplexity haven’t documented whether they honor rel=canonical, and Brave’s discovery client, which feeds Claude’s search provider, reads it only from the HTML head.

Google — AI Overviews, AI Mode, GeminiHelps
Grounding retrieves from the Search index, so the Google-selected canonical is the URL that can be cited. Google’s AI optimization guide lists reducing duplicate content among its technical best practices.
Brave — Claude's search providerHelps
Brave’s discovery client drops URLs with more than one query parameter unless a canonical points to a clean version, and it reads canonicals from the <head>, not HTTP headers.
OpenAI — ChatGPT searchUnconfirmed
OpenAI doesn’t say whether OAI-SearchBot honors rel=canonical. Keep canonicals right for Bing, a named ChatGPT search provider.
PerplexityUnconfirmed
Not documented, and it has been caught citing syndicated copies over originals — so control duplicates at the source.

One rule covers every engine that doesn’t run JavaScript: a canonical injected by a script doesn’t exist for it, exactly like any other head tag. Put the tag in the server HTML — see server-side rendering — so the same answer reaches Google, Bing, Brave and the AI crawlers alike.

Common mistakes with canonical tags#

The most common canonical tag mistakes are pointing every paginated page at page one, canonicalizing to URLs that redirect or carry noindex, letting a theme and a plugin each emit a conflicting tag, and using canonicals to paper over different pages that should be merged.

Myth

A canonical tag is a command.

Reality

It’s a hint. Google says it “may choose a different page as canonical than you do” — check URL Inspection rather than assuming.

Myth

Every paginated page should point to page 1.

Reality

Google says not to use the first page of a sequence as the canonical. Page 2 isn’t a duplicate of page 1; give each page its own self-referencing canonical.

Myth

A canonical fixes two articles competing for one keyword.

Reality

Different articles aren’t duplicates, so Google may ignore the hint. Merge them and redirect — see keyword cannibalization.

Myth

Two canonical tags are fine as long as one is right.

Reality

Google warns that multiple or conflicting canonicals “may lead to unexpected results.” Themes and SEO plugins often both add one — view source and count.

Sources

  1. 1.How to specify a canonical URL with rel="canonical" and other methodsGoogle Search Central · developers.google.com
  2. 2.What is canonicalizationGoogle Search Central · developers.google.com
  3. 3.Fix canonicalization issuesGoogle Search Central · developers.google.com
  4. 4.Page indexing reportSearch Console Help · support.google.com
  5. 5.How Brave Search discovers new pagesMERJ · merj.com
  6. 6.We compared eight AI search engines. They're all bad at citing newsColumbia Journalism Review · cjr.org

Know someone who’d find this useful? Send it their way.

Written by

Rankbox Team

The team behind Rankbox. We study how ChatGPT, Perplexity, Gemini, and Google AI Overviews choose their sources, and publish what we learn so you can put it to work.

See which AI answers cite you today

Enter your site to see how often ChatGPT, Perplexity, Gemini, and Google cite your brand, and exactly what to publish next.

No credit card required · Free 7-day trial