Machine-Readable Infrastructure

Canonical Link Element

Last reviewed:

Add inside <head> on every indexable HTML page. It’s a consolidation hint, not a hard directive — it works best when redirects, internal links, sitemap entries, and hreflang all reinforce the same preferred URL.

<!-- Default pattern: self-referencing canonical on the preferred URL -->
<link
  rel="canonical"
  href="https://example.com/preferred-url/"
/>

<!-- Duplicate variant pattern: parameter, filtered, or print version points to primary -->
<!-- Place this on the duplicate URL, not on the primary URL -->
<link
  rel="canonical"
  href="https://example.com/preferred-url/"
/>

<!-- Cross-domain syndication pattern: only when the republished page is meant to consolidate to the original -->
<link
  rel="canonical"
  href="https://original-publisher.example.com/article/"
/>

Field notes

  • Use one canonical only — multiple conflicting canonical tags usually cause search engines to ignore the signal.
  • Canonical targets must be absolute, final URLs that return 200, remain indexable, and are not blocked by robots or headers. A canonical pointing to a redirect, noindex page, blocked URL, or soft-404 is a broken signal, not a strategy.
  • Don’t use canonical as a substitute for redirects when a URL should no longer exist — redirect dead variants, canonicalize live duplicates.
  • Don’t point international variants to one canonical URL — language and region alternates should self-canonicalize and connect via hreflang instead.
  • Cross-domain canonicals only make sense when the duplicate is intentionally subordinate to the original.