Canonical Tag Checker
Enter any URL to validate its canonical tag. The tool checks whether it is self-referencing, whether protocol and trailing slash match, whether a noindex contradicts it, and whether og:url agrees.
Short answer
A canonical tag is a link element in the page head that names which URL search engines should index when several serve the same content. On a normal page it should point at that page's own URL, matched exactly on protocol, host and trailing slash. It is a hint rather than a directive: Google weighs it against internal links, sitemap entries and redirects, so a canonical that contradicts those other signals often loses. The failures worth catching are a canonical pointing at a 404 or a redirect, a protocol or trailing slash mismatch, a noindex on the same page, and the migration bug where every page canonicalises to the homepage.
What a canonical tag does, and why most sites need one
Most sites serve the same page at several addresses without ever intending to. To a search engine those are separate pages carrying identical content, and it has to decide which one is real.
- With and without a trailing slash
- On www and on the bare domain
- Over http and over https
- With a tracking parameter appended by an ad platform or an email tool
- With a session ID, a sort order, or a filter that changes nothing visible
- As a print variant, an AMP variant, or a syndicated copy on a partner site
A canonical tag is how you decide instead of letting Google guess. It names the single URL you want indexed, and the ranking signals each variant has picked up get consolidated onto that one rather than scattered across six.
What happens if you leave it alone
Google picks a canonical for you. Sometimes it picks the version with the tracking parameter on the end. Search Console reports its choice under "Duplicate, Google chose different canonical than user", which is the report telling you your canonical lost.
The six ways a canonical breaks
Canonicals rarely fail by being absent. They fail by being present and wrong, which is harder to notice because a validator sees a tag and moves on.
| Problem | What it looks like | What it costs |
|---|---|---|
| Everything points at the homepage | Every page declares the root URL as canonical | The site drops out of the index over a few weeks. The classic migration bug |
| Protocol mismatch | An http canonical on a page served over https | Google follows a hint to a URL that redirects, and may ignore it |
| Trailing slash mismatch | The page is /guides/seo and the canonical is /guides/seo/ | The canonical names a different URL, which may 301 or 404 |
| Canonical to a 404 or redirect | The target no longer resolves with a 200 | The hint is discarded and Google chooses for itself |
| noindex on the same page | Both a noindex directive and a canonical are present | Contradictory instructions; the noindex usually wins and the canonical is wasted |
| canonical and og:url disagree | Different URLs in the two tags | Share signals collect on one URL and ranking signals on another |
How to check a canonical tag
Six checks, in the order that catches the expensive problems first. The first two account for most of what goes wrong.
- 01
Check the page has a canonical at all
Every indexable page should carry one. Without it, Google picks a canonical for you from whatever duplicates it finds, and its choice is reported in Search Console as 'Duplicate, Google chose different canonical than user'.
- 02
Confirm it points at this page
On a normal page the canonical should be the page's own URL. Anything else tells Google to index a different address, which is a deliberate choice on a variant page and a bug everywhere else.
- 03
Match protocol, host and trailing slash exactly
https://example.com/page and https://example.com/page/ are two URLs. So are the www and non-www forms. A canonical that differs from the live URL by a slash is pointing at a page that may not exist.
- 04
Check for a noindex on the same page
noindex and a canonical are contradictory instructions: one says do not index this, the other says index this version. Google usually honours the noindex, and the canonical is wasted at best.
- 05
Compare the canonical with og:url
The canonical decides which URL is indexed and og:url decides which URL social shares are attributed to. When they disagree, your share signals accumulate on one address and your ranking signals on another.
- 06
Verify the canonical target resolves with a 200
A canonical pointing at a 404, a redirect or a noindexed page is treated as a broken hint. Load the target URL and confirm it returns the page you meant.
Canonical, redirect, or noindex: which one to reach for
All three deal with pages you do not want competing in search, and they are not interchangeable. Picking the wrong one is how sites end up with duplicates that never resolve.
Use a canonical when both URLs must stay reachable
A product listed under two categories, a page reachable with and without a tracking parameter, an article syndicated to a partner. Visitors can still open either address; only the index is consolidated.
Use a 301 redirect when the old URL should stop being visited
A moved page, a merged pair of articles, a retired URL structure. A redirect is a directive rather than a hint, so it is the stronger instrument whenever you can afford to lose the old address. Check the result with the redirect chain checker, because redirects tend to accumulate into chains.
Use noindex when the page should exist but never rank
Internal search results, thin tag archives, thank-you pages. The page stays useful to visitors and leaves the index entirely. Do not pair it with a canonical.
Make the other signals agree
A canonical only sticks when the rest of your signals point the same way. Link internally to the canonical URL, list only the canonical URL in your sitemap, and do not redirect the canonical anywhere. When those disagree with the tag, Google usually believes the links.
What this tool checks
Canonical tag presence
Whether the page declares a canonical at all
Self-referencing check
Whether the canonical points at the page's own URL
Protocol mismatch
An http canonical on an https page, and the reverse
Trailing slash consistency
Mismatches between the page URL and the canonical
noindex conflict
Pages carrying both a noindex directive and a canonical
og:url consistency
Whether the social URL matches the indexed URL
One URL at a time is not how canonical bugs get found
Frequently asked questions
What is a canonical tag?
A canonical tag is a link element in the page head that names which URL should be indexed when several serve the same content. It reads rel="canonical" and carries an absolute URL. Its job is to consolidate duplicates so that ranking signals collect on one address instead of being split across several.
Should every page have a canonical tag?
Every indexable page should have one, and on a normal page it should point at that page's own URL. That is called a self-referencing canonical. Without a canonical, Google chooses one for you from whatever duplicates it can see, and that choice is not always the URL you would have picked.
Why does my site serve the same page at several URLs?
Almost always without anyone deciding to. Trailing slash and no trailing slash, www and non-www, http and https, a tracking parameter appended by an ad platform, a print variant, a session ID, uppercase and lowercase paths. To a crawler each of those is a distinct URL carrying identical content.
What happens if my canonical tag is wrong?
The most damaging version is a site-wide canonical pointing everything at the homepage, which is a common migration bug and takes a site out of the index over a couple of weeks. Milder versions cost less but still hurt: a canonical pointing at a 404, an http canonical on an https page, or a trailing slash mismatch all mean Google gets an instruction it cannot follow.
Is a canonical tag a directive or a hint?
A hint. Google treats rel=canonical as one signal among several, alongside internal links, sitemap entries, redirects and which version has more inbound links. When those signals contradict the canonical, Google can and does pick a different URL. Consistency across all of them is what makes the canonical stick.
Can I have both noindex and a canonical tag?
You can, but the two instructions contradict each other. noindex says do not index this page, and the canonical says this is the version worth indexing. Google generally follows the noindex, and it has warned against combining them because the behaviour is not guaranteed. Pick one: noindex the variant, or canonicalise it, not both.
What is the difference between a canonical tag and a 301 redirect?
A redirect removes the duplicate: anyone visiting the old URL ends up at the new one. A canonical keeps both URLs reachable and tells search engines which to index. Use a redirect when the old URL should no longer be visited, and a canonical when both need to work, such as a product reachable through two category paths.
What is the difference between canonical and og:url?
The canonical tells search engines which URL to index. The og:url tag tells Facebook, LinkedIn and other social platforms which URL a share should be attributed to. They should match. When they disagree, likes and shares accumulate against one URL while ranking signals accumulate against another, and neither gets full credit.
Should paginated pages canonicalise to page one?
No. Google's guidance is that each page in a paginated series should carry a self-referencing canonical, because page three genuinely contains different content from page one. Canonicalising every page to the first one hides the rest of the series from the index, which is rarely what anyone intends.
Do URL parameters need canonicals?
Usually yes. A URL carrying utm_source, a session ID or a sort order serves the same content as the clean URL, so it should canonicalise to the clean one. The exception is a parameter that genuinely changes the content, such as a filter that produces a materially different product list you actually want indexed.
Can two pages canonicalise to each other?
Not usefully. That is a canonical loop, and Google resolves it by ignoring both and choosing for itself. It happens most often when two near-identical pages each declare the other as preferred, usually because two people fixed the same duplicate problem in opposite directions.
How long does it take for a canonical change to take effect?
Google has to re-crawl both the page and its duplicates before it can act, so days for a frequently crawled site and weeks for a small one. Search Console's URL Inspection tool shows both your declared canonical and the one Google actually selected, which is the fastest way to tell whether a change has landed.
Other on-page SEO tools
Hreflang Validator
Validate hreflang tags for international SEO: self-referencing, return tags, x-default, language codes, and duplicate detection.
Use toolSchema & JSON-LD Validator
Validate structured data markup: required properties, date formats, nested entities, and JSON syntax. Supports all major schema types.
Use toolMeta Tag Checker
Check title tags, meta descriptions, Open Graph tags, Twitter cards, canonical URLs, robots directives, and viewport settings.
Use toolMeta Tags Generator
Write the title, description, and social share tags every page needs. Live character counts plus previews of how it will look in Google and on social.
Use toolKeyword Density Checker
See which words and phrases your copy actually leans on. Single word, two word and three word counts with density and first-mention position.
Use toolCheck canonicals across your entire site
Canonical bugs are systemic: a template writes the wrong tag and every page in a section inherits it. CrawlRaven audits the canonical on every page in one crawl, then ranks the problems by the traffic each page already earns.