How to use rel=”alternate” hreflang=”x”

As a blog owner I like to keep track of all the useful tools Google gives us to work around common problems such as duplicate content and authorship, for each of these problems there has been a relatively simple solution by using rel= attributes. You may be familiar with a number these such as rel=”canonical”, […]

As a blog owner I like to keep track of all the useful tools Google gives us to work around common problems such as duplicate content and authorship, for each of these problems there has been a relatively simple solution by using rel= attributes. You may be familiar with a number these such as rel=”canonical”, rel=”author” and rel=”nofollow”. However one managed to slip by with out causing too much fuss and is still relatively unknown today so today I’m going to look at  how to use rel=”alternate” hreflang=”x” mark up.

Firstly this will benefit anyone catering to an international audience with multiple of the same pages translated into different languages or regions. So if a website had a domain called www.example.com and another separate page for people speaking a different language called es.example.com you could use rel=”alternate” hreflang=”es” href=”es.www.example.com” to inform Google that this page should be produced for anyone speaking this language (see the example below). As this markup is done on a page basis you will need to implement this on each of your alternate language pages.

Why does all this matter? Well as Google algorithm has grown it has clamped down on things such as duplicate content. As the rel=”alternate” hreflang=”x” is applicable for both translated pages and regional variations (for example displaying different pages for people visiting from the UK & the US due to different currencies will help to improve conversions) this markup will inform Google that the pages using the markup are alternate versions of the same pages therefore avoiding any duplicate content issues between the webpage, this is particularly useful for e commerce websites.

Example

For this example we will be using be using www.example.com, this website has the following pages all displaying the same content:
www.example.com/ – is the version for users in USA, in English
en-GB.example.com/ – is the version for users in England, in English
en-CA.example.com/ – is the version for users in Canada, in English
es.example.com/ – is the version for users in Spain, in Spanish
For each of these pages the markup would be as followed:

<link rel=”alternate” hreflang=”en” href=”http://www.example.com/” />
<link rel=”alternate” hreflang=”en-GB” href=”http://es-gb.example.com/” />
<link rel=”alternate” hreflang=”en-CA” href=”http://en-ca.example.com/” />
<link rel=”alternate” hreflang=”es” href=”http://es.example.com/” />

(There are 3 ways to successfully implement the rel=”alternate” markup, as a html link element displayed above, as a HTTP header or in the sitemap as shown here: http://support.google.com/webmasters/bin/answer.py?hl=en&answer=189077)

You can see in the hreflang= you can specify a regional subtag, this encourages Google to assume you want that page to target that specific region.

Other Benefits?

There are authorities in the world of SEO (I have not tested this myself) who state that using rel=”alternate” hreflang=”x” mark up will also pool all the links from each of the pages using it. Using the example above if www.example.com had 2 links and en-GB.example.com/ had 1 link then the total links for www.example.com would be 3 links. If this is true or if anyone knows more about this I would love to hear from you, leave a comment on our Google + page.

Leave a Comment

Your email address will never be published or shared. Required fields are marked with an asterisk (*).

Like to find out more?

We'd be delighted to talk to you about how we can assist you with your online marketing, search engine optimisation, local search, and Google penalty recovery.

Contact us