Technical SEO

What does Google say about multiple hreflang values on one URL?

A URL gets several hreflang values when it is both x-default and a language version, or when it serves several countries.

/en-eu/one URLen-gben-ieen-nlen-been-ch/en-us/ = en-us
Eoghan HennFirst published: August 17, 2018Last updated: October 15, 20266 min read
In short
  • A URL may carry several hreflang values, for example x-default in addition to “en”, or several country codes for an English EU version. John Mueller (Google) confirmed this at SMX Munich in 2016 and on Twitter in 2017.
  • Google's current documentation mentions the case neither as allowed nor as prohibited. There is no measurement experiment on it.
  • In practice on several websites, the country variant has worked as long as the codes match the language of the page.

Google's hreflang documentation leaves a lot of room for interpretation. One of the open questions for a long time was whether a single URL may carry several hreflang values. This article documents what Google has said about it and what the variants look like in practice.

The background

At SMX Munich in March 2016 there was a session on hreflang. Eoghan Henn showed how to implement hreflang correctly, how hreflang and canonical work together, which domain strategy suits international sites and when x-default makes sense. In the process, he expressed doubts about whether it makes sense to give a URL two hreflang values.

In the Q&A, one attendee said that John Mueller from Google had once declared such a double assignment permissible. John Mueller was in the audience and confirmed that Google accepts this kind of implementation.

x-default and language code on the same URL

In the example, the English page /en/about/ is also the default version for all users without a matching language. It therefore gets two values, “x-default” and “en”. There are also separate versions for the UK and Ireland.

<link rel="alternate" hreflang="x-default" href="https://www.example.com/en/about/"> <link rel="alternate" hreflang="en" href="https://www.example.com/en/about/"> <link rel="alternate" hreflang="en-gb" href="https://www.example.com/en-gb/about/"> <link rel="alternate" hreflang="en-ie" href="https://www.example.com/en-ie/about/">

As with any hreflang set, this block is identical on all four URLs involved. The hreflang guide explains what x-default means and when it fits.

One version for several countries

The confirmation immediately raised the next question. Does this also apply to other cases? In the second example, a website has an English version for the USA and an English version for several European countries. The US version gets “en-us”. The EU version gets its own value for every country it targets.

<link rel="alternate" hreflang="en-us" href="https://www.example.com/en-us/about/"> <link rel="alternate" hreflang="en-gb" href="https://www.example.com/en-eu/about/"> <link rel="alternate" hreflang="en-ie" href="https://www.example.com/en-eu/about/"> <link rel="alternate" hreflang="en-nl" href="https://www.example.com/en-eu/about/"> <link rel="alternate" hreflang="en-be" href="https://www.example.com/en-eu/about/"> <link rel="alternate" hreflang="en-lu" href="https://www.example.com/en-eu/about/"> <link rel="alternate" hreflang="en-ch" href="https://www.example.com/en-eu/about/">

Before that conversation, Eoghan would not have recommended this implementation. When asked, John Mueller confirmed that Google accepts multiple values in this case too. On March 2, 2017 he confirmed it again on Twitter. In essence, he added that a pure language code or x-default is also an option and that everything can be combined.

Eoghan then used the country variant on several websites, and in his experience it worked well every time. There are no measurements on this.

Which variant fits when?

VariantExampleFits whenRisk
Language code onlyhreflang="en"One version for all countries of a languageLow, little maintenance
Language and x-default“en” and “x-default” on /en/The version also serves as the default for everyone elseLow
Several country codes on one URLen-gb, en-ie, en-nl on /en-eu/Besides the group, there are other versions in the same language, for example for the USALong sets, maintenance effort
Country code in a different languageen-fr on an English pageRarely usefulMainly reaches English-speaking searchers in that country

If there is only one version for all countries of a language, the pure language code is enough. The country variant is worthwhile if, besides the group, there are other versions in the same language that Google should tell apart.

Codes that match the language of the page

In one real case, a shop had tagged its English EU pages with codes such as “en-fr”. English-speaking searchers in France found the pages, French-speaking ones did not. Only a French version with “fr-fr” solved this. The language part of the code should therefore match the language of the page. There is no official way for pages with two languages on one URL.

What has changed since?

In 2016, the recommendation was to leave country targeting in Search Console empty when using several country codes on one URL. Google no longer supports this setting. Google's current documentation mentions multiple values for one URL neither as allowed nor as prohibited. It describes one link per page for each variant, including the page itself. The statements from 2016 and 2017 therefore remain the only ones that refer directly to this case. Newly documented is that reserved codes such as “EU” or “UK” have no effect. The path /en-eu/ is unproblematic, whereas an hreflang value “en-eu” would have no effect.

Common mistakes

  • The country code “uk” instead of “gb” for the United Kingdom. Google ignores it.
  • A value such as “en-eu” for a group of countries. Regions without an ISO country code have no effect.
  • The set only appears on the EU version. Every URL involved needs the same block, otherwise return links are missing.
  • Country codes for countries whose language the page does not speak.
  • x-default on every language version instead of on a single URL.

Frequently asked questions

Can a URL have several hreflang values?

Yes. John Mueller from Google confirmed in 2016 and 2017 that Google accepts a URL with several values, for example x-default and “en”, or several country codes.

May x-default point to a language version?

Yes. The language version then carries two values, its language code and x-default.

Is hreflang="en" enough for all English-speaking countries?

If there is only one English version, the language code is enough. You only need country codes when there are several English versions for different countries.

Can I use hreflang="en-eu"?

No. “EU” is not a country code under ISO 3166-1, and Google ignores this part. Assign a separate value for each country instead.

Can I reach French users with an English page?

With a code such as “en-fr” you mainly reach English-speaking searchers in France. For French-language search queries, you need a French version.

With every crawl, searchVIU reads the hreflang annotations of all URLs on your website. The hreflang topic report shows what has changed since the last crawl. XML Sitemap Monitoring alerts you when hreflang annotations disappear from your sitemaps. Find out more on the International websites page.

Request a demo

Sources

Retrieved on October 15, 2026. If something is out of date or missing, let us know.

  1. Google, Tell Google about localized versions of your page: https://developers.google.com/search/docs/specialty/international/localized-versions · As of September 21, 2026
  2. Search Console Help, The International Targeting report has been deprecated: https://support.google.com/webmasters/answer/12474899
  3. ISO 3166, Country codes: https://www.iso.org/iso-3166-country-codes.html