A canonical tag tells search engines which version of a page you want indexed when several URLs carry the same or very similar content. Get it wrong and Google can index the wrong URL, split ranking signals across duplicates, or leave out of the index a page you actually wanted found. The Canonical URL Checker reads a page's canonical tag and reports where it actually points.
Why canonical tags go wrong
Most canonical problems are not caused by someone forgetting the tag. They come from a template rendering a relative path, a staging environment leaking its own domain into production pages, or a CMS auto-generating a canonical that points at the parent category. None of this shows up by reading the page in a browser, because the tag sits in the page's head section and never renders on screen.
What the checker looks at
Paste in a URL and the tool fetches the page, reads the canonical tag in the head, and reports what it finds. It flags the cases that cause the most damage in practice:
- A canonical pointing to a completely different page, whether through template error or a manual mistake
- A missing canonical tag, which leaves Google to guess which version to index
- A self-referencing canonical that still carries tracking parameters, so the "canonical" version is not the clean URL you actually want ranked
- A canonical pointing at a URL that itself redirects or returns an error, which passes no useful signal at all
Self-referencing versus pointing elsewhere
Most pages should canonicalise to themselves. A page with no duplicate content, no parameter variants and no need to consolidate with another page should point its canonical tag at its own address. Where genuine duplicates exist, such as a print version, a URL carrying UTM parameters, or a paginated variant, the canonical should point at the one version you want indexed, and every duplicate should point at that same target. Checking one URL at a time suits a spot check; if you suspect a whole section of the site is inconsistent, a full crawl, covered in Technical SEO Crawlers Compared, will find the pattern faster than checking pages one by one.
What a clean result actually tells you
A canonical tag pointing at the right URL is a signal, not a guarantee. Google treats it as a strong hint, and can choose a different canonical if it has other reasons to, most often when the target page has thin content or is itself blocked from crawling. A clean check confirms your markup is correct; it does not confirm Google has accepted it. Search Console's coverage report, checked separately, tells you whether the canonical you set matches the one Google is actually using.
Where this fits with other checks
Canonical problems rarely turn up alone. A page with a broken canonical is often missing other basics too, so it's worth running the same URL through the Meta Tag Checker for title and description issues, and the Redirect Chain Checker if the canonical target itself looks like it might redirect somewhere else. Neither tool, nor this one, replaces a full site crawl. They're built for checking a URL or a handful of URLs quickly.
Limitations worth knowing
The checker reads what's present in a page's HTML, so it can only report what it finds there. It does not see canonical signals sent through HTTP headers, which matter for non-HTML files such as PDFs, and it cannot tell you what Google has actually chosen to index if that differs from the tag on the page. Read the result as a description of your markup, and cross-check against Search Console before acting on it. Where the tool's answer does not match what you expected, check the raw HTML yourself before assuming either one is wrong.
For a definition of canonicalisation, duplicate content and related terms, the glossary is worth a look before you dig into a large site's canonical setup.