Canonical Tags Explained
When several URLs show the same content, Google picks one to index. A canonical tag suggests which one, but it works only when other signals agree.

A canonical URL is the version Google chooses to show in search from a set of duplicate or very similar pages. Seeing duplicate page warnings in Google Search Console, with a mismatch between your own and Google's chosen canonical, can be a frustrating problem. The usual tool is a tag in the page's <head>: <link rel="canonical" href="https://example.com/my-post/">.
Remember, though, rel="canonical" is a signal, not a directive. Google's canonicalization guide ranks the methods: redirects and rel="canonical" are strong signals, inclusion in a sitemap is a weak one. Google also prefers HTTPS over HTTP. If no canonical is specified, Google picks the version it considers best to show.
Where duplicates come from on blogs
- Protocol and host variants:
httpandhttps, orwwwand non-www, serving the same page. - Device variants: a separate mobile URL, such as Blogger's
?m=1version of each post. - Site functions: label, category and archive pages that repeat post content, plus sorting and filtering parameters.
- URL parameters: tracking tags added to shared links create new addresses for the same page.
- Accidental variants: a demo or staging copy left open to crawlers.
Reading the Search Console statuses
The Page indexing report uses three canonical-related statuses:
- Duplicate, Google chose different canonical than user: the page is marked as canonical, but Google thinks another URL makes a better canonical and indexed that one instead.
- Duplicate without user-selected canonical: the page declares no canonical, and Google chose another page as canonical.
- Alternate page with proper canonical tag: the page correctly points to an indexed canonical, and there is nothing to do.
To see Google's choice for a specific URL, open URL Inspection. The Page indexing section shows User-declared canonical and Google-selected canonical side by side, and Test live URL checks the current version of the page. Menu names in Search Console can change.
Fixing a mismatch
- Make every signal point to the same URL: the canonical tag, internal links and the sitemap.
- Redirect protocol and host variants with 301 redirects to the single preferred version.
- Do not use robots.txt or
noindexto choose a canonical, and do not declare different canonicals through different methods. - If the pages really are duplicates, merge them or redirect one to the other. If they are meant to differ, make the content clearly distinct.
After making corrections, use Request indexing in URL Inspection for the key URL. Google says a request does not guarantee indexing, and a daily quota applies. The Google-selected canonical updates only after Google recrawls the pages, and the choice ultimately remains Google's.


