Canonical URL Checker
Analyze <link rel="canonical"> configuration from pasted HTML. Detects missing, conflicting, self-referencing, and malformed canonical tags. Flags protocol, www, and trailing-slash mismatches, plus cross-domain canonicals. Severity-classified recommendations, 100% in-browser.
How to Use This Tool
- Fetch the HTML of the page you want to audit. Open the live URL in a browser, right-click and choose View Page Source, then select-all and copy. You can also use
curlor your server logs. Paste the full HTML (or just the <head> section) into the HTML Source input. The tool runs 100% in your browser — nothing is uploaded. - Optionally paste the current page URL. If you add the live URL in the top input, the tool compares the canonical against it and reports self-reference, protocol, www, and trailing-slash mismatches. Leave it blank to just check that a canonical exists and is syntactically valid.
- Click Analyze (or press Ctrl/Cmd+Enter). The tool uses an attribute-order-agnostic regex that catches
<link rel="canonical" href="...">,<link href="..." rel="canonical">, single or double quotes, self-closing or not, and lists every canonical tag it finds. - Read the summary panel. Green means exactly one canonical is present. Red means the tag is missing or multiple tags conflict. The canonical URL is displayed below in monospace so you can spot typos at a glance.
- Scan the 8 check cards. Canonical Present, Single Canonical, Absolute URL, HTTPS Protocol, Trailing Slash Consistency, WWW Consistency, Self-Referencing, Cross-Domain. Pass (green tick), warn (yellow), fail (red), or N/A when the current URL is not provided.
- Switch to Compare mode for canonicalization checks. Paste HTML from two URLs that should canonical to the same target (e.g., a product page and its UTM-tagged variant). The tool extracts the canonical from each and confirms they match — critical for duplicate-content audits.
- Fix issues in order of severity. Critical issues (missing/multiple canonicals) break attribution and must be fixed first. Warnings (protocol, www, trailing slash) split ranking signals. Info items (self-reference, cross-domain) are acknowledgments rather than bugs. Copy the full report to share with your dev team.
About Canonical Tags & Duplicate Content
The <link rel="canonical"> element, introduced jointly by Google, Bing, and Yahoo in February 2009, is the standard mechanism for telling search engines which URL should be treated as the authoritative version of a page. It sits inside the <head> of the HTML and accepts a single absolute URL. When Google crawls a page with a canonical tag, it consolidates all ranking signals — backlinks, engagement metrics, click-through-rate, internal link equity — onto the canonical target and indexes that URL rather than the crawled one. In 2026, with site architectures more parameter-heavy than ever (filters, UTMs, personalization, A/B tests, session IDs), canonicals are no longer optional: they are the single most important on-page SEO element after the <title>.
Duplicate content is the problem canonicals solve. Every e-commerce platform, every WordPress install, every headless CMS creates duplicate URLs as a side effect: ?utm_source=google, ?sort=price_asc, ?sessionid=abc123, ?print=1, /product/shirt/ and /product/shirt (with and without trailing slash), http:// and https://, www. and bare-domain variants, uppercase and lowercase paths. Without canonicalization, Google sees each variant as a distinct page and distributes your ranking signals across all of them, so no single variant ranks as well as it could. With one consistent canonical across every variant, all signals consolidate and you compete on full strength.
Canonical vs noindex vs 301 redirect — these three tools solve overlapping problems but are not interchangeable. A 301 redirect is the strongest signal: it removes the old URL from the index and forwards both users and crawlers to the new URL. Use redirects when the old URL should no longer be accessible. Noindex keeps the URL accessible but removes it from the search index entirely — use it for thank-you pages, internal search results, or low-quality pages that should not rank. Canonical keeps the URL accessible and indexable in principle but tells Google your preferred version consolidates ranking signals. Use canonicals for parameterized URLs that must continue serving real content (a filtered product list, a UTM-tagged landing page, a print-friendly view). A common mistake is to combine canonical with noindex on the same page — these signals conflict, and Google may ignore both.
Cross-domain canonicals deserve special attention. A cross-domain canonical points from a page on domain A to a page on domain B, typically when content is syndicated. Medium publications, press-release distribution, and guest-posting agreements all rely on cross-domain canonicals to attribute the original content correctly. The republished version on Medium (or partner site) includes a canonical back to the originator's domain, so Google treats the originator as the source and does not dilute ranking signals across domains. The flip side: if you accidentally ship a canonical pointing off-domain — say, you copy a partner's HTML template and forget to update the canonical — you hand your ranking signals to their site. Our tool flags every cross-domain canonical as an info item so you can confirm intent.
Google's handling of canonicals has evolved. In 2024, Google clarified in its Search Central documentation that canonicals are a strong hint but not a directive — Google reserves the right to override your declared canonical if other signals conflict (internal linking patterns, sitemap entries, external backlinks, HTTP headers, page quality). In Google Search Console, the URL Inspection tool distinguishes between the user-declared canonical (what you shipped) and the Google-selected canonical (what Google actually chose). When these differ, fix the underlying conflict: the declared canonical target might be blocked by robots.txt, return a 404, be noindex, or have a conflicting canonical of its own (a chain). Consolidate signals and the user-declared and Google-selected canonicals will realign.
Common canonical bugs we see in client audits: (1) multiple canonicals on the same page, typically from an SEO plugin and theme both injecting tags; (2) relative canonicals like /page/ or page instead of absolute URLs; (3) canonicals pointing to the HTTP version from an HTTPS page; (4) trailing-slash inconsistency between canonical and live URL; (5) canonicals pointing to URLs that 301-redirect, creating a chain; (6) canonicals pointing to 404s or noindexed pages; (7) hreflang alternates that canonical to each other (each alternate must self-canonical); (8) parameterized URLs with no canonical at all, flooding the index with near-duplicates. Our tool catches categories 1-6 in one pass; our Redirect Chain Checker catches 5 and our Hreflang Tag Generator helps with 7.
At EmproIT, our Technical SEO team runs canonical audits as part of every technical-SEO engagement. We use crawl data (Screaming Frog, Sitebulb, custom tooling) to inventory every canonical across tens of thousands of URLs, compare declared vs Google-selected canonicals in Search Console, and ship CMS-level fixes that eliminate entire classes of duplication. For teams without an in-house SEO engineer, canonicalization audits are often the single highest-ROI piece of technical SEO we deliver: consolidating dozens of URL variants onto their canonical targets routinely recovers 15-40% of lost organic traffic within a quarter. Combine this tool with our Redirect Checker to catch canonical-to-redirect chains, our Meta Tag Generator to ship correct canonicals from scratch, and our Sitemap Generator to make sure sitemap URLs match canonical URLs exactly.
Frequently Asked Questions
What is a canonical tag?
A canonical tag is an HTML link element placed in the <head> of a page that tells search engines which URL is the preferred or canonical version when multiple URLs serve the same or very similar content. The syntax is <link rel="canonical" href="https://example.com/page/">. When Google crawls a page with a canonical tag, it treats the canonical URL as the version to index and rank, and it consolidates all ranking signals (backlinks, engagement metrics, content freshness) from duplicate URLs onto that canonical. Canonical tags are a hint, not a directive: Google can override your canonical if it strongly disagrees, but in practice Google honors canonicals the vast majority of the time.
Why do canonical tags prevent duplicate content?
Duplicate content is any time the same or near-identical content is reachable at multiple URLs on your site. Common culprits are URL parameters (?utm_source=, ?sort=price, ?sessionid=), HTTP vs HTTPS, www vs non-www, trailing slash vs no trailing slash, and uppercase vs lowercase paths. Without canonicals, Google sees each variant as a separate page and splits ranking signals across them, weakening every variant. With a canonical tag pointing all variants to one preferred URL, Google consolidates all signals onto that URL and indexes only that one. Canonicals do not block crawling or remove the variants from the site — they simply tell Google which version to show in search results. For hard deduplication, use 301 redirects instead.
What is a self-referencing canonical?
A self-referencing canonical is a canonical tag where the href matches the current page URL exactly. Every indexable page should have one. Example: on https://example.com/blog/post-slug/, the canonical should be <link rel="canonical" href="https://example.com/blog/post-slug/">. Self-referencing canonicals are Google's recommended default because they protect you from three scenarios: (1) scrapers who copy your page and forget to strip the canonical, which then tells Google the original is yours; (2) syndication partners who republish your content; (3) parameter-laden URL variants (UTMs, session IDs) that would otherwise be indexed as duplicates. Our checker flags pages without a self-referencing canonical as a warning.
Canonical tag vs 301 redirect — which should I use?
Use a 301 redirect when you want to permanently move users and crawlers from one URL to another — the old URL should no longer be accessible or indexed. Use a canonical when both URLs must remain accessible (for user filtering, parameterized variants, A/B tests, print pages, regional duplicates) but only one should be indexed. 301 redirects are the stronger signal and consolidate ranking signals more reliably than canonicals, so if you can redirect, redirect. Canonicals are for cases where redirecting would break the user experience: a product page with size or color filters where the filtered URL must load real content, or a syndication partner who cannot send a 301 back to your site.
Can I use a cross-domain canonical?
Yes. A cross-domain canonical points from a page on one domain to a page on another domain, typically used when content is syndicated. If you publish an article on your blog and also allow Medium, LinkedIn, or a partner site to republish it, configuring the republished version to canonical back to your original tells Google your version is the authoritative one. This is how Medium publications handle syndication, and how press releases canonical to the originator's site. Cross-domain canonicals transfer ranking signals and index attribution to the canonical target — so only use them when you really do want the other domain to rank instead of your own (e.g., you are the syndicating partner, not the originator). Our tool warns when a canonical points off-domain so you can verify the intent.
Can Google ignore my canonical tag?
Yes. Google treats canonical tags as a hint rather than a directive, and it may override your declared canonical if its own canonicalization signals disagree. Reasons Google ignores canonicals include: the canonical target returns a 4xx or 5xx error, the canonical target is blocked by robots.txt or noindex, the canonical target has substantially different content, the canonical tag is in the body instead of the head, there are multiple conflicting canonical tags, or the target URL is obviously wrong (a chain of canonicals, or pointing at a page that itself canonicals somewhere else). In Google Search Console, the URL Inspection tool shows 'User-declared canonical' vs 'Google-selected canonical' — if these differ, Google has overridden your choice. Fix the underlying signal conflict and Google usually aligns.
What happens if I have multiple canonical tags on one page?
Multiple canonical tags on a single page are one of the most common SEO bugs we see, usually caused by an SEO plugin (Yoast, Rank Math, All in One SEO) and the theme both injecting canonicals independently. When Google finds conflicting canonical tags, it ignores all of them and falls back to its own canonicalization heuristics, which may or may not pick the URL you wanted. The fix is to audit everything that could inject canonicals: SEO plugin, theme, page builder, CDN or edge-worker rules, and any manual <link> tag in the template. Keep exactly one canonical per page. Our checker flags multiple canonicals as a critical issue and lists all the URLs it found so you can trace the sources.
What are canonical tag best practices?
(1) Use absolute URLs including the protocol: https://example.com/page/, not /page/ or //example.com/page/. (2) Keep one canonical per page. (3) Make canonicals self-referencing on indexable pages. (4) Match the canonical to the URL you want in search results — same protocol (HTTPS), same host (www or bare), same trailing-slash convention. (5) Do not canonical to a URL that 301-redirects, returns a 4xx, or is noindexed. (6) Do not chain canonicals (page A canonicals to B, B canonicals to C). (7) Do not mix hreflang with conflicting canonicals — hreflang alternates should each self-canonical. (8) Test canonicals in Google Search Console URL Inspection to confirm Google respects them. (9) After site migrations, spot-check canonicals site-wide — they often break when CMS configs reset. Our tool catches most of these in one pass.