Site Metrics
FeaturesPricingToolsBlogSite auditServices
Sign inStart free
Home/Blog
technical-seoaudit
🌐

Hreflang for multilingual sites: the complete 2026 guide

What hreflang is, how to set it up correctly for two or more languages, typical mistakes, and why Google and Yandex treat hreflang differently.

August 19, 2026·13 min read·Site Metrics Tool

Hreflang is an HTML tag that tells engines "this page has versions in other languages, here are the links". Without hreflang, Google and Yandex often serve the "wrong" version to users — Russians get English, Americans get Russian. Conversion from such SERPs drops dramatically. Proper hreflang setup fixes this in an hour. This article walks through the syntax, common mistakes, the x-default vs specific-language difference, and why Yandex treats hreflang differently from Google.

Hreflang syntax

In `<head>` of each page you add tags like `<link rel="alternate" hreflang="ru" href="https://domain.com/ru/page">`. One tag per language version of the page. With 2 languages (RU and EN), each page must have at least 2 hreflang tags — one for RU, one for EN. The EN page carries the same 2 tags linking to both versions. This is the reciprocity rule: if A links to B as alternate, B must link to A.

What is x-default and why it matters

`hreflang="x-default"` is a special value meaning "this version is for any other users whose language isn't listed". With a RU + EN site and a Chinese or Spanish user without hreflang, Google doesn't know which to serve. With x-default Google serves the specified version (usually EN as "universal"). Site Metrics Tool sets x-default on the EN version. Without x-default Google falls back to automatic logic that often gets it wrong.

Where to place hreflang

Three valid locations: one — in the page's `<head>` (most common, easiest to debug); two — in the HTTP `Link:` header (for non-HTML files like PDFs); three — in the XML sitemap (via `xhtml:link rel="alternate"`). Pick one and stick with it — Google dislikes mixed placement (some in HTML, some in sitemap). HTML head is the most convenient for most teams: visible via View Source and easy to debug.

Typical hreflang mistakes

Free tool
Run an express site audit in a minute
Five free SEO tools on one page: SERP checker, robots.txt and Sitemap validators, meta tags inspector, Core Web Vitals tester. No signup.
Open tools
  • Reciprocity violation: A links to B but B doesn't link back to A. Google ignores such tags.
  • Using `lang="ru-RU"` while `<html lang="ru">` — mismatch confuses parsers.
  • Using country codes (e.g., `ru-RU`) when not needed — plain `ru` is better. Country codes are only for different versions for different countries on the same language.
  • href pointing to a redirect — Google follows the redirect and substitutes the final URL, but inefficiently. Provide the final URL directly.
  • href pointing to a 404 or noindex page. Google ignores such hreflang tags.
  • Missing x-default. Not critical but a free optimisation for non-standard users.

How Yandex treats hreflang

Yandex didn't officially support hreflang for a long time. Since 2022 Yandex considers hreflang, but mainly for page-language detection, not user-version selection. For geotargeting Yandex uses its own mechanism via Webmaster ("Regionality"). Practical takeaway: set hreflang for Google (critical) and additionally configure regionality in Yandex Webmaster per country. Without step two Yandex may serve the "wrong" version to a Russian user.

How to verify your setup

First check — Google Search Console → International Targeting → Language. Google shows detected hreflang tags and any errors (reciprocity violations, invalid codes, unreachable URLs). Second — an online Hreflang Tags Testing Tool: enter URL and see all tags and relationships. Third — our free Meta Tags Checker (`/tools/meta-tags-checker`): enter URL, the report has a "hreflang" section breaking down every tag on the page.

Frequently asked

How many hreflang tags should a page have?

One per language version plus x-default. With 2 languages — at least 2 tags, ideally 3 (RU + EN + x-default). With 5 languages — 6 tags.

Do I need hreflang for a single-language site?

No. Hreflang only matters when you have 2+ language versions of the same content.

What if not all of the page is translated?

Hreflang works at the URL level, not content. If the page exists in RU and EN — set hreflang. If only RU — don't point to EN. Don't point hreflang to auto-translated pages — Google detects it and lowers trust.

Share
Automate all this for your site

Site Metrics Tool syncs GSC and Yandex Webmaster every 6 hours, builds 16 months of history and fires alerts on drops. Free plan — forever.

Create free account

Related articles

🧱
Sep 4, 2026 · 14 min read

Schema.org markup: the advanced 2026 guide

A complete guide to structured data: every type for every page, JSON-LD vs Microdata, @id linking, testing and debugging.

⚙️
Aug 3, 2026 · 13 min read

JavaScript SEO in 2026: SPA, hydration, and why your page won't index

Why JavaScript-heavy sites index poorly, how Google and Yandex render JS, SSR/SSG/CSR differences, and a fix checklist.

👯
Jul 30, 2026 · 13 min read

Duplicate pages: how to find and fix them in 30 minutes

A complete guide to finding and fixing duplicates: types, detection tools, fixes via canonical, 301 and noindex.

🦈
Jul 14, 2026 · 13 min read

Keyword cannibalization: how to find and fix it

What keyword cannibalization is, why it kills rankings, how to detect it via GSC and Webmaster, and three proven strategies to fix it.

Contents
  1. Hreflang syntax
  2. What is x-default and why it matters
  3. Where to place hreflang
  4. Typical hreflang mistakes
  5. How Yandex treats hreflang
  6. How to verify your setup
Free tools
  • 🎯SERP Checker
  • 🤖robots.txt
  • 🗺️Sitemap
  • 🏷️Meta tags
  • ⚡Core Web Vitals
Free
Free plan, no card

1 project, 5 keywords, OAuth with GSC and Webmaster, 16 months of history. Pay only if you outgrow it.

Create account →
Read also
  • 🧱Schema.org markup: the advanced 2026 guide
    14 min
  • ⚙️JavaScript SEO in 2026: SPA, hydration, and why your page won't index
    13 min
  • 👯Duplicate pages: how to find and fix them in 30 minutes
    13 min
  • 🦈Keyword cannibalization: how to find and fix it
    13 min
Site Metrics Tool

Rank tracking in Google and Yandex. GSC + Webmaster integrations, 16 months of history, free plan without a card.

All systems normal
Product
  • Features
  • Pricing
  • Site audit
  • Services
  • Start free
  • Sign in
Resources
  • Blog
  • Tools
  • Glossary
  • Comparisons
  • RSS
Legal
  • Terms
  • Privacy
  • Refund
Contact
  • info@sitemetricstool.com
  • support@sitemetricstool.com
© 2026 Site Metrics Tool. Self-hosted SEO.
Spiridonov Dmitry Vadimovich (Individual Entrepreneur) · OGRNIP: 324762700012347 · INN: 760806658219
Registered address: 12-20 Krasnoekhovskaya str., Pereslavl-Zalessky, Yaroslavl Region, 152020, Russia · info@sitemetricstool.com