Hreflang for Multilingual Websites: A Practical Guide

Hreflang tells Google which language or regional version of a page to show to which searcher. This guide covers when you need it, the rules Google documents, a working example, the mistakes that break it, and how to check your setup.
In this article
01What is hreflang?
Hreflang is an annotation that links the versions of the same page in different languages or for different regions. Google uses it to show searchers the version that matches their language or location.
Google says that subdomain or path names do not tell it who a version is meant for, so you must map each audience explicitly with annotations. Having /ru/ in a URL is not enough.
02Do you need hreflang?
- Yes if you publish the same content in several languages, such as English, Russian, Chinese and Malay.
- Yes if you publish the same language for different countries with real differences, such as currency or terms.
- No if your site has a single language and a single audience.
For an exporter, the most common case is one product range explained in the languages of several target markets. See also [how to localize your website](/blog/localize-website/).
03The rules Google documents
These points come from Google Search Central's guide on localized versions.
- Every version lists itself and all the others. The set of annotations must be identical on each page.
- Links must be reciprocal. If page A points to page B, page B must point back to A, or Google may ignore the annotations.
- Use fully qualified URLs, including
https://. - Language code first, then optional region. Language uses ISO 639-1 (
en,ru,zh), region uses ISO 3166-1 Alpha-2 (US,GB). A region code cannot stand alone. - Script subtags are supported, such as
zh-Hansandzh-Hant. Non-standard codes such ases-419are not supported. - Use
x-defaultas a fallback for searchers whose language matches none of your versions. It takes no language code.
04Three ways to add hreflang
Google treats these as equivalent, so pick one and keep it consistent.
| Method | Best for | Where it goes |
|---|---|---|
HTML <link> tags | Most websites | In the <head> of every page |
HTTP Link header | Non-HTML files such as PDFs | In the server response |
| XML sitemap | Large sites | xhtml:link entries in the sitemap |
05A working example
This is the markup on the VALTARIQ English home page. It lists four languages plus the fallback, and the Russian, Chinese and Malay versions carry the same set.
<link rel="alternate" hreflang="en" href="https://www.valtariq.com/">
<link rel="alternate" hreflang="ru" href="https://www.valtariq.com/ru/">
<link rel="alternate" hreflang="zh" href="https://www.valtariq.com/zh/">
<link rel="alternate" hreflang="ms" href="https://www.valtariq.com/ms/">
<link rel="alternate" hreflang="x-default" href="https://www.valtariq.com/">Using language-only codes is the simplest choice when each language targets one site audience. Add a region, such as en-GB, only when you publish genuinely different content for that region.
06Common mistakes
- Missing return links. The most frequent problem. One version points out, but the others do not point back.
- Invalid codes. Reserved or wrong codes such as
EU,UNorUKdo not work. Useen-GBfor the United Kingdom. - Tags outside
<head>. Hreflang link tags placed in the body are not valid. - Mixing attributes in one tag. Keep each hreflang tag clean.
- Relative URLs. Always use the full address with
https://. - Annotating pages that do not exist in another language. Only link versions that actually exist. A blog post with no Russian version should list only the versions it has.
07How to check your setup
- Open the page source and search for
hreflang. Confirm that every language version appears. - Open each listed URL and confirm it points back to the first page.
- Check that every code is valid and every URL starts with
https://. - Submit your sitemap in Google Search Console and watch the indexing of each language version.
08Frequently asked questions
Does hreflang improve rankings?
Hreflang does not boost rankings directly. It helps Google show the right version to the right searcher, which reduces the chance that visitors land on a language they cannot read.
Is a language selector enough?
No. A visible selector helps visitors, but search engines need the annotations to understand how your versions relate.
Should I use subdomains, folders or separate domains?
Google allows alternate URLs on different domains and does not infer the audience from the structure. Choose the structure that fits your team and budget, then annotate it correctly. Folders such as /ru/ are the easiest to manage on one site.
What does x-default do?
It names the page to show when no listed language fits the searcher. It is usually the language selector or the main English page.
09Need a multilingual site that search engines understand?
VALTARIQ builds multilingual websites with the technical setup done correctly from the start. See our [website development service](/services/overseas-website-development/) or [contact us](/contact/) to discuss your target markets.
Source: Google Search Central, Tell Google about localized versions of your page.
Want results like this for your brand?
Tell us your market, product and goals. We will reply with a clear plan.

Google's September 2026 Spam Update Is Complete: What Exporters Should Check

Google, Bing or Yandex: Where Should You Advertise?

