SEO

A Beginners Guide to Canonical Tags - Where and When to Use Them

Rel canonical beginners guide

Like any industry, the world of search engine optimization has a language and jargon all its own.

For those new to the business of SEO, particularly do-it-yourself webmasters, many of these terms and concepts can be somewhat confusing at first.

It takes time, and experience, to become well versed in the subtleties of SEO and on-page optimization.

There are fundamental technical SEO concepts and much more advanced concepts, such as understanding server configurations.

One of the more common areas of confusion for newly minted SEOs and inexperienced webmasters is the rel=canonical tag. This medium-level technical SEO concept primarily deals with duplicate content issues.

Canonical tags are an essential aspect of on-page optimization. They are one of the fundamental tools that webmasters can use to communicate directly with search engines and their bots.

But just what are rel=canonical tags, and when and where should you use them?

First, Google's Support on canonical tags is excellent. So, take a look at that as well.

With this article, I'm hoping to help you better understand the canonical tag and how it should be deployed on an active website from a more straightforward explanation.

Canonical Tags - The Basics

In brief, the rel=canonical tag is information included in the header of your HTML that communicates directly with search engine bots and explains how the individual page of content relates to the other pages within your website.

It sounds confusing, but it's not. Let's keep going.

The rel=canonical tag is inserted into the <head> section of your pages to tell search engines where the original, or primary page, is located and looks like this:

<link rel="canonical" href=“http://www.domain.com/topic-page/” />

Why would you need this for a standard page?

Let's say your website can render a non-www version; then, the canonical version tells search engines which page to index.

Look at these pages:

http://www.domain.com/topic-page/
http://domain.com/topic-page/
http://www.domain.com/topic-page/index.html
https://www.domain.com/topic-page/

All these pages are different, right? Wrong. They're all the same to Google. So we need to tell them which to use.

In other words, this simple tag tells search engines to look at the href link as the primary page for that page's content.

In this way, link juice does not get diluted, and the search engine bots will only index, and ultimately give link credit, to this specific page. Well, in theory, at least.

Hopefully, you're using WordPress or another CMS platform that will properly redirect www or non-www versions and address secure pages properly.

Why Worry About Duplicate Content?

Search engines do not like to see duplicated content in their SERPs (search engine results pages).

When someone goes to Google to look something up, the search engine naturally returns a diverse list of related but individual results.

When multiple pages with the same content are encountered, the search engine bots will evaluate them and choose the best version based on their algorithms.

Using the rel=canonical tag, you can instruct the search engine bots to concentrate the link value on a single primary page, thus giving it a better chance to gain ground in a given search result.

Canonical tags can be helpful in many different scenarios where duplicate content is integral to your website but possibly problematic from a search engine perspective.

Product Listings on E-commerce Sites

Let's assume that your website sells men's shoes. You may have several URLs that direct to a basic product, say a traditional wingtip, but with subtle variations - i.e., color, size, etc.

In this case, you will want the primary product page indexed by the search engines and the other pages to be ignored.

Let's look at a scenario:

http://www.domain.com/products/shoes/blue/
http://www.domain.com/products?type=shoes&color=blue

Using "rewrite" rules should be implemented in this scenario, but that is more of an advanced topic.

The solution? Yep, use the rel=canonical tag to clear things up for Google.

Blog Sites

If you are running a blog, you will have paginated content. What is this?

Pagination is the term used to refer to the "next" and "previous" pages of your blog content or 1, 2, 3...and so on.

In this case, using rel=canonical is typically not the solution.

Here, you want to use the rel=prev and rel=next tags unless you have a "view all" page.

This is a bit more advanced, and Ryan Huser wrote an excellent article on it here.

Update: the use of rel/next stopped having support by Google as of mid-2019.

Websites with Mobile Access

If your website has a mobile interface kept on a sub-domain, you will need to use rel=canonical tags to tell the search engines that it contains similar content to the primary site.

You should also include a rel=alt tag on the desktop version of your website that points back to the mobile interface.

In Summary

For novice webmasters and SEOs, the use of rel=canonical tags can be confusing at first, and it will take some time to become comfortable with them.

However, as Google and other search engines continue to return unique and valuable results for their online users, it will become increasingly important to learn how to communicate with the search engine bots and direct them to the content you want indexed and ranked.

This short article is simply an introduction to the use of rel=canonical tags but should set inexperienced webmasters on the road to a better understanding of their use and value.

Not sure how to start using rel=canonical or have a specific question? Feel free to reach out!

Dario Zadro, Author at Zadro Web

Dario Zadro

20+ years experience as a full-stack web developer. Owner of Zadro Web, where we provide web services such as web design, custom web development, SEO/UX, and fully-managed web hosting and cloud solutions.