Canonical URL (the version Google indexes)

A canonical URL is the one address Google treats as the representative copy of a page when several URLs show the same or very similar content. Only the canonical is indexed and ranked; the others are folded into it. You can suggest the canonical with a rel="canonical" tag, a redirect or a sitemap, but the final choice is Google's.

The canonical URL is the single address Google indexes for a set of duplicate pages. You influence it with a canonical tag, redirects and the sitemap; Google combines those with its own signals and may pick differently.

Canonical URL vs canonical tag

The two terms get mixed up. The canonical URL is an outcome: the address that represents the group in the index. The canonical tag is an input: the <link rel="canonical"> element (or HTTP header) in which you state your preference. The tag is covered in detail in the entry on the canonical tag; this entry is about how the outcome is decided.

A page without any tag still has a canonical URL, and a page with a tag can end up with a different one than it declares.

How it looks

A declared canonical is an absolute URL in the head of the page or in a response header:

<link rel="canonical" href="https://example.com/dresses/green-dresses" />

Link: <https://example.com/downloads/white-paper.pdf>; rel="canonical"

Typical duplicate groups that need one canonical:

  • http:// and https://, with and without www,
  • trailing slash and no trailing slash,
  • URLs with tracking parameters such as ?gclid= or ?utm_source=,
  • sorted or paginated variants of a listing,
  • a product reachable in several categories.

How Google picks a canonical

Google's documentation on how to specify a canonical URL lists the methods in order of strength: redirects are a strong signal that the target should become canonical; rel="canonical" annotations are a strong signal for the specified URL; sitemap inclusion is a weak signal. The methods stack, so using two or more increases the chance that your preferred URL appears in results. None of them is required: without any declaration, Google identifies which version is objectively the best to show.

The same document names additional signals based on site setup. Google prefers HTTPS over HTTP as canonical, except when the HTTPS page has an invalid certificate, insecure dependencies other than images, a redirect to or through HTTP, or a canonical link to the HTTP page. Google also prefers URLs that belong to an hreflang cluster over a variant left outside it. Internal linking matters too: the guide says that linking consistently to the URL you consider canonical helps Google understand your preference.

The document also says that annotations with hreflang, lang, media or type attributes are ignored for canonicalization, and that a URL fragment should not be specified as canonical.

Redirects deserve a note. Per Google's page on redirects and Search, permanent redirects make the target the canonical, while temporary ones keep the source in results. The comparison in the entry on 301 vs 302 redirects covers the practical choice.

User-declared vs Google-selected

The URL Inspection documentation explains both fields. "User-declared canonical" shows the URL your page explicitly declares; if the page has no alternates, "None" is fine. "Google-selected canonical" is the page Google chose when it found similar pages; it might be your declared URL, or another one Google considers a better example. If the page has no alternate versions, the Google-selected canonical is the inspected URL itself.

When the two differ, the page lands in the Pages report under Duplicate, Google chose different canonical than user. When no canonical was declared at all and Google picked one, it lands under Duplicate without user-selected canonical.

Google's guide on fixing canonicalization issues lists the usual reasons for a surprise choice: language variants without hreflang, incorrect canonical elements inserted by a CMS or plugin, misconfigured servers returning the same content on several hosts, hacked pages with injected cross-domain canonicals, and syndicated content. After a content fix, Google might hold pages in a duplicate cluster for up to two weeks.

Common mistakes

MistakeEffect
Canonical points to a URL that redirects or returns 404Signal is weak or ignored; Google picks another URL
Different canonicals via tag and sitemapConflicting signals; Google chooses on its own
Relative path in hrefSupported, but a crawled staging copy can hijack the canonical
Canonical on paginated pages pointing to page 1Pages 2+ are folded into page 1; their products or posts lose a path to the index
Using noindex to steer canonical choiceGoogle says this blocks the page completely instead of consolidating it
HTTP version listed in sitemap or hreflangPushes Google toward the HTTP canonical

How to check it

View the source of the page and search for rel="canonical". Then check the header with curl, because a PDF or a misconfigured server may declare a second one:

curl -sI https://example.com/page/ | grep -i "link:"

Fetch the declared canonical as well and make sure it returns 200 and declares itself.

In Search Console, inspect the URL and compare the two canonical fields. The URL Inspection documentation notes that the live test cannot predict the canonical; the choice is only visible in the indexed data, and the value can be a few hours behind the index.

The indexability checker reads the canonical from both the HTML and the HTTP header for up to 10 URLs and flags when it points away from the page.

How IndexRise monitors it

IndexRise saves the canonical of every monitored URL as part of the baseline and reads it again each night. A canonical that starts pointing to another URL triggers a critical "Page is no longer indexable" event with the cause named, because from Google's point of view the page just asked to be dropped in favour of a different one. A canonical that changes but still points to the page itself, or disappears, is a warning showing the old and new value. A second canonical on the page is reported as a duplicated element. Search Console shows Google's selection only after reindexing; the nightly check shows your declaration the morning after it changed.

Google decides the canonical URL; you only vote. Make sure every vote you cast - tag, redirect, sitemap, internal links - names the same address.
Check it on your siteIndexability checkerStatus code, noindex, canonical and robots.txt - up to 10 URLs at once.

Frequently asked questions

What is the difference between a canonical URL and a canonical tag?

The canonical URL is the address Google chooses to index for a group of duplicates. The canonical tag is one of the ways you suggest that choice. A page can have a canonical URL without any tag, and a tag can be ignored.

Can Google ignore my rel=canonical?

Yes. Google's documentation calls rel=canonical a strong signal, not a directive. If other signals (redirects, internal links, content differences, HTTPS) point elsewhere, Google may select a different canonical.

Where do I see which URL Google chose?

In Search Console, inspect the URL and read the Page indexing section: "User-declared canonical" shows what you declared, "Google-selected canonical" shows what Google picked.

Does every page need a canonical URL?

Every indexed page has one, because Google always picks a representative version. You only need to declare it when duplicates or near-duplicates exist, though a self-referencing tag on every page is recommended.

Which signal is the strongest: redirect, tag or sitemap?

Google's documentation orders them: redirects and rel=canonical annotations are strong signals, sitemap inclusion is a weak one. Combining them increases the chance your preferred URL is chosen.

Should the canonical URL be the HTTPS or the HTTP version?

HTTPS. Google prefers HTTPS pages as canonical unless the certificate is invalid, the page has insecure dependencies or redirects through HTTP.

Updated: 2026-10-20