Moz Q&A is closed.
After more than 13 years, and tens of thousands of questions, Moz Q&A closed on 12th December 2024. Whilst we’re not completely removing the content - many posts will still be possible to view - we have locked both new posts and new replies. More details here.
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
-
"Duplicate without user-selected canonical” - impact to SERPs
Hello, we are facing some issues on our project and we would like to get some advice. Scenario
International SEO | | Alex_Pisa
We run several websites (www.brandName.com, www.brandName.be, www.brandName.ch, etc..) all in French language . All sites have nearly the same content & structure, only minor text (some headings and phone numbers due to different countries are different). There are many good quality pages, but again they are the same over all domains. Goal
We want local domains (be, ch, fr, etc.) to appear in SERPs and also comply with Google policy of local language variants and/or canonical links. Current solution
Currently we don’t use canonicals, instead we use rel="alternate" hreflang="x-default": <link rel="alternate" hreflang="fr-BE" href="https://www.brandName.be/" /> <link rel="alternate" hreflang="fr-CA" href="https://www.brandName.ca/" /> <link rel="alternate" hreflang="fr-CH" href="https://www.brandName.ch/" /> <link rel="alternate" hreflang="fr-FR" href="https://www.brandName.fr/" /> <link rel="alternate" hreflang="fr-LU" href="https://www.brandName.lu/" /> <link rel="alternate" hreflang="x-default" href="https://www.brandName.com/" /> Issue
After Googlebot crawled the websites we see lot of “Duplicate without user-selected canonical” in Coverage/Excluded report (Google Search Console) for most domains. When we inspect some of those URLs we can see Google has decided that canonical URL points to (example): User-declared canonical: None
Google-selected canonical: …same page, but on a different domain Strange is that even those URLs are on Google and can be found in SERPs. Obviously Google doesn’t know what to make of it. We noticed many websites in the same scenario use a self-referencing approach which is not really “kosher” - we are afraid if we use the same approach we can get penalized by Google. Question: What do you suggest to fix the “Duplicate without user-selected canonical” in our scenario? Any suggestions/ideas appreciated, thanks. Regards.0 -
GeoIP Redirects & hreflang
Hello, We believe we've had some issues with hreflang tags not remaining validated due to the implementation of geoIP redirects. Previously, if a user clicked a landing page on Google search that was not targeted for their territory, they would instantly be redirected to a sub path that targets their territory using geoIP redirects. We're planning to remove the initial geoIP redirects and have messaging that prompts the user to either stay on the page they've landed on, or be redirected to page that is right for their territory. However, if a user has selected to be redirected to a sub path that is targeted for their territory, they will have a cookie preference set for the IP location they've selected, and will continue to be redirected to their chosen sub path. My question is, will a crawler follow and trigger the geo preference cookie, which could potentially cause complexities in validating hreflang tags and ranking of content for the right market. Thanks.
International SEO | | SEONOW1230 -
Worldwide and Europe hreflang implementation.
Hi Moz ! We're having quite a discussion here and I'd like to have some inputs. Let me explain the situation and what we plan to do so far. One of our client has two separate markets : World and Europe. Both pages versions will be mostly the same, except for the fact that they will have their own products. So basically, we'd want to show only the European EN version to Europe and the standard EN version to the rest of the world, same goes for FR and ES. As far as IT, DE, CS and SK, they will only be present within the european version. Since we cannot target all Europe with a single hreflang tag, we might have to do it for every single european countries. Regarding this subject, SMX Munich recently had quite an interesting session about this topic with a confirmation coming from John Mueller saying that we can target a single URL more than once with different hreflang tags. You can read more here : http://www.rebelytics.com/multiple-hreflang-tags-one-url/ So having all this in mind, here's the implementation we plan to do : www.example.com/en/ Self canonical www.example.com/fr/ - hreflang = fr www.example.com/es/ - hreflang = es www.example.eu/it/ - hreflang = it www.example.eu/de/ - hreflang = de www.example.eu/cs/ - hreflang = cs www.example.eu/sk/ - hreflang = sk www.example.eu/fr/ - hreflang = be-fr www.example.eu/fr/ - hreflang = ch-fr www.example.eu/fr/ - hreflang = cz-fr www.example.eu/fr/ - hreflang = de-fr www.example.eu/fr/ - hreflang = es-fr www.example.eu/fr/ - hreflang = fr-fr www.example.eu/fr/ - hreflang = uk-fr www.example.eu/fr/ - hreflang = gr-fr www.example.eu/fr/ - hreflang = hr-fr etc… . This will be done for all european countries (FR, EN and ES). www.example.com/en/ - x-default Let me know what you guys think. Thanks!
International SEO | | Netleaf.ca0 -
International Site Merge
Hello, I've never had to deal with an international site before, let alone a site merge. These are two large sites, we've got a few smaller old sites that are currently redirecting to the main site (UK). We are looking at moving all the sites to the .com domain. We are also currently not using SSL (on the main pages, we are on the checkout). We also have a m.domain.com site. Are there any good guides on what needs to be done? My current strategy would be: Convert site to SSL. Mobile site and desktop site must be on the same domain. Start link building to the .com domain now (weaker link profile currently) What's the best way of handling the domains and languages? We're currently using a .tv site for the UK and .com for the US. I was thinking, and please correct me if i'm wrong, that we move the US site from domain.com to domain.com/us/ and the domain.tv to domain.com/en/ Would I then reference these by the following: What would we then do with the canonicals? Would they just reference their "local" version? Any advice or articles to read would really be appreciated.
International SEO | | ThomasHarvey0 -
International SEO Question: Using hreflang tags across two different TLDs.
Hi! My UK based company just recently made the decision to let the US market operate their ecommerce business independently. Initially, both markets were operating off the same domain using sub-directories (i.e: www.brandname.com/en-us/ , www.brandname.com/en-gb/ ) Now that the US team have broken away from the domain - they are now using www.brandnameUSA.com while the UK continues to use www.brandname.com/en-gb/. The content is similar across both domains - however, the new US website has been able to consolidate several product variations onto single product pages where the UK website is using individual product pages for each variation. We have placed a geo-filter on the main domain which is 301 redirecting North American traffic looking for www.brandname.com to www.brandnameUSA.com However, since the domain change has taken place, product pages from the original domain are now indexing alongside the new US websites product pages in US search results. The UK website wants to be the default destination for all international traffic. My question is - how do we correctly setup hrlang tags across two separate TLDs and how do we handle a situation where multiple product pages on the "default" domain have been consolidated into one product page on the new USA domain? This is how we are currently handling it: "en-us" href="https://www.BRANDNAMEUSA.com/All-Variations" /> href="https://www.BRANDNAMEUSA.com/All-Variations" />
International SEO | | alexcbrands0 -
Google does not index UK version of our site, and serves US version instead. Do I need to remove hreflanguage for US?
Webmaster tools indicates that only 25% of pages on our UK domain with GBP prices is indexed.
International SEO | | lcourse
We have another US domain with identical content but USD prices which is indexed fine. When I search in google for site:mydomain I see that most of my pages seem to appear, but then in the rich snippets google shows USD prices instead of the GBP prices which we publish on this page (USD price is not published on the page and I tested with an US proxy and US price is nowhere in the source code). Then I clicked on the result in google to see cached version of page and google shows me as cached version of the UK product page the US product page. I use the following hreflang code: rel="alternate" hreflang="en-US" href="https://www.domain.com/product" />
rel="alternate" hreflang="en-GB" href="https://www.domain.co.uk/product" /> canonical of UK page is correctly referring to UK page. Any ideas? Do I need to remove the hreflang for en-US to get the UK domain properly indexed in google?0 -
In the U.S., how can I stop the European version of my site from outranking the U.S. version?
I've got a site with two versions – a U.S. version and a European version. Users are directed to the appropriate version through a landing page that asks where they're located; both sites are on the same domain, except one is .com/us and the other is .com/eu. My issue is that for some keywords, the European version is outranking the U.S. version in Google's U.S. SERPs. Not only that, but when Google displays sitelinks in the U.S. SERPs, it's a combination of pages on the European site and the U.S. site. Does anyone know how I can stop the European site from outranking the U.S. site in the U.S.? Or how I can get Google to only display sitelinks for pages on the U.S. site in the U.S. SERPs? Thanks in advance for any light you can shed on this topic!
International SEO | | matt-145670 -
Targeting Different Countries... One Site or Separate?
I have a client who has 3 ecommerce sites. They are somewhat differentiated but for the most part sell the same stuff. Luckily 2 of them are quite authoritative, old and rank reasonably well. Most of the visitors and sales come from the US. He wants to start targeting Europe, Mexico and Canada. What are your suggestions for doing this? Are we better targeting on the main domains? Not really sure how to do that? Should we use a subdomain and a new store front for each geo? Should we use a .co.uk .co.mx and .co.ca each with a unique storefront? It looks like we are moving to a Magento platform so setting up multiple storefronts on a single database is not a big issue. Anyone have any experience with this?
International SEO | | BlinkWeb0