Technical SEO

There seems to be a lot of confusion in the world of SEO today, especially in clients minds and with their technical teams, about when to use a 301 redirect and when to use the rel=canonical tag. My goal with today’s post is to explain the differences and talk through some of the nuances to help you think through which one pertains to your situation. Every situation is different, so take the time to read and figure out which is better for you.

Rel=Canonical Tag

The rel=canonical tag goes in the <head> section of your webpage. It can be used in any of the following ways:

  1. To refer back to itself to deal with duplicate content issues;
  2. To reference a page on another domain that is the original source of the content.

For example, if you have a website that can have comments (such as this one) and people may use comment permalinks (such as domain.com/article-title#comment=1), then you want to use the canonical tag to make sure all of the link equity is passed to the main URL (in this case, domain.com/article-title/) and not split between the main and the comment URL.

This graphic from SEOmoz illustrates it well:

Or, say you syndicate content amongst your websites. Maybe you’re a big media agency and different articles would benefit people on both domains, but you do not want them to be flipping back and forth between domains. This is a great case where a cross-domain canonical can be used to specify the original URL. If you do not use a canonical here, your rankings on both sites could suffer because of duplicate content.

If domain.com is the original source, then put a canonical tag on mydifferentdomain.com to point back. <link rel="canonical" href="http://www.domain.com/my-awesome-article" />

*Remember* The rel=canonical is a “suggestion” to the search engines. Google says:

This new option lets site owners suggest the version of a page that Google should treat as canonical. Google will take this into account, in conjunction with other signals, when determining which URL sets contain identical content, and calculating the most relevant of these pages to display in search results. source

They also said:

While the rel=”canonical” link element is seen as a hint and not an absolute directive, we do try to follow it where possible. source

301 Redirect

301 redirects are implemented when the move of content is permanent. This can occur when you:

  1. Move domains.
  2. Update content to a new URL on your same domain, which is a better optimized page.

When you move domains, for SEO or branding reasons, you want to redirect pages on the old domain to RELEVANT pages on the new domain. Do NOT redirect all pages on the old domain to the homepage of the new domain.

Redirecting "http://www.myolddomain.com/my-awesome-article" to "http://www.mynewdomain.com/awesome-article"

Secondarily, if you are updating content in an article on your same domain, and the article is going to be different enough from the old, I would recommend a 301 redirect. The reasons I say this are:

  1. You will confuse your users less by not having 2 articles that are close to the same on the same domain;
  2. In a post-Panda world, less is more. A cleaner site is safer; and
  3. You now have the chance to better optimize your new page.

To 301 or use a rel=canonical?

Dilemmas, dilemmas.

Some people would say to use a rel=canonical in the above case, and sometimes I am inclined to agree for the following reasons:
  1. Especially in WordPress, if you 301 redirect your old article, you lose any comments that were on the original; and
  2. If you 301 redirect, you lose the social share counts on your article. This social proof can mean a lot to users.
If you do not have the above 2 considerations, or do not care about them, use a 301 redirect. Otherwise you can use a rel=canonical to the new article. If you are looking for a great step-by-step for updating content without a 301 redirect, here are Joost’s wise words:

source


For Google’s official directives regarding rel=canonical, check out this page on their Webmaster Support area.

What edge cases have you come across where a 301 or rel=canonical was not straight forward? I’d love to discuss through these with people.