Canonical tags in SEO tell search engines which URL you prefer when multiple URLs show duplicate or very similar content. They are a signal, not a command: Google may select a different canonical based on the content and other site signals. Use them to make a coherent URL set, then verify the choice in Search Console.
When a canonical is useful
A product page may be available at a clean URL and a URL with tracking parameters. A category can have sorting variations. HTTP and HTTPS or trailing-slash variants may resolve separately. In each case, choose the URL that should represent the content in search, and align links, redirects, sitemaps, and canonical hints with that choice. Google’s canonical methods guide explains the available signals.
A canonical is not a way to merge unrelated pages. If two pages answer different intents, each may deserve its own indexable URL and self-referencing canonical. If an old page has moved permanently, a redirect to the new URL is usually clearer for users than leaving the old page accessible with only a canonical hint.
How the HTML element works
A page can include a link element in the HTML head such as <link rel=”canonical” href=”https://example.com/guide/”>. The href identifies the preferred absolute URL. The page at /guide/?utm_source=newsletter can point to /guide/. The preferred /guide/ page can reference itself. Your CMS or SEO plugin may generate this element, so inspect the rendered output before adding a second one.
Canonical hints may also be expressed through an HTTP Link header for non-HTML resources. Do not place conflicting canonical declarations in different locations. Keep the preferred URL accessible, return a successful status, and avoid pointing to a noindex, blocked, or redirected target.
Build a consistent URL map
- Choose the preferred version for each duplicate cluster: protocol, hostname, path, and trailing slash.
- Link internally to the preferred URL, including navigation, breadcrumbs, related posts, and XML sitemap entries.
- Redirect obsolete or alternate versions when they should no longer be used.
- For accessible duplicate variants that must remain, use a consistent canonical hint to the preferred page.
- Inspect representative templates and individual exceptions after deployment.
Do not use robots.txt to hide a duplicate if you need Google to see its canonical hint. A blocked URL may still be known through links, but Google cannot crawl its page to read a tag. Nor is noindex a routine substitute for canonicalization: noindex asks Google to exclude a page, whereas a canonical expresses a preferred representative among duplicates.
WordPress examples
A WordPress SEO plugin commonly outputs a self-referencing canonical on a standard post. Check the page source for one authoritative element. If both a theme and a plugin add one, disable the duplicate output at its source. Review archive, paginated, attachment, translation, and filtered URLs separately because a global rule can collapse pages that should remain distinct.
For a pagination series, do not automatically canonicalize every page to page one if later pages contain unique items and discovery paths. For syndicated content, compare contractual and editorial needs before using a cross-domain canonical. It is a hint and may not be honored as expected.
Check what Google selected
Use Search Console URL Inspection for the user-declared canonical and Google-selected canonical. Compare both with the actual HTML, final response after redirects, sitemap entry, and internal links. If Google chose a different URL, first ask whether that version is better for users. Then look for contradictory signals and differences in content. Google’s canonical troubleshooting guide walks through this decision.
For example, if /services/seo/ declares itself canonical but Google selects /seo-services/, check whether the latter receives most internal links, carries more complete content, or is the destination of redirects. A tag alone may not overcome a site architecture that favors the other page. Document the cluster before editing templates.
Common mistakes
- Pointing all service or location pages to a generic hub even though their content is meaningfully different.
- Setting a canonical on a page that redirects or cannot be crawled.
- Including noncanonical URLs in sitemaps and important internal links while asking Google to prefer another.
- Publishing multiple conflicting canonical elements from a theme, plugin, or custom code.
- Using a canonical to fix weak content or a page that targets the wrong search intent.
- Changing canonical rules across an entire template without testing exceptions.
If the issue appears as “Duplicate, Google chose different canonical” in Search Console, inspect examples before calling it an error. An excluded duplicate may be exactly the intended result. Our indexing diagnosis guide helps distinguish expected exclusions from problems.
A short audit checklist
- List the URL variants and decide the preferred representative.
- Inspect the raw and rendered canonical output, HTTP response, and redirects.
- Confirm the preferred URL is useful, indexable, linked internally, and in the sitemap where appropriate.
- Compare the user-declared and Google-selected canonicals in URL Inspection.
- Fix conflicting signals and retest representative pages.
- Record the change date and monitor the affected URL cluster after recrawl.
A good canonical strategy is a sitewide agreement about which URLs represent each page, expressed consistently in technical signals and navigation. The technical SEO checklist and Search Console audit workflow provide the wider context for testing it.
Links will be automatically removed from comments.