Broken Canonical Tags
Canonical tags are just one of those words that when you speak it, you sound very technical and can convince people that you know what you’re talking about. Canonicalisation is often a board room extraordinaire – underpinning this word is actually a very important function. When you declare a canonical tag on your site you are basically telling search engines “The content you see on this page is best found on this URL”, essentially like a master copy.
This tag needs to be correct, it has a very important job and search engines like Google will not hesitate to bypass your manual recommendation and find their own. As a rule of thumb most CMS/platforms do a good job of handling canonical tags, Magento can require some auditing sometimes but platforms like WordPress seem to have robust functionality.
A canonical tag is one of the very few tags you have as a direct conduit to search engines and when you leverage them correctly, it can provide clarity over your website structure and also help with indexing. If Google strays and overrides your suggestion, it can often be symptomatic of a badly structured site, improper use of this important tag or something else sinister on the site.
How do I identify canonical tag issues on my website?
I tend to find canonical tag issues in three ways. I will firstly run an SEO audit on the site using software such as Screaming Frog, ahrefs, SEMRush or maybe SiteBulb – all tools are proficient at finding these types of errors in the main and can often alert to anything negatively going on with this tag. The second port of call for me is to head on over to Google Search Console, within the coverage area > Excluded you can find a dedicated area for Canonical issues, head on in here to dissect the URLs to help with diagnosis.
The final point is visiting the site and looking at source code, I’d typically look for things like correct domain used, SSL and trailing slash policy is right. For example with the trailing slash, I’ll remove it or add it (depending on how it defaults) and see if the canonical tag renders automatically to the URL – or if it adds in the trailing slash as standard.
How do I fix canonical issues on my website?
Fixing these tags often requires going back to basics, understanding and confirming the content on a page is best served through which URL? Once you establish this it’s then a case of understanding how to implement the tag and the logic which matches the content. Almost every canonical tag issue I’ve worked on (where it isn’t a duplicated canonical tag issue), requires developer involvement. I’d say 9 out of 10 times those issues arise because the canonical tag is automatically generated based on what URL you are on, so it doesn’t matter if you visit a dynamic page, the canonical will be that dynamic page.
If Google is reporting significant canonical tags that are not correct, don’t just blindly follow Google’s recommendation, you need to do proper diagnostics on what is causing the issue. Due to the nature of this tag, I’d always recommend getting expert help – unless the site is low risk or a throwaway of course. I’d also spend some time in setting up a canonical policy for areas of the site which create URL parameters.
How do I prevent canonical tag errors from occuring?
My additional thoughts on broken canonical tags
- I always look for absolute URL links vs. relative ones when it comes to canonical tags.
- You can’t rule out HTML formatting when a canonical tag is broken on a page – sometimes you need to format the HTML so it is a validated canonical tag. This can often occur when you are working with a bespoke or hardcoded tag.
- Always ensure that if you hard code a canonical tag the CMS doesn’t provide one automatically.
- I typically always let the CMS provide the canonical tag and try to fix the logic at this level if anything goes wrong. Having to manually add a canonical tag dramatically increases the risk of getting it wrong.
- Ensure you are looking at the source code on the front end of the site, for example with WordPress and Yoast, the canonical tag is blank in the back end usually but when you publish a page it’ll deploy the permalink.
- Although it’s very rare, another way a canonical tag can be broken can be through duplication.