SEO · CANONICAL · GUIDE

Canonical URL Guide:
How to Set, Check, and Fix Them

Canonical tags are one of the most misunderstood SEO signals — and one of the most impactful to get right. A single broken canonical can split your traffic between duplicate URLs for months. Here is how to check every page in minutes.

Updated August 2026 · 5 minute read

Why canonical URLs matter

A canonical URL (<link rel="canonical" href="...">) tells search engines which version of a page is the definitive one. Without it, Google has to guess — and it often guesses wrong, especially on sites with URL parameters, multiple paths to the same content, or syndicated articles. The result is diluted ranking signals and lower organic performance.

🔗 Consolidates link equity

All backlinks, shares and engagement on duplicate URLs should flow to one canonical page. Without a canonical, each duplicate competes rather than contributes.

📋 Prevents duplicate content

Google penalises nothing for duplicate content — but it does split the index across duplicates, so none ranks as strongly as a single consolidated page would.

🔍 You control which URL ranks

Canonical tags let you choose whether /blog/post or /blog/post?ref=share or /2024/blog/post appears in results. Without one, Google picks for you.

Common canonical mistakes (and how to spot them)

#IssueWhat to checkFix
1Missing canonical tagDoes the page have <link rel="canonical"> at all?Add a self-referencing canonical to the <head> of every indexable page.
2Non-self-referencing canonicalDoes the canonical point to this page or to a different page?If this is the canonical version, it should reference itself.
3Relative canonical URLIs the href an absolute URL or relative path?Always use absolute URLs — https://example.com/page, not /page.
4Canonical chain loopA canonicals to B, B canonicals to A.Break the loop. Trace the chain to a single final destination.
5Canonical + noindex togetherDoes the page have both a canonical tag and noindex?Remove one: Google treats the pair as noindex and ignores the canonical.
6Cross-domain canonical to wrong domainDoes the canonical point to a domain you don't control?Unless you are deliberately syndicating, keep canonicals on your own domain.
7HTTP→HTTPS mismatchCanonical points to http:// on an HTTPS site.Update to the HTTPS version. Mixing protocols confuses the signal.
8Trailing slash mismatchCanonical includes /page/ but the page URL is /page (or vice versa).Be consistent. Pick one convention and stick to it site-wide.

Check every page automatically

Inspecting the canonical tag on each page by hand is feasible for five pages — not for fifty or five hundred. The free, open-source page-profile CLI checks canonical presence, self-reference status, absolute URL format and more against any URL:

npx page-profile https://example.com          # single page report
npx page-profile --urls-from-file urls.txt   # batch check all pages (Pro)
npx page-profile --compare prod.html staging.html  # diff canonicals (Pro)

✅ Graded checks

Canonical presence, absolute vs relative, self-referencing — each gets a pass/warn/fail so you triage instead of reading raw HTML.

📦 Batch mode

Feed it your sitemap URLs or a text file and check every page in one pass. Pro feature with HTML report output.

🔒 Runs locally

Your client URLs never leave your machine. No account, no upload, no data stored on a server.

Get page-profile free →

How canonical URLs work with page-profile

When you run page-profile against a URL, it extracts the canonical tag from the page <head> and checks:

Each check scores pass, warn or fail so you know what to fix and in what order. The free version handles single pages; Pro adds batch scanning across your entire sitemap and produces a shareable HTML report.

Frequently asked questions

What is a canonical URL?

A canonical URL is a tag in the of a page that tells search engines which version of a page is the authoritative one. When you have duplicate or near-duplicate pages (same content at different URLs), the canonical tag prevents search engines from splitting ranking signals between them.

\n

How do canonical URLs affect SEO?

They consolidate ranking signals — links, content, and authority — to one preferred URL. Without them, Google may pick the "wrong" URL as canonical, split PageRank across duplicates, or index dozens of near-identical pages instead of one. A single misconfigured canonical is rarely fatal, but systematic errors across a site silently cap your organic performance.

\n

What is a self-referencing canonical?

A canonical URL that points to the page itself. Every indexable page should have a self-referencing canonical. Even if nothing is duplicated, it is the strongest signal that this page is the version you want ranked. Many CMS platforms (WordPress, Shopify, Webflow) set these automatically, but static generators, legacy sites and hand-coded pages often omit them.

\n

Canonical vs. noindex — which should I use?

Use canonical when you have multiple URLs showing the same content and you want one of them to rank. Use noindex when you want a page out of search results entirely. They solve different problems: canonical consolidates, noindex excludes. Combining them (canonical + noindex) is treated by Google as a noindex — the canonical is ignored.

\n

How do I check if my canonical URLs are correct?

The simplest way is to inspect the of each page: look for <link rel="canonical" href="...">. For more than a handful of pages, use a CLI tool like page-profile which checks canonical presence, validity and conflicts across a list of URLs automatically.

\n

Can a canonical URL point to a different domain?

Yes, Google supports cross-domain canonicals — often used when syndicating content or when the same article appears on two domains you own. Most other search engines ignore cross-domain canonicals, so use this only when absolutely necessary.

\n

What happens when two pages canonical to each other?

A canonical conflict (A canonicals to B, B canonicals to A) is one of the worst SEO mistakes. Search engines see a loop and may pick neither, leaving all duplicate versions in the index without consolidated ranking. Always ensure canonical chains are acyclic and point to the definitive URL.

\n

Does page-profile check canonical URLs?

Yes. page-profile reports whether a canonical tag is present, whether it is self-referencing, and flags potential issues. The free version checks one URL at a time; Pro adds batch mode for scanning your whole sitemap.

Related: SEO Metadata Audit Checklist · Technical SEO Check · Open Graph Checker · Meta Tag Checker

Related: Hreflang Guide