Canonical Checker

Run a free 7-point canonical audit on any URL. Catches loops, broken targets, duplicate tags, and conflicting signals in a single check — no sign-up.

💡 We fetch the page, follow its canonical chain, and read robots.txt — results in a few seconds. Nothing is stored.

The 7 Canonical Issues This Tool Catches

A canonical tag is a one-line instruction — and a one-line instruction can go wrong in a surprising number of ways.

🏷️

Missing canonical

Without a declared canonical, Google decides on its own which variant of the URL is the “real” one. Tracking parameters, http/https, and www/non-www versions then compete against each other. A self-referencing canonical settles the question.

🔁

Non-self-referencing canonical

A canonical that points somewhere else declares this page a duplicate of the target — the target gets indexed instead. That’s exactly right for consolidation, and exactly wrong when a template accidentally stamps the same canonical on every page.

💀

Canonical → 404

When the canonical target answers with an error status, the instruction is dead: Google can’t consolidate onto a page that doesn’t exist, drops the hint entirely, and picks a version itself — often not the one you wanted.

🔄

Canonical loop

Page A canonicalizes to page B, and B canonicalizes back to A. Both instructions cancel out, Google ignores them, and indexing becomes a coin flip. Loops are nearly invisible in the source of a single page — you only see them by following the chain, which is what this tool does.

🌍

Cross-domain canonical

A canonical pointing at another domain hands your indexing to that domain. Legitimate for syndicated articles — devastating when a staging hostname or an old migration target is left behind in the template and silently deindexes the live site.

📋

Multiple canonical tags

Two canonical tags with different targets is a contradiction, and Google’s response to contradictions is to trust neither. The usual culprit: an SEO plugin and a theme each injecting their own tag without knowing about the other.

HTTP header vs meta conflict

Canonicals can be declared twice: by the server in an HTTP Link header and by the page in a <link> tag. When CDN or server config disagrees with the CMS, the two signals collide — and a collided signal is a discarded signal.

How it works

One request from you, a handful from us — no crawler queue, no account, no quota.

1

Fetch & follow

We request your URL exactly like a crawler would, following every redirect and recording the chain.

2

Parse every signal

All <link rel="canonical"> tags, the HTTP Link header, meta robots, and robots.txt are read and compared.

3

Walk the chain

We fetch the canonical target itself, follow its canonical in turn, and flag 404s, redirects, and loops.

Frequently asked questions

Everything you need to know about canonical tags and duplicate content.

BASICSWhat is a canonical tag?

A canonical tag (<link rel="canonical" href="…">) tells search engines which URL is the preferred, “master” version of a page when several URLs show the same or very similar content. Search engines consolidate ranking signals onto the canonical URL and typically index that one.

BASICSWhat is a self-referencing canonical, and do I need one?

A self-referencing canonical points at the page’s own URL. It looks redundant but isn’t: it neutralizes duplicate variants created by tracking parameters, session IDs, and protocol or www differences before they become a problem. It’s the recommended default for every indexable page.

DEBUGGINGWhat is a canonical loop and how do I fix it?

A loop means the canonical chain circles back on itself — A points to B and B points back to A. Google ignores looped canonicals and chooses a version on its own. Fix it by deciding which URL should be indexed, giving that page a self-referencing canonical, and pointing every other variant directly at it (no chains).

DEBUGGINGWhat happens if my canonical points to a 404?

The directive is simply discarded — Google can’t consolidate signals onto a page that doesn’t resolve. The page with the broken canonical may still get indexed, but you’ve lost control over which variant wins. Point the canonical at a live, 200-status URL.

BASICSIs a cross-domain canonical bad?

Not inherently. It’s the standard mechanism for syndicated content: the republishing site canonicalizes to the original so the original ranks. It becomes dangerous when it’s unintentional — a staging domain or migration leftover in your template can deindex whole sections of the live site.

DEBUGGINGI have multiple canonical tags — which one does Google use?

If they conflict, quite possibly none of them: Google has stated that conflicting canonicals may all be ignored. In practice the first tag in the <head> often wins, but you shouldn’t rely on it. Find the plugin, theme, or template that injects the extra tag and remove it.

BASICSCanonical tag vs 301 redirect — which should I use?

A 301 redirect is the stronger signal: users and crawlers both land on the target, and there’s no ambiguity. Use a canonical when both URLs must stay accessible (filtered views, print versions, UTM-tagged URLs, syndication). Use a 301 when the duplicate URL has no reason to exist.

BASICSDoes Google always obey the canonical tag?

No — it’s a strong hint, not a directive. Google can override it when other signals (internal links, sitemaps, redirects, near-identical content elsewhere) disagree. That’s why consistency matters: canonical, sitemap URLs, and internal links should all point at the same variant.

TOOLIs this checker free? Do you store my URLs?

Completely free, no account, no quota. Each check fetches your page live, computes the result, and returns it — nothing is logged or stored.