How to Fix Canonical Tag Problems
What this means
A canonical tag is a line in a page's code that tells Google which address is the "real" one. It exists because the same page often loads at several addresses: with and without www, with tracking codes added, or under two categories in a shop.
The canonical says: "if you find copies of this page, this is the one to show". Usually a page's canonical points at itself, and that's correct.
A site audit flags canonicals that point somewhere unhelpful:
- At a broken page. The page you named as the real one returns an error.
- At a redirect. The real page has moved, so Google has to follow it.
- At a page with its own canonical, which points somewhere else again (a chain).
- In a loop, where two pages name each other.
Why it matters
Google treats the canonical as a strong hint. Point it at a broken page and Google can decide your working page shouldn't be shown at all. Chains and redirects send mixed signals, and Google may ignore your canonical and pick a version itself.
How to fix it
The rule is simple: every canonical should point straight at the final, working address of the page you want to rank.
- Open the page and find its canonical. In your browser, view the page source and search for "canonical".
- Check where it points. Open that address. Does it load, without redirecting?
- Change the canonical to the correct final address. For most pages, that's the page's own address.
Where to change it
- WordPress with Yoast or Rank Math: the "Canonical URL" field in the plugin's Advanced section. Leave it empty to let the plugin point the page at itself, which is right for most pages.
- Shopify: canonicals are set by your theme and are usually correct. Problems tend to come from theme edits or apps, so ask whoever made the change.
- Wix and Squarespace: canonicals are set for you. Wix lets you change one in a page's advanced SEO settings.
Common causes
- A page was moved, but other pages still name the old address as their canonical.
- A site moved from http to https, or from one domain to another, and canonicals still use the old address.
- Someone set canonicals by hand while copying pages, and didn't update them.
Checking your fix
View the page source again and check the canonical shows the right address. Search Console's URL Inspection tool also shows which canonical Google chose.
If you use Duality, tick the page in Site Audit and choose Verify my fixes to check it again straight away.