A page with two conflicting canonical tags gets treated the same as a page with none: Google ignores both and picks on its own. Check any URL for the canonical tag it's actually sending, in the HTML and the HTTP header, and find loops, chains, and duplicates before they split your rankings.
Google reads multiple versions of the same content as a quality problem, whatever's actually causing it: URL parameters, session IDs, sorting options, or a staging environment that got indexed by accident. The rel="canonical" tag is the one mechanism that lets you tell Google directly which version is the master and where to consolidate everything else.
Get it wrong and three problems compound on top of each other. Google starts cycling unpredictably between which version it shows in results. Backlinks pointing at different versions of the same page never aggregate into one authoritative URL. And crawlers burn budget on near-identical pages instead of finding whatever new content you actually want indexed.
<head> or as an HTTP Link header, and a header-only declaration is perfectly valid to Google while being completely invisible to most manual checks and browser extensions. Both get checked here.Canonical errors range from trivially simple to structurally complex. Use this guide to diagnose the specific issue and apply the right fix, starting with the most critical.
Every indexable page should declare its own canonical URL. Add <link rel="canonical" href="https://yourdomain.com/page/"> with the full absolute URL, matching your preferred www/non-www format exactly. Leave it out and Google picks for you, frequently the wrong version.
This usually happens when a CMS plugin injects a canonical tag and a hardcoded template tag injects a second one independently. Google's stated behavior is to ignore both and decide on its own, so find the source of the duplicate, usually a plugin setting or a leftover hardcoded line, and remove it.
A canonical pointing at a dead page is worse than having none at all, since it actively misleads Google's consolidation logic. Restore the destination, or update the canonical to point at the best live replacement instead.
Page A points to B, B points back to A, and Google ends up ignoring both. Decide which one is the actual master, then update both tags to point there. The Redirect Checker can confirm neither page is also stuck in a redirect loop on top of this.
Something like href="/page/" technically works, but CDNs and syndicated content can misinterpret a relative path. Use the full href="https://yourdomain.com/page/" instead to remove any ambiguity.
This is a direct contradiction: the source says consolidate here, the destination says don't index me. Google typically ignores it entirely. Either remove the noindex if the destination should be indexed, or repoint the canonical to a page that actually is. The Noindex Checker confirms whether the destination is blocked before you decide which side to fix.
Checking canonicals one page at a time works fine until a site actually grows. Every new filter, sort option, or tracking parameter is another opportunity for competing versions to accumulate, often through entirely automated processes that no one approved or even noticed happening.
The errors that actually do damage are the quiet ones: a CMS upgrade that silently resets canonical settings sitewide, a new ecommerce filter generating thousands of parameter URLs with no canonical tag at all, a staging environment that got indexed with canonicals still pointing at itself instead of production. None of these throw an error. They just split authority across dozens of pages until someone happens to look.
Catching that requires watching how the canonical topology changes over time, not just checking it once.
href="/page/", but absolute URLs are safer since CDNs and syndicated content can misinterpret a relative path depending on context.Canonical errors don't announce themselves. They show up after a CMS update, a new plugin, or a staging environment that got indexed by mistake, and by the time you notice, authority's already split across pages that shouldn't be competing.
✓ 30-day Premium Trial · ✓ No credit card required · ✓ Full canonical monitoring access