Correct Hreflang & Canonical Implementation for Multilingual Site
-
OK, 2 primary questions for a multilingual site. This specific site has 2 language so I'll use that for the examples.
1 - Self-Referencing Hreflang Tag Necessary?
The first is regarding the correct implementation of hreflang, and whether or not I should have a self-referencing hreflang tag.
In other words, if I am looking at the source code for http://www.example.com/es/ (our Spanish subfolder), I am uncertain whether the source code should contain the second line below:
Obviously the Spanish version should reference the English version, but does it need to reference itself? I have seen both versions implemented, with seemingly good results, but I want to know the best practice if it exists.
2 - Canonical of Current Language or Default Language?
The second questions is regarding which canonical to use on the secondary language pages. I am aware of the update to the Google Webmaster Guidelines recently that state not to use canonical, but they say not to do it because everyone was messing it up, not because it shouldn't be done.
So, in other words, if I am looking at the source code for http://www.example.com/es/ (our Spanish subfolder), which of the two following canonicals is correct?
- OR
For this question, you can assume that (A) the English version of the site is our default and (B) the content is identical.
Thanks guys, feel free to ask any qualifiers you think are relevant.
-
As a 2014 follow up to anyone reading this thread, Google later released a tag labeled "x-default" that should make the self-referencing canonical question moot.
Read more at http://googlewebmastercentral.blogspot.com/2013/04/x-default-hreflang-for-international-pages.html
-
Thanks John - as mentioned on Twitter I appreciate you sharing tested results. Haven't had time to test on my own sites and certainly don't want to be testing on a client's live production site.
I did notice that one of your posts (http://www.johnfdoherty.com/canonical-tag-delays-googlebot-web-vs-mobile-index/) does have the self-referencing hreflang but the Spanish version does not. Based on recreating your SERP screenshots myself, it looks like it's working fine.
Also, I think my opinion on the Au/En version where you're geotargeting with the same language is that is should be set up the way you indicated, so I'm glad to see more testing that has confirmed that.
Thanks for taking the time to answer - Thanks to Dave as well!
-
Thanks Mike.
Regarding your comment on canonicals - I agree that separate languages should be treated with different canonicals - I think John's response above has confirmed my hunch with testing, however.
Regarding hreflangs - I don't think there's any penalty either. The trouble is that Google, as many of us have experienced, often makes mistakes on code that should function fine. Google Authorship is a good example. So, just trying to work out the best practices for this before I make a client recommendation.
Regarding feedback outside Moz - @IanHowells weighed in on Twitter. His opinion was (A) self-referencing is not necessary and (B) canonicals should be for each language, not pointed to the default language.
-
Hey Kane -
Jumping in here because I told you I would. I've seen it work two different ways.
As you saw in my posts, I have the following configuration:
- Self-referencing canonicals (/es/ canonicalizes to /es/, regular canonicalizes to itself)
- HREFLANG point to each other as the alternate.
When you search "canonical delays with Googlebot" in google.es, the English ranks first and then the Spanish. Of course, with the Spanish search "etiquetta canonical retrasa con googlebot" the Spanish one ranks. This is, of course, a test with two different languages.
I've seen it work with two English-language URLs (Australia and English) where the following is what worked:
- Canonical referencing the primary (English)
- HREFLANG pointing to each other
The title/meta description of the /au/ version disappeared because of the canonical but the /au/ version ranked in google.com/au instead of the regular URL.
The self-referencing HREFLANG seems to not be necessary, but I've never had an issue using it. However, your mileage may vary.
BTW, all of this testing was done by my coworker Dave Sottimano, not me. But these were the findings.
-
I was so excited that I'd found something for you that I didn't read the first part of the article carefully enough. Here's what I think based on the principles of canonicals and hreflangs as I understand them:
Since canonicals are meant to reduce confusion and duplicates, what could you do that would support that goal? If I saw multiple different versions of a product page that were essentially identical (perhaps they had different filtering options or search terms but resolved to the same content), then consolidating them all would make perfect sense. If, however, I saw two pages that had the exact same meaning but were in different languages, I would consider them as separate--you wouldn't accidentally mistake one for the other.
As for hreflangs, the second article mentioned 4 versions of the content and listed all 4 hreflangs. The idea is that the search engine could discover all the versions of the content quickly and select the right one for the searcher's language and location. I can't imagine there being a penalty for listing every one, either.
Have you had any other feedback (from outside SEOmoz)?
-
Thanks for your response Mike.
Re: Canonicals:
The first Google blog post you linked to is applicable when some of the content is translated. For example, if your English Facebook profile showed up on the Spanish section of the site, but they only translated buttons, nav menus, etc.
"We’re trying to specifically improve the situation where the template is localized but the main content of a page remains duplicate/identical across language/country variants."
So, this isn't a perfect match for my situation, which is a 100% translated page, which changes the reasoning behind the proposed canonical solution in that post - so that question is still in the air for me.
Re: Self-Referential hreflang Tags:
The second article is definitely relevant and is the primary announcement of hreflang, but doesn't clearly indicate whether the self-referential hreflang tag for the page you're on is necessary. Now, I've seen it used both ways successfully, so my first question is somewhat moot. John Doherty's testing from January 2012 and the homepage of WPML.org each use a different method, but Google.com and Google.es seem to be able to sort out each domain correctly.
-
Google shared this post to define how to handle both issues: http://googlewebmastercentral.blogspot.com/2010/09/unifying-content-under-multilingual.html
The idea presented there is to pick the default language of the page--for most sites in the U.S. it would be English.
Then all the foreign language versions of the page should set their canonical to point to the page using the default language.
Finally, each page is to list the alternative languages with hreflang link tags.
An updated post says that ALL the languages should be listed: http://googlewebmastercentral.blogspot.com/2011/12/new-markup-for-multilingual-content.html
So I would set the canonicals to:
for all variants (in English or any other language)
and list all of the hreflang links on every page:
This would put you in compliance with Google's main post on the subject and their more recent update.
--Mike
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
Will hreflang with a language and region allow Google to show the page to all users of that language regardless of region?
I'm launching translations on a website with the first translation being Brazilian Portuguese. If I use the following hreflang: If a user is outside of Brazil and has their browser language set to just Portuguese (Not Portuguese (Brazil)) will Google still serve them the Portuguese version of my pages in search results?
International SEO | | Brando160 -
Hreflang link is always going to the homepage
Hey there fellow Mozzers, I'm currently performing some work for a webshop which is located at two different TLD's.
International SEO | | WesleySmits
example.com and example.nl. In the head of both websites the hreflang tags have been added to tell Search Engines which site is targeted at which country. That's good 🙂 However, the hreflang links are pointing to the homepages of both websites from every page on the websites. Isn't example.nl/blog/ not supposed to link the hreflang tag to example.com/blog/?0 -
Canonical and hreflang mess of international desktop and mobile site versions
Hello, I have an interesting case and I am lost in it. There are two versions of the site: desktop and mobile. And there are also international versions: English and Spanish. I'm stuck at implementation of canonical tags. Currently my setup has the following: English (default) desktop page has these: English Mobile page has these: Spanish Desktop version: Spanish Mobile version: But I somewhat feel that I messed the things... Could you guys point me to what I did wrong and explain how to set it right? Also, if you know URLs of blog posts or articles, where similar case is explained - share with me please.
International SEO | | poiseo0 -
Ranking in Different Countries - Ecommerce site
My client has a .com ecommere site with UK-based serves and he wants to target two other countries (both English speaking). By the looks of it, he wouldn't want to create separate local TLDs targeting each country, I therefore wanted to suggest adding subdomains / subfolders geo-targeted to each country that they want to target, however, I'm worried that this will cause duplicate content issues... What do you think would be the best solution? Any advice would be greatly appreciated! Thank you!
International SEO | | ramarketing0 -
How does Google Serve the correct language version?
Hi guys, I'm currently working on a multi lingual .eu website with 20 lanuages which has been live now for a month now. Its is a sub directory set up so the french language version would look something like www.example.eu/fr. The English language version defaults to the home page www.example.eu. When you search for the brand name on the local search engines the home page English version appears instead of the preferred language version for each Country. 90% of the external links so far link to the homepage so I'm guessing this is the reason why. We are still waiting for the development company to create sitemap for each language using the rel=”alternate” hreflang=”x” XML Sitemap Tool. I know Google look at a number of factors when deciding what results to give a user. Can anybody share their experience or advice here? Thanks Rob
International SEO | | daracreative0 -
Upper case or/and lower case in rel="alternate" hreflang
Hi Mozzers, I have a question about the rel="alternate" hreflang tag, with an example. When I use two subfolders for two different countries/languages, for instance www.domain.com/nl-nl/ and www.domain.com/nl-en/ (for the English version) and I want to use the rel="alternate" hreflang tag, do I need to follow the ISO standards concerning Uppercase country code and Lowercase language code (en-NL)? Or is it okay to use the Lowercase country and language code (en-nl), since we also use this in the URL of the Subfolder. What does Google prefer? Thanks in advance.
International SEO | | MartijnHoving820 -
Site Spider/ Crawler/ Scraper Software
Short of coding up your own web crawler - does anyone know/ have any experience with a good bit of software to run through all the pages on a single domain? (And potentially on linked domains 1 hop away...) This could be either server or desktop based. Useful capabilities would include: Scraping (x-path parameters) of clicks from homepage (site architecture) http headers Multi threading Use of proxies Robots.txt compliance option csv output Anything else you can think of... Perhaps an oppourtunity for an additional SEOmoz tool here since they do it already! Cheers! Note:
International SEO | | AlexThomas
I've had a look at: Nutch
http://nutch.apache.org/ Heritrix
https://webarchive.jira.com/wiki/display/Heritrix/Heritrix Scrapy
http://doc.scrapy.org/en/latest/intro/overview.html Mozenda (does scraping but doesn't appear extensible..) Any experience/ preferences with these or others?0 -
I have a site that has 65 different versions of itself.
I've just started managing a site that serves over 50 different countries and the entire web enterprise is being flagged for duplicate content because there is so much of it. What's the best approach to stop this duplicate content, yet serve all of the countries we need to?
International SEO | | Veracity0