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.
Traffic drop after hreflang tags added
-
We operate one company with two websites each serving a different location, one targeting EU customers and the other targeting US customers.
thespacecollective.com (EU customers)
thespacecollective.com/us/ (US customers)
We have always had canonical tags in place, but we added the following hreflang tags two weeks ago (apparently this is best practice);
EU site (thespacecollective.com)
US site (thespacecollective.com/us/)
Literally the same day we added the above hreflang tags our traffic dropped off a cliff (we have lost around 70-80% on the EU site, and after a minor recovery, 50% on the US site). Now, my first instinct is to remove the tags entirely and go back to just using canonical, but if this is truly best practice, that could do more damage than good.
This is the only change that has been made in recent weeks regarding SEO. Is there something obvious that I am missing because it looks correct to me?
-
Thank you! Hopefully this resolves my issue
-
Yes, that looks correct now. And in your specific case, x-default might indeed handle the rest since Europe is your default, and that's where the unspecified combinations are most likely to be for you.
I wouldn't be too concerned about site speed. These are just links. They don't load any resources or execute any scripts. For most intents, it's similar to text. The main difference is that they will be links that may be followed by the bots. But really, even though you'll have many lines, you only really have two actual links among them. So, I wouldn't be too concerned about this part.
Good luck.
-
I think I understand, this is going to generate a lot of tags - this could be a problem for website speed.
UK/EU Site:
USA Site:
I'll see how the above goes, I can always add an English version as you suggest, but I think I have targetted the main languages here and hopefully the x-default will resolve the rest.
-
Moon boots. It looks like you decided to target by language, rather than by country-language combinations. And that is acceptible. It has a few issues, for example if you target by FR you are going to send both France and Candaian French speakers to your Europe site (and I don't think you are wanting to do this). On the other hand, if you were instead thinking that you were specifying the country code, no, the code you pasted here does not do that. Per the spec on hreflang, you can specify a language code without a country code, but you cannot specify a country code without a language code. All of the hreflang values you used will be interpreted as language, not country. So, for example, CA will be interpreted as Catalan, not Canada.
Again, I know it's a giant pain to handle all the EU countries. All of us wish Google made it feasible to target Europe as an entity, or at least target y country even. But it's just not the case. Yet. So, the way we do this is generally with application code. Ideally, in your case, I would suggest for that code to generate, for each country, one entry for English in that country (like "en-DE"), and another entry for the most common language in the country (like "de-DE"). That will generate many entries. But it's the only way I know of to effectively target Europe with an English language site.
-
Okay, I think I have it down correctly now:
UK/EU Site:
USA Site:
How does that look?
Yes, I was just using my home page as an example. Each page references its own URL, as opposed to every page referencing the home page URL - but thank you for pointing that out as it could have been easily overlooked!
-
moon-boots. Pretty close now. You should add the x-default to each site too, and they should be identical (whichever one of your sites you want to present for any locales you've omitted).
But also, realize that "en-it" is a pretty fringe locale. Google woudl only propose this to a search visitor from Italy who happened to have preferences set for English in their browser. While there are plenty of people in ITaly who do speak English, there are far fewer who set their browser to "en".
I have the same issue in Europe. Germany is one of our largest markets. I initially targeted, like you've done, just English in each country. We previously (a year ago) had a German-language site, and that one we targeted to "de-de". When we stopped maintaining the German-language site, we changed our hreflang tag to "en-de". We quickly found that all of our rankings dropped off a cliff in Germany. I would recommend, at least for your largest addressable markets, to also include hreflang tags for the primary languages. Thsi is another thing whcih Google hasn't yet made easy. They allow to target by language without country, but not by country without language. At least in hreflang (which was really developed for language targeting). GSC (the legacy version) had country-level targeting there.
Lastly, you included URLs for your home page here. But I'm assuming you realize you need to make the tags page-specific, on every page. If you put these tags as-is on every page, then you would be sending a signal to google equivalent to pointing every one of your site pages to a canonical of your home page (and effectively de-indexing the remainder of your site's pages). I'm assuming you're just using home page as an example in your posts. But if not, then yes, you will need to do page-specific tags for each page (and the self-referencing ones need to match your canonical tag for the page).
-
This is just getting overly complicated, Google need a more elegant solution.
I will try to add each of the EU countries to the EU site and ROW to the USA site. Is this how it should look?
UK/EU Site:
USA Site:
-
So, that's exactly why I wrote that you should include all the EU countries as specified locales, pointing to the EU site. Only everything "unspecified" goes to x-default. Alternatively, you could point AU, CA, NZ to the US site, and make x-default point to your EU site. I don't think that is as good of an approach though. Like I said, everyone who has a EU site has this issue. It's a pain that EU isn't a valid "locale" for hreflang. Maybe something will eventually be in place to handle better. In the interim, we can add hreflang for all the EU countries (or just prioritize the markets you really serve).
-
No, that's not a correct x-default implementation. It should point to the same URL on both sites. Wherever the non-specified locales should go (pick one).
The issue here is that Canada, Australia, New Zealand, etc. are redirected to the US site, while EU countries are redirected to the UK site. If I select one of the two, then won't all countries listed above be directed to the UK site?
-
No, that's not a correct x-default implementation. It should point to the same URL on both sites. Wherever the non-specified locales should go (pick one).
As far as reciprocal, Google checks that they are "reciprocal" in that each locale which is pointed to has hreflang tags which point back to the other site for its locale. There is no point in having hreflang tags only on one site.
And, you definitely shouldn't specify just "EN" because that would include the US too.
-
I have now added x-default to both sites, this is how they look:
The Space Collective UK/EU
The Space Collective USA
Does this look correct?
On the EU tags, there's not a "penalty". There's just no "Europe" locale. Since you need to specify valid locales, the only way I know of to scope "Europe" is to include all the locales (or at least the most popular ones. I generally add the primary language for each country, a few languages for countries such as Belgium, and sometime I add en-[country] for all of them if my EU site is in English only.
Also on the EU tags, you should not remove the EU tags and only tag the US site. Tags will all be ignored unless they are reciprocal.
I'm sorry, I don't completely understand what you mean here.
What are your thoughts on simply changing the UK/EU site from "gb-en" to "en"?
I will look at either finding a way to exclude Googlebot from my redirect or offering a popup to customers on which site they prefer to visit. Thank you for the advice here.
-
So, a few things in here to respond to:
On x-default, ideally you want this on both "sites", but it would be the same value. Meaning, you are telling Google that if a search visitor is in the US, serve the US page as a result, if the visitor is in the UK, serve the UK page as a result, and if that visitor is in any other location (one you don't have tags for) then serve the page linked in the x-default tag. So, on both sites, it would have the same value. Wherever you want to send the traffic from any country/language not specified in your hreflang tags.
On the EU tags, there's not a "penalty". There's just no "Europe" locale. Since you need to specify valid locales, the only way I know of to scope "Europe" is to include all the locales (or at least the most popular ones. I generally add the primary language for each country, a few languages for countries such as Belgium, and sometime I add en-[country] for all of them if my EU site is in English only.
Also on the EU tags, you should not remove the EU tags and only tag the US site. Tags will all be ignored unless they are reciprocal.
Lastly, on the redirect. There are several approaches. But if the Google bot tries to index your UK site from a server in the US, and gets auto-redirected, that's not a good thing. One approach is to make the auto-redirect "soft", meaning instead of automatically redirecting, present a dialog asking the visitor whether they want to visit the page they requested, or to instead be redirected to the one suggested for their geographic location. This is also a better user experience for several scenarios like when employees may be using a corporate VPN which is located in another country (like their international headquarters for example), or for when people live near country borders. Yes, you want to treat Google the same way as a person, which is why the "soft" redirect approach has become somewhat of a standard. There are other approaches, like having an international "splash" page, and also yet more approaches. I tend to favor the dialog approach.
-
Thank you for the response.
My system only allows me to add x-default to the US site, but I can code it into both if need be, is this necessary for both?
If Google penalises you for using GB then perhaps I should just use a generic EN? I think to try and add the other EU lang tags without an actual translate option could cause annoy Google, but if I do, it would look like this, correct?
Or would I write en-DE, en-IT, etc?
As for the redirect, I use an external service to do this automatically, and I thought it was best practice to treat Google exactly the same as you treat a customer?
-
While your tags above looks correct, I would also recommend to add "x-default" hreflang tags. This lets the search engines know which version of the page to include in results for search traffic outside of the ones specifically listed.
Related to this, I notice you referred to one of the sites as "Europe", but you only included an en-GB tag. Unfortunately, the specification for hreflang doesn't accommodate "Europe" (I wish it did). So, most of the time I generate hreflang tags for all the most common language/country combinations in Europe, all pointing to the one "Europe" page, when I'm dealing with sites which have a single site for all of Europe. This approach isn't pretty, but I haven't yet found a better one. Perhaps this might explain some of your drop, if now you are only targeting UK and US, whereas before you might have reached other parts of Europe and the world in general.
I would try adding x-default and the other European country/language combinations before just dropping the idea of hreflang tags.
Also, you may want to make sure both of these sites are accessible without redirection from all locations. Search engine bots may arrive from servers anywhere, so you want to make sure you don't auto-redirect them based on geo-ip.
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
-
How do you optimise a website for European traffic?
I have a design portfolio website here https://www.nicholsoncreative.com/ which uses a .com but is currently configured through the Search Console to appear in results for Google.co.uk. I am going to be restructuring the website and optimisation and I want to bring in more traffic/enquiries/business from around Europe. As there's no Google.eu, and as Google also serves results based on the searchers geographic location it would seem difficult to structure and optimise content so that results can be found across all of Europe. I assume simply switching to a .eu domain extension for my own website wouldn't solve the problem? I also assume that creating content in different languages would be a logical (if time consuming) option? Are there any other tried and trusted techniques that can be used to target traffic throughout Europe? I'd appreciate any advice.
International SEO | | JCN-SBWD0 -
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 -
Hreflang tags and canonical tags - might be causing indexing and duplicate content issues
Hi, Let's say I have a site located at https://www.example.com, and also have subdirectories setup for different languages. For example: https://www.example.com/es_ES/ https://www.example.com/fr_FR/ https://www.example.com/it_IT/ My Spanish version currently has the following hreflang tags and canonical tag implemented: My robots.txt file is blocking all of my language subdirectories. For example: User-agent:* Disallow: /es_ES/ Disallow: /fr_FR/ Disallow: /it_IT/ This setup doesn't seem right. I don't think I should be blocking the language-specific subdirectories via robots.txt What are your thoughts? Does my hreflang tag and canonical tag implementation look correct to you? Should I be doing this differently? I would greatly appreciate your feedback and/or suggestions.
International SEO | | Avid_Demand0 -
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 -
Hreflang Alternate & Pagination
Hi everybody, So I'm setting up hreflang tags on an ecommerce site. The sites are in the USA and Canada. The Canadian site will have fewer products than the American site, meaning that there won't be as many pages in each category as there are on the American site. What is the correct way to handle hreflang tags on these extra category pages? To put this another way, the American site may have a category with 3 pages of products, while the Canadian equivalent only has 2 pages of products. What happens to this extra American category page (example.com/widget-category/page-3) ? Does it get an hreflang tag linking to the first page of the equivalent Canadian category (example.ca/widget-category/)? Does it not get any hreflang tags because it has no true Canadian counterpart? Does it matter at all if it has a canonical tag pointing to the first page in the series anyway (example**.com**/widget-category/)? Thanks, Andrew B.
International SEO | | ABullis0 -
HELP: Incorrect Meta Tag description showing for the wrong search results
Hi Guys I'm stuck here! I have update the hreftags, updated the sitemaps. I have 3 top level domains and my zenory.com site is showing for the home page the wrong meta tag description, as you can see in the attachement the meta tag is showing the new zealand site meta tag description which is for zenory.co.nz Anyone know what might be going on here? I have also fetched the home page through WMT as well and its still returning the same results any advice would be much appreciated! Thanks
International SEO | | edward-may0 -
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 -
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.
International SEO | | KaneJamison1