Per-check failure index
Missing Canonical URL
Without a canonical, duplicate URL variants split your ranking signals across copies of the same page.
Audited
105
Failing
20
Passing
85
What this check looks for
A canonical tag tells Google which URL is the primary version when the same content lives at multiple URLs (with/without trailing slash, with/without query params, http/https, www/non-www). Missing it means link equity gets fragmented across copies. Add `<link rel="canonical" href="...">` pointing to the preferred version on every page.
Quick take
A canonical tag is one line in the HTML head. Skip it and Google has to guess which version of a URL to rank when the same page lives at 4 or 5 variants (with slash, without slash, with query params, http, https, www, non-www). The guess is right most of the time. The 15% of the time it's wrong is where you lose link equity to the wrong URL and the wrong page ends up ranking. That's preventable with one tag.
Why this matters
Canonicals tell Google which URL you consider the master copy when duplicate-ish content exists. Most sites have more duplicates than they think. Tracking parameters from ad campaigns (?utm_source=...) create infinite URL variants. Pagination (?page=2) does too. Without a canonical, Google sometimes treats /blog/post and /blog/post/?ref=twitter as separate pages competing for the same query. Backlinks split. Crawl budget gets wasted on duplicates. The fix is one self-referencing canonical on every page, plus an absolute URL canonical pointing to the preferred version on every variant.
How to fix it (3 steps)
-
1
Add a self-referencing canonical to every page
The simplest setup is the most reliable: every page points
<link rel="canonical" href="https://yourdomain.com/that-page">at itself. WordPress's Yoast plugin does this automatically. Webflow ships it on by default. Custom Rails apps need it added in the layout, with the URL helper that emits an absolute URL. -
2
Use absolute URLs, never relative
A canonical of
/aboutis ambiguous when the same content is reachable on http, https, www, and non-www. Always emit the fullhttps://yourdomain.com/aboutform. Pick one preferred protocol-and-host combination and 301-redirect the rest to it. -
3
Strip query params from the canonical, not the URL
When somebody lands on
/blog/post?utm_source=newsletter, the canonical should still point to/blog/post. UTM params are for analytics. They shouldn't fork the page into a separate URL in Google's index. Verify with Search Console's URL inspection tool — it tells you the canonical Google chose, which is what you actually need to debug.
Failing (20)
sorted by overall audit score (worst first)
Passing (85)
sorted by overall audit score (best first)
Other SEO checks in the gallery audit
- Missing Meta Description
- Missing or Weak Title Tag
- Slow Page Speed
- Not Mobile Friendly
- No HTTPS / Missing SSL
- Missing Open Graph Tags
- Missing or Misconfigured robots.txt
- Missing XML Sitemap
- Missing Structured Data
- No H1 or Multiple H1s
- Missing Image Alt Tags
See the full breakdown across every site on the SaaS SEO Scoreboard.
Audit your own site for this check
Free, no account, no credit card. Same 12-check engine that scored every site on this page.
Run a free audit