Canonical Tag Checker
Paste a public URL and see the whole canonical picture: the declared tag, its target status, any hidden noindex or second canonical, redirects, and the http/https/www/slash variants.
A canonical checker audits the canonical as it is live on a public URL right now, not the tag a plugin claims to set. Most canonical bugs are not the tag itself, they are what the tag points at, so we look wider. Paste a URL and we read the declared canonical, confirm whether that target answers with a clean 200, catch a noindex or a second canonical hiding on the destination, trace how the entered URL redirects, and walk the usual http, https, www and trailing-slash variants to confirm they all funnel to one page. We score the result and list the fixes worth doing first, which is exactly what you want the morning after a migration or a permalink edit. Everything runs in your browser, so nothing you paste is uploaded.
Queries run through the PeopleAreGeek lookup service. We log nothing.
Canonical URL and variant audit
A canonical checker confirms which URL search engines should treat as the original, and that is what this tool settles. Most canonical bugs are not the tag itself, they are what the tag points at, so we look wider. We check whether your URL declares a canonical that makes sense, whether that target answers with a clean 200, whether it quietly carries a noindex or a second canonical you forgot, how the URL you typed redirects, and whether the usual http, https, www and trailing-slash variants all land on one page. Paste a public URL and you see the whole picture in one pass. Everything runs in your browser, so nothing you paste is uploaded.
A canonical is a hint. Not a command. Google gets the final say, always. Read it next to the response status, the redirects, your robots signals and what the sitemap actually lists before you trust a word of it.
What a canonical checker should settle first
A canonical checker answers one question. When several URLs reach the same content, which one counts? Sounds simple. It isn't, because that question keeps ambushing you: after an HTTPS migration, the day someone touches WordPress permalinks, the first time a campaign link bolts on a ?utm tag. Category templates. Paginated archives. Honestly, anywhere a theme or plugin quietly shoves metadata into the head while you're looking elsewhere.
Reading the tag text won't save you, though. I want to see the page declares something, sure. But is the URL it names even alive, is it hiding behind a noindex, does it turn around and canonicalise somewhere else entirely, do the http/www/slash variants all funnel to one place. That gap (a tag exists versus the setup being trustworthy) is where I've lost most of my afternoons.
Self-canonical and cross-canonical are different decisions
Anything I actually want ranking (a real article, a tool page) gets a self-canonical by default. The preferred URL points at itself and there's nothing left to second-guess. Cross-canonical has its place too. A throwaway campaign page folding into the evergreen article it copied, say. Cross-canonical isn't the problem, though. Forgetting you set one is the problem. Aiming it at a URL that 301s or carries a noindex. Or, and this is the one I've personally done, copy-pasting a template and quietly bleeding ranking signals into some page you never meant to feed. Took me ages to spot.
Redirects and variants matter around canonical tags
People forget this part. A canonical tag is not a stand-in for clean routing. If your http, https, www, non-www and trailing-slash versions are still bouncing through redirects nobody's looked at since 2019, the tag is just papering over a mess you should be fixing instead. I want the preferred URL obvious from every angle. Your internal links use it. The sitemap lists it. Every redirect lands on it. And, sure, the canonical names it too. Maybe I'm fussy, but when they all line up the guesswork mostly evaporates.
A practical canonical workflow
- Start with the exact URL something flagged. Search Console, analytics, an internal link, whatever dragged you here.
- Read the declared canonical and trace the response path before you call it fine. Don't just assume.
- Follow the canonical target. Does it answer? Is it noindexed? Has it got a canonical of its own?
- After any migration or permalink edit, walk the host/protocol/slash variants. That's where the gremlins like to hide.
- Then line up your internal links and sitemap with the URL you actually want indexed. Plumbing first, tag last.
Frequently asked questions
Is a canonical tag a redirect?
Nope. And mixing them up causes real headaches. A redirect physically moves the request, so the browser actually ends up somewhere else. A canonical just whispers a suggestion to search engines about which URL deserves the credit when the same content lives at a few addresses. Your visitor does not budge. Only the indexing math shifts under the hood.
Can a canonical point to a different page?
Sure, if the pages are genuine duplicates or near-twins and you did it on purpose. Perfectly legitimate. What you should not do is aim a canonical at some unrelated, beefier page hoping the link juice rubs off. Google has gotten pretty good at ignoring that move. Best case, you have just told it to forget the page you actually wanted ranked. Which, you know, defeats the point.
Does a canonical guarantee indexing?
No. And treating it like one will burn you eventually. Think of it as a single vote in a much bigger election. Can the page even be crawled, is the content worth keeping around, do internal links point at it, what do your robots rules say, is it sitting in the sitemap. Then the search engine makes its own call. A clean canonical helps your odds. It does not force anybody hand.
What happens if my canonical points to the wrong URL?
This is the one that really bites. Search engines tend to take you at your word, so name the wrong URL and they might quietly drop the good page in favour of it. Now perfectly fine content has slipped out of the index and you have got no obvious reason why. So before you trust a canonical, confirm it lands on a live, indexable, 200-status page. That is exactly what this tool checks for you.