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
-
Correct Hreflang & Canonical Tags for Multi-Regional Website English Language Only having URL Parameters
Dear friends, We have a multi-regional website in English language only having the country selector on the top of each page and it adds countrycode parameters on each url. Website is built in Magento 1.8 and having 1 store with multiple store views. There is no default store set in Magento as I discussed with developer. Content is same for all the countries and only currency is changed. In navigation there are urls without url parameters but when we change store from any page it add parameters in the url for same page hence there are total 7 URLs. 6 URLs for each page (with country parameters) and 1 master url (without parameters) and making content duplicity. We have implemented hreflang tags on each page with url parameters but for canonical we have implemented master page url as per navigation without url parameters Example on this page. I think this is correct for master page but we should use URL parameters in canonical tags for each counry url too and there should be only 1 canonical tag on each country page url. Currently all the country urls are having master page canoncial tag as per the example. Please correct me if I am wrong and **in this case what has to be done for master page? **as google is indexing the pages without parameters too. We are also using GEOIP redirection for each store with country IP detection and for rest of the countries which are not listed on the website we are redirecting to USA store. Earlier it was 301 but we changed it to 302. Hreflang tags are showing errors in SEMRush due to redirection but in GWT it's OK for some pages it's showing no return tags only. Should I use **x-default tags for hreflang and country selector only on home page like this or should I remove the redirection? **However some of the website like this using redirection but header check tool doesn't show the redirection for this and for our website it shows 302 redirection. Sorry for the long post but looking for your support, please.
International SEO | | spjain810 -
Redirect to 'default' or English (/en) version of site?
Hi Moz Community! I'm trying to work through a thorny internationalization issue with the 'default' and English versions of our site. We have an international set-up of: www.domain.com (in english) www.domain.com/en www.domain.com/en-gb www.domain.com/fr-fr www.domain.com/de-de and so on... All the canonicals and HREFLANGs are set up, except the English language version is giving me pause. If you visit www.domain.com, all of the internal links on that page (due to the current way our cms works) point to www.domain.com/en/ versions of the pages. Content is identical between the two versions. The canonical on, say, www.domain.com/en/products points to www.domain.com/products. Feels like we're pulling in two different directions with our internationalization signals. Links go one way, canonical goes another. Three options I can see: Remove the /en/ version of the site. 301 all the /en versions of pages to /. Update the hreflangs to point the EN language users to the / version. **Redirect the / version of the site to /en. **The reverse of the above. **Keep both the /en and the / versions, update the links on / version. **Make it so that visitors to the / version of the site follow links that don't take them to the /en site. It feels like the /en version of the site is redundant and potentially sending confusing signals to search engines (it's currently a bit of a toss-up as to which version of a page ranks). I'm leaning toward removing the /en version and redirecting to the / version. It would be a big step as currently - due to the internal linking - about 40% of our traffic goes through the /en path. Anything to be aware of? Any recommendations or advice would be much appreciated.
International SEO | | MaxSydenham0 -
How to best set up international XML site map?
Hi everyone, I've been searching about a problem, but haven't been able to find an answer. We would like to generate a XML site map for an international web shop. This shop has one domain for Dutch visitors (.nl) and another domain for visitors of other countries (Germany, France, Belgium etc.) (.com). The website on the 2 domains looks the same, has the same template and same pages, but as it is targeted to other countries, the pages are in different languages and the urls are also in different languages (see example below for a category bags). Example Netherlands:
International SEO | | DocdataCommerce
Dutch domain: www.client.nl
Example Dutch bags category page: www.client.nl/tassen Example France:
International domain: www.client.com
Example French bags category page: www.client.com/sacs When a visitor is on the Dutch domain (.nl) which shows the Dutch content, he can switch country to for example France in the country switch and then gets redirected to the other, international .com domain. Also the other way round. Now we want to generate a XML sitemap for these 2 domains. As it is the same site, but on 2 domains, development wants to make 1 sitemap, where we take the Dutch version with Dutch domain as basis and in the alternates we specify the other language versions on the other domain (see example below). <loc>http://www.client.nl/tassen</loc>
<xhtml:link<br>rel="alternate"
hreflang="fr"
href="http://www.client.com/sacs"
/></xhtml:link<br> Is this the best way to do this? Or would we need to make 2 site maps, as it are 2 domains?0 -
Can you target the same site with multiple country HREFlang entries?
Hi, I have a question regarding the country targeting aspect of HREFLANG. Can the same site be targeted with multiple country HREFlang entries? Example: A global company has an English South African site (geotargeted in webmaster tools to South Africa), with a hreflang entry targeted to "en-za", to signify English language and South Africa as the country. Could you add entries to the same site to target other English speaking South African countries? Entries would look something like this: (cd = Congo, a completely random example) etc... Since you can only geo-target a site to one country in WMT would this be a viable option? Thanks in advance for any help! Vince
International SEO | | SimonByrneIFS0 -
If I redirect based on IP will Google still crawl my international sites if I implement Hreflang
We are setting up several international sites. Ideally, we wouldn't set up any redirects, but if we have to (for merchandising reasons etc) I'd like to assess what the next best option would be. A secondary option could be that we implement the redirects based on IP. However, Google then wouldn't be able to access the content for all the international sites (we're setting up 6 in total) and would only index the .com site. I'm wondering whether the Hreflang annotations would still allow Google to find the International sites? If not, that's a lot of content we are not fully benefiting from. Another option could be that we treat the Googlebot user agent differently, but this would probably be considered as cloaking by the G-Man. If there are any other options, please let me know.
International SEO | | Ben.JD0 -
Best URL structure for Multinational/Multilingual websites
Hi I am wondering what the best URL format to use is when a website targets several countries, in several languages. (without owning the local domains, only a .com, and ideally to use sub-folders rather than sub-domains.) As an example, to target a hotel in Sweden (Google.se) are there any MUST-HAVE indicators in the URL to target the relevant countries? Such as hotelsite.com**/se/**hotel-name. Would this represent the language? Or is it the location of the product? To clarify a bit, I would like to target around 10 countries, with the product pages each having 2 languages (the local language + english). I'm considering using the following format: hotelsite.com/en/hotel-name (for english) and hotelsite.com/se/hotel-name (for swedish content of that same product) and then using rel=”alternate” hreflang=”se-SV” markup to target the /se/ page for Sweden (Google.se) and rel=”alternate” hreflang=”en” for UK? And to also geotarget those in Webmaster tools using those /se/ folders etc. Would this be sufficient? Or does there need to be an indicator of both the location, AND the language in the URLs? I mean would the URL's need to be hotelsite.com/se/hotel-name/se-SV (for swedish) or can it just be hotelsite.com/se/hotel-name? Any thoughts on best practice would be greatly appreciated.
International SEO | | pikka0 -
Which hreflang tag to use for .eu domain
Hi there, We're trying to solve a problem with one of our domains, we have a .eu CCTLD and we're trying to implement hreflang tags. On our US and UK sites, we use "en-us" and "en-gb", but it's not clear how to approach this european problem, as there is not a "en-eu" tag. The site is in English, but serves several European countries speaking different languages. What's the best hreflang code to use in this situation? Any help much appreciated, Thanks!
International SEO | | dennis.globalsign0 -
How can I see what my web site looks like from a different country?
I've tried a few proxy tools to try to see how my site looks from other global locations, but haven't found one that works very well yet -- or a list of reliable proxies around the world. I need to do this to test various geo-targetted ads and other optimizations. Can anyone make a recommendation? Thanks!
International SEO | | Dennis-529610