Best Practice for tagging Global Multilingual Web Sites

New way to mark multilingual content

directing global search traffic

© Doug Wheller

Google recently announced a new way to tag content on multilingual / multi-regional web sites using the hreflang attribute in a rel=”alternate” link tag. A classic example for this would be Spanish language content for the US, Mexico and Spain. Assuming each of these geographical regions would have a separate site we might have similar content on, and

Ideally, a Spanish speaking searcher in Spain would see search results only from while someone in Mexico should see results from In reality the SERPs will contain a mix of results from both if not all three sites. One way to show only one of these results in the results is the use of the canonical tag, so in our example we could define the version on to be the one and only version so this will be the only one of our Spanish-language sites showing up in the SERPs while simultaneously collecting all the link juice.

The drawback to that approach is that Spanish speaking searchers will be directed to the site intended for Spain, no matter where they are. To get us out of this dilemma Google has introduced the hreflang attribute in relation to the rel=”alternate” attribute for the link tag. The example page at hand could be tagged as follows:

<link rel="alternate" hreflang="es" href="" />
<link rel="alternate" hreflang="es-US" href="" />
<link rel="alternate" hreflang="es-MX" href="" />

This way searchers will see in the search results but will be redirected to the site that best matches their browser settings. As in this example all alternate regional versions are written in the same language and therefore are probably pretty identical in content, the canonical tag should be used additionally:

<link rel="canonical" href="" />

Use for Truly Global Brands

But what if you want to roll out your site globally to many markets? You might end up with sites for 80 countries in 100 regional variations. It surely is not a good idea to list 100 alternate URLs in the HTML or HTTP header (Yes, the alternate URLs can also be defined in the HTTP header for non-HTML content).

In such a case I’d build clusters of similar sites, such as Spanish language sites, French language sites, Russian language sites, etc. and have them link to each other within their language realm. Sites like Swiss or Belgian ones will have a different set of alternate links depending on which language area you are in plus the relevant other languages. The ideal tag set for the URL might be:

<link hreflang="fr-CH" href="" rel="alternate"/>
<link hreflang="it-CH" href="" rel="alternate"/>
<link hreflang="de-CH" href="" rel="alternate"/>
<link hreflang="de-AT" href="" rel="alternate"/>
<link hreflang="de" href="" rel="alternate"/>

This might then be combined with a canonical URL set to the last URL listed.

How you set up such a construct in your CMS is another matter.

What do you think? Is that useful? Feasible? Completely insane?

Leave a Reply

Required fields are marked *.