The canonical tag was introduced in 2009 by Google, Bing and Yahoo. It allows webmasters to tell search engines that similar URLs on a site are actually the same page. When used correctly, canonical tags help prevent any negative effects on SEO that can be associated with having such duplicate pages across multiple URLs.
The canonical tag is aimed at preventing issues with duplicate content on a site. It is an HTML element placed in the head section of a page that specifies a “canonical URL”, or preferred version of a page that appears across multiple URLs.
If a website contains multiple similar versions of the same content – a product page that appears under several categories for instance, you would choose one of these pages to be the “canonical” version, directing search engines to use this page when determining rankings.
Without a canonical tag in scenarios like this, search engines wouldn’t know which of the URLs to show.
By setting a canonical URL for every set of duplicate pages, the SEO of a website can be greatly improved. The search engines will count all links that point towards the varying URLs, as links to the single version that has been set as the canonical URL. It is very similar to setting a 301 redirect, however, no page redirect actually occurs.
To help explain how to correctly implement canonical URLs, let’s use this example:
You have an eCommerce site, which features a product page that appears on 2 separate URLs because it comes under more than one section on the site –
http://www.example.co.uk/football/black-leather-football-boots
http://www.example.co.uk/football/shoes/black-leather-football-boots
The content is exactly the same on both URLs, but duplicate pages exist due to the different methods of reaching the product.
The first step in the process of canonicalization is to choose which of the URLs will be set as your canonical version. This should be the version you feel is the most important. You may want to go by which URL has the most links to it, or highest traffic volume. You need to choose just one, however you choose it.
Next, you need to add a rel=canonical link to the canonical page from the non-canonical page. So, if you choose the first URL from the example to be the canonical version, you would link to it like so in the head section of the second URL example:
It’s as simple as that. This canonical will tell search engines that both of these pages are the same page, and to show the one you tagged as the canonical version in their search results. It acts as a soft redirect, without redirecting the user.
Most Content Management Systems have the ability built in to set canonical links, or have plugins available for setting canonical links easily. For example, the Yoast SEO WordPress plugin.
Some common scenarios requiring the use of canonical tags are:
A large site with multiple URLs for the same page content – this is especially common on eCommerce sites where URLs are generated depending on filters applied by the user e.g. colour, price, size etc.
URLs containing session IDs – every login automatically generates a new URL.
HTTPs, HTTP and www – non-www versions and www versions of a page for example, are considered as separate pages by search engines.
A mix of upper and lower case – search engines view different cases as different from each other, so if URLs exist in both forms, they will require canonicals.
Mobile site URL – if a separate URL exists for a mobile version of your site, this will require canonicalization.
Below we discuss some other examples of when you should be using canonicals on a website.
If you’re stuck with the choice of whether you should be using a 301 redirect or a canonical, consider the following. If there is no technical reason to not use a 301 redirect, then you should be looking to implement a redirect. If, however, using a redirect would cause problems to user experience or isn’t appropriate for some reason, then implement a canonical link.
You may have set a canonical link where a non-canonical page references a canonical version. But should you set a canonical link to reference itself on the canonical version of the page?
Some SEOs would argue that this isn’t needed, but Google have mentioned in the past that this is not a bad idea to do. This helps prevent other versions of a URL from being indexed and causing duplicate content issues.
It may be that you have your content duplicated across more than one domain. For example, articles that you have published on your own website may have been submitted as guest posts on other domains. This would lead to content being the same on more than one domain.
By using a canonical link on the domain that has re-published your original article, the credit is still given to the original article page, and all links pointing towards the non-canonical page will count towards your original.
Getting canonicalization wrong can cause big issues in terms of SEO and website performance. Here are some common problems to make sure you avoid with your canonical tags.
It has been seen where sites have set the canonical URL on every page to the homepage. This could result in none of the pages other than the homepage being crawled and indexed in search engines, seriously limiting the potential of the website.
Similarly, if the homepage of a site has a canonical URL pointing to a deeper page, this would completely remove the homepage from search results, losing traffic to what is generally the most important page of a site.
Where content has been split over multiple pages, you need to ensure canonical tags are used correctly. For example, your blog may be split into multiple archive pages i.e. page 1, page 2, page 3 and so on, each with say 10 article links on them.
If the canonical tag on page 2 is pointing to page 1, then search engines will not index any of the links to articles on page 2. The canonical tag on page 2 should point to page 2.
There should only ever be one canonical link on a page. If multiple canonical URLs are specified, then they will all be ignored. This can happen without you meaning to, due to improper use of an SEO plugin or incorrectly editing a theme or template.
Canonical links that are placed anywhere other than within the head tag will be ignored.
The implementation of canonical tags provides a useful method for SEOs to minimise issues faced with duplicate content on a site. However, it needs to be used correctly and effectively in order to reap the benefits. Used poorly and a site could end up worse off than it would have been without the canonicalization.
Hopefully this guide should help you understand whether you should be making use of canonical URLs, why you should be using them, and how to properly implement canonicals to improve your site’s performance in search engines.