Don't use a canonical tag to tell Google which of your mistakes it should ignore. Fix the mistake.
That might sound deliberately provocative, but it is the argument behind this entire article. If you genuinely have multiple URLs pointing to the same content, your first question shouldn't be “Which canonical tag should I use?” It should be “Why do I have multiple URLs pointing to the same content?”
If your website has three URLs for the same article, you don't have an SEO problem. You have a website structure problem, a navigation problem or simply a site management problem. Before adding another piece of HTML to tell Google which URL you prefer, work out why those URLs exist in the first place.
There are legitimate situations where canonicalisation is useful, but we've somehow taken a tool designed to solve a specific problem and turned it into another item on the endless SEO checklist: every page must have a canonical tag.
So what is a canonical tag?
Canonical tags were introduced in 2009 by Google, Microsoft and Yahoo as a way of dealing with duplicate or substantially similar content available at multiple URLs.
A canonical tag lets a website owner tell a search engine which URL they consider to be the preferred version. If an article can legitimately be reached through several URLs, for example, the site can identify the URL it wants search engines to treat as canonical.
<link rel="canonical" href="https://example.com/my-article">
That is a perfectly sensible feature. But there is an important detail that often gets lost: a canonical is a hint, not a command. You are telling Google what you think the preferred URL is. Google can decide that you are wrong.
It is therefore not an SEO ranking button. Adding a canonical does not make otherwise identical content more valuable, nor does it magically improve the ranking of the chosen URL.
What about Joomla?
There is an interesting example of this in Joomla itself.
Joomla's core includes a System - SEF plugin with an option called Site Domain. When enabled, Joomla can add a link such as:
<link href="https://brian.teeman.net/joomla/1036-spend-a-day-without-a-mouse" rel="canonical">
You might reasonably look at it and think Joomla is telling Google that the URL of this page is the canonical URL for this page.
That's not really what the feature is for.
The important part of the Joomla setting is Site Domain. It is intended for a site that can be accessed through multiple domain names. Perhaps the same site is available through example.com, example.fr and example.de. In that situation, you might need to be able to tell search engines which domain is the preferred, or canonical, domain.
The URL generated by Joomla therefore isn't simply saying, "this page is the canonical version of itself". It is declaring the preferred domain for the site.
That is a much more useful distinction.
If your Joomla site is only available through one domain, there isn't suddenly a compelling SEO reason to enable the setting simply because somebody told you that every page should have a canonical tag, and you should ignore this field. If your site is genuinely accessible through several domains, however, explicitly declaring the preferred domain is a sensible thing to do.
In other words, Joomla's feature is actually a good example of the point I'm trying to make. The technology exists because there is a particular problem it is intended to solve. Understand the problem first, then decide whether you need the feature.
The problem with duplicate URLs
Consider why multiple URLs might exist.
A content management system can make it easy to create different routes to the same article. Menu structures, categories, extensions and legacy configurations can all contribute to a site where the same content is available in more than one place.
If those URLs exist because of the way you have designed and managed your website, then the sensible response is to look at the website rather than Google.
A piece of content can quite legitimately be relevant in several places. The same article might be linked from a news page, a landing page and a category page. That doesn't mean it needs three URLs. All three links can point to the same article URL.
Multiple links to content are not the same thing as multiple URLs for content.
Good information architecture should give content a clear home and a stable URL. Navigation can provide as many useful paths to that content as necessary without creating another version of the content every time it appears somewhere else.
If poor navigation or site structure has created duplicate URLs, a canonical tag is treating the symptom rather than the cause.
The WordPress effect
This is where I think WordPress deserves some of the blame.
WordPress has an enormous ecosystem of SEO plugins that have helped turn technical SEO into a collection of boxes to tick. Title? Done. Meta description? Done. Sitemap? Done. Canonical? Done. Green light? Congratulations, your website is apparently optimised.
The problem is that ticking a box isn't the same thing as solving a problem.
Canonical tags are particularly susceptible to this because they are invisible to the person visiting the website. The page looks fine, the plugin is happy and Google has been given another instruction. It can create the comforting impression that something important has been optimised when the underlying site architecture hasn't been fixed.
That's a bit like putting a label on a drawer saying “this is where the socks should go” instead of actually putting the socks in the right drawer.
When canonicalisation actually makes sense
This isn't an argument that canonical tags are useless. They solve a real problem and there are situations where multiple URLs are unavoidable or intentional.
Tracking parameters are a simple example. A newsletter link might add a utm_source parameter to an otherwise identical article URL. The parameter is useful for analytics but doesn't represent a different piece of content. Do you really think that Google is not clever enough to work out for itself which is the "real" url?
Ecommerce sites can have more complicated cases where filtering, sorting or product variations create different URLs for content that is substantially the same. There can also be legacy URLs, syndicated content and other technical circumstances where simply restructuring the navigation isn't going to make the additional URLs disappear.
Those are legitimate reasons to consider canonicalisation. The important point is that the multiple URLs can exist for a reason that cannot simply be solved by tidying up the site's navigation.
In other words, canonicalisation should be a response to a genuine technical requirement, not an automatic feature of every page.
Canonical isn't the same as redirect
It is also worth remembering that a canonical isn't a redirect.
A redirect says that a URL has moved and the visitor should go somewhere else. A canonical says that multiple URLs represent substantially similar content and that one of them is the preferred version.
If you have an old URL that should no longer exist, redirect it. If you have accidentally created duplicate routes to content, fix them. If the URLs genuinely need to coexist, canonicalisation may be appropriate.
Again, the technology should follow the problem.
And then there's the self-referencing canonical
This is where the SEO checklist gets particularly strange.
Your page is example.com/about, so you put this in the page:
<link rel="canonical" href="https://example.com/about">
You have now told Google that the page at example.com/about is the preferred version of the page at example.com/about.
There is nothing inherently wrong with doing this. A self-referencing canonical can be useful as an explicit signal, particularly on sites where URL variations are possible.
But if there is only one sensible URL for the page, it is worth asking what problem the tag is actually solving.
Usually, none.
Google already knows the URL. The canonical doesn't make the content better, faster or more authoritative. It simply confirms what is already obvious.
Yet the advice that every page must have a self-referencing canonical has become so widespread that questioning it can sound almost heretical.
That is what happens when a useful technical option becomes an unquestioned requirement.
So are canonical tags a myth?
No.
Canonical tags are real, can be useful and sometimes important. What is questionable is the idea that they should automatically be present on every page simply because SEO best practice says they should be.
If you have multiple URLs pointing to the same content, don't start by asking which one should be canonical.
Ask why you have multiple URLs pointing to the same content.
If the answer is poor navigation, duplicated menu structures, bad information architecture or careless site management, fix the website. Give the content one proper URL and link to it wherever it is relevant.
If the multiple URLs exist for reasons you genuinely cannot or should not eliminate, then use the tools available to you, including canonicalisation, to explain the relationship to search engines.
That's a much more useful way of thinking about SEO than blindly following a checklist.
Canonical tags aren't the enemy. The problem is treating them as a substitute for building and managing a properly structured website.
Don't use a canonical tag to tell Google which of your mistakes it should ignore. Fix the mistake.
Sometimes the best SEO optimisation isn't adding another line of HTML.
Sometimes it's simply building a better website.



Congratulations, you discovered a hidden secret!