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
-
Multilang site: Auto redirect 301 or 302?
We need to establish if 301 or 302 response code is to be used for our auto redirects based on Accept-Language header. https://domain.com
International SEO | | fJ66doneOIdDpj
30x > https://domain.com/en
30x > https://domain.com/ru
30x > https://domain.com/de The site architecture is set up with proper inline HREFLANG.
We have read different opinions about this, Ahrefs says 302 is the correct one:
https://ahrefs.com/blog/301-vs-302-redirects/
302 redirect:
"You want to redirect users to the right version of the site for them (based on location/language)." You could argue that the root redirect is never permanent as it varies based on user language settings (302)
On the other hand, the lang specific redirects are permanent per language: IF Accept-Language header = en
https://domain.com > 301 > https://domain.com/en
IF Accept-Language header = ru
https://domain.com > 301 > https://domain.com/ru So each of these is 'permanent'. So which is the correct?0 -
Should Hreflang x-default be on every page of every country for an International company?
UPDATED 4/29/2019 4:33 PM I had made to many copy and pastes. Product pages are corrected Upon researching the hreflang x-default tag, I am getting some muddy results for implementation on an international company site older results say just homepage or the country selector but…. My Question/Direction going forward for the International Site I am working on: I believe I can to put x-default all the pages of every country and point it to the default language page for areas that are not covered with our current sites. Is this correct? From my internet reading, the x-default on every page is not truly necessary for Google but it will be valid implemented. My current site setup example:
International SEO | | gravymatt-se
https://www.bluewidgets.com Redirects to https://www.bluewidgets.com/us/en (functions as US/Global) Example Countries w/ code Site:- 4 countries/directories US/Global, France, Spain Would the code sample below be correct? https://www.bluewidgets.com/us/en/ (functions as US/Global) US/Global Country Homepage - https://www.bluewidgets.com/us/en/ US/Global Country Product Page(s) This would be for all products - https://www.bluewidgets.com/us/en/whizzer-5001/ http://www.bluewidgets.com/us/en (functions for France) France Country Homepage - https://www.bluewidgets.com/fr/fr/ France Country Product Page(s) This would be for all products- https://www.bluewidgets.com/es/es/whizzer-5001 http://www.bluewidgets.com/us/en (functions as Spain) Spain Country Homepage - https://www.bluewidgets.com/es/es/ Spain Country Product Page(s) This would be for all products - https://www.bluewidgets.com/es/es/whizzer-5001 Thanks for the spot check Gravy0 -
Is this setup of Hreflang xml sitemap correct?
Hi, I'm trying to setup hreflang for 2 domains. One is purely a US site and the other domain has the language-country as subdomains. For example: http://www.websiteUSA.com (Targets English - USA) https://www.websiteINT.com/en-CA (Targets English - Canada) https://www.websiteINT.com/fr-CA (Targets French - Canada) https://www.websiteINT/es (Targets Spanish) ..and so on and so forth for about 12 of these international URLs. I created an XML sitemap that looks something like this: <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>http://www.websiteUSA.com</loc></url></urlset> <url><loc>https://www.websiteINT.com/en-CA</loc></url> <url><loc>https://www.websiteINT.com/fr-CA</loc></url> Question 1: Is this correct? In my actual file, I have all the countries listed and self-referencing. Question 2: I'm hosting this file at https://www.websiteINT.com/hreflang.xml AND at http://www.websiteUSA.com/hreflang.xml. Is this correct? Question 3: Will this help the SERPs direct english speakers from the US to http://www.websiteUSA.com while show SERPs for say English Speakers in Canada to https://www.websiteINT.com/en-CA? Question 4: For some reason, when I put up the xml site, it only listed each URL once instead of the full XML file. Should I have uploaded a text file instead? It doesn't seem to render correctly. Thank you!
International SEO | | SylviaH0 -
Can multiple hreflang tags point to one URL? International SEO question
Moz, Hi Moz, Can multiple hreflang tags point to a single URL? For example, if I have a Canadian site (www.example.com/ca) that targets French and English speakers can I have the following: or would I use: Any insight would be very helpful and greatly appreciated! Thank you in advance!
International SEO | | DA20131 -
Geo Targeting & Geo Keywords
Kindly clarify the below scenario. I have set Geo Targeting for my Website to 'India' in Webmaster tools. So Google should give preference for the searches happening from India. Is there any preference given for the Geo keywords? Like 'SEO Services in India' or Web Design Companies India' while searching from USA. Thanks
International SEO | | FlavoursMedia0 -
What is the proper way to setup hreflang tags on my English and Spanish site?
I have a full English website at http://www.example.com and I have a Spanish version of the website at http://spanish.example.com but only about half of the English pages were translated and exist on the Spanish site. Should I just add a sitemap to both sites with hreflang tags that point to the correct version of the page? Is this a proper way to set this up? I was going to repeat this same process for all of the applicable URLs that exist on both versions of the website (English and Spanish). Is it okay to have hreflang="es" or do I need to have a country code attached as well? There are many Spanish speaking countries and I don't know if I need to list them all out. For example hreflang="es-bo" (Bolivia), hreflang="es-cl" (Chile), hreflang="es-co" (Columbia), etc... Sitemap example for English website URL:
International SEO | | peteboyd
<url><loc>http://www.example.com/</loc></url> Sitemap example for Spanish website URL:
<url><loc>http://spanish.example.com/</loc></url> Thanks in advance for your feedback and help!0 -
Is .in domain affecting international traffic inflow to my site?
My holiday website http://seekandhide.in/ was completed and went live in Feb 2012. Last month I got 83% traffic from India and 3-5% each from USA and UK. The rest is a mixed bag from other countries. This is largely the trend since the last 3-4 months. I want to attract more organic traffic from UK and rest of Europe. My SEO consultant says that with a .in domain that will be difficult. My website currently features unique holiday properties in India that typically attract European tourists so I don't think it is a product issue. But both website visits and sales enquiries remain primarily Indian even though total number of visitors have increased gradually over the last 6 months.. My queries are 1. Is it only the .in domain that's affecting inflow of international traffic? 2. Is there anything that I can do to offset it? 3. I own seekandhide.co.uk too. Is there something I can do with that site without building a whole different website there? If I shift completely to .co.uk, I will have the same issue of being geographically limited and end up losing Indian traffic. 4. Is there something else that is not ok on the site that I am missing? 5. Advice that I get from a lot of consultants is to buy seekandhideindia.com but I plan to add international properties in a couple of years so that name would limit my appeal. Thanks in advance! Sudha
International SEO | | Sudha_Mathew0 -
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