Canonical URL

A canonical URL is the version of a page search engines treat as the main one when the same content is reachable at several URLs. You suggest it with a rel="canonical" link, but Google makes the final choice.

Also called
Canonical tag, rel=canonical, Canonical link, Canonicalisation, Canonicalization
Category
SEO and AEO
Updated

Duplicate URLs appear on almost every site without anyone planning them: http and https, www and non-www, trailing slashes, tracking parameters, filter parameters, and the same post listed under two category paths. Canonicalisation is how search engines decide which one to index and show, and how ranking signals from the duplicates get consolidated onto it.

Google defines the canonical as the URL it chose as the most representative from a set of duplicate pages. You can influence that choice. Redirects are a strong signal, a rel="canonical" link element or HTTP header is a strong signal, and listing a URL in the sitemap is a weak one. Google’s own wording is that a canonical preference is a hint, not a rule. In Search Console, the URL Inspection tool shows both your declared canonical and the one Google selected.

Why it matters for a SaaS website

SaaS sites create duplicates at scale. Campaign links add UTM parameters to the pricing page, CMS templates expose the same integration under several paths, and localised or near-identical landing pages compete with each other. Without clear canonicals, signals split across variants, the wrong version can rank, and reports in Search Console become hard to read. Migrations make it worse when a new platform changes trailing slash or casing behaviour without anyone noticing.

How DesignMe handles it

We give every page a self-referencing canonical with the full URL and point internal links at that same version. On our own Astro site the canonical is generated from the page path in the base layout, and we kept URLs without trailing slashes, exactly as the previous platform served them, so no indexed URL changed. On migrations, canonicals are part of the pre-launch check alongside the sitemap, robots.txt and the 301 redirect map.

Example

Say a pricing page is reachable at /pricing, /pricing/ and /pricing?utm_source=linkedin, and Search Console shows clicks split across them. A self-referencing canonical to https://www.example.com/pricing on every variant, a permanent redirect from the trailing slash version, and internal links that all use the clean URL leave one indexed page holding all the signals.

Common mistakes

  • Relative or wrong-domain canonicals. Use absolute URLs on the live domain, never a staging host.
  • Canonicalising paginated pages to page one. Page two of a blog list is not a duplicate of page one.
  • Mixing signals. A canonical to one URL, a sitemap listing another and internal links to a third cancel each other out.
  • Using noindex or robots.txt instead. Google advises against both for choosing a canonical within a site.

Questions

Is a canonical tag a directive or a hint?
A hint. Google says indicating a canonical preference is a hint, not a rule, and it weighs other signals too: redirects, whether a URL is on HTTPS, sitemap inclusion and internal links. When those signals agree with your canonical tag, Google usually follows it. When they conflict, it may pick another URL.
Should every page have a self-referencing canonical tag?
Yes, it is good practice. A canonical tag pointing to the page's own clean URL tells search engines which version to index when tracking parameters, trailing slashes or capital letters create variants. Use the full absolute URL, and make sure your internal links point to that same version.

You've reached the end, so now…

Tell us what you’re building.

We’ll help you map the right scope, team, timeline, and next steps.

Book a call