hreflangмеждународное SEOрегионытехничка

Hreflang для мульти-региональных сайтов в РФ и СНГ

Hreflang — техническая разметка для языковых и региональных версий. Одна ошибка — и Google показывает русскую версию казахам, а казахскую — украинцам.

Что такое hreflang

hreflang — атрибут HTML/HTTP, который сообщает поисковикам, на каком языке и для какого региона написана страница.

Если у вас есть несколько языковых или региональных версий сайта (русская / казахская / украинская / английская), без hreflang Google и Яндекс могут:

  • Показать русскую версию казахскому пользователю
  • Считать языковые версии дублями друг друга
  • Не показать пользователю самую релевантную версию

С hreflang каждая версия знает о других и поисковик ставит правильную.

Как hreflang выглядит

Вариант 1: HTML в <head>

<link rel="alternate" hreflang="ru" href="https://example.com/" />
<link rel="alternate" hreflang="ru-RU" href="https://example.com/ru-ru/" />
<link rel="alternate" hreflang="ru-KZ" href="https://example.com/ru-kz/" />
<link rel="alternate" hreflang="kk" href="https://example.com/kk/" />
<link rel="alternate" hreflang="uk" href="https://example.com/uk/" />
<link rel="alternate" hreflang="en" href="https://example.com/en/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/" />

Вариант 2: HTTP-заголовок (для PDF и не-HTML)

Link: <https://example.com/>; rel="alternate"; hreflang="ru"
Link: <https://example.com/kk/>; rel="alternate"; hreflang="kk"

Вариант 3: В sitemap.xml

<url>
  <loc>https://example.com/</loc>
  <xhtml:link rel="alternate" hreflang="ru" href="https://example.com/" />
  <xhtml:link rel="alternate" hreflang="kk" href="https://example.com/kk/" />
</url>

Правила синтаксиса

Языковые коды (ISO 639-1)

  • ru — русский
  • kk — казахский
  • uk — украинский
  • be — белорусский
  • uz — узбекский
  • en — английский

Региональные коды (ISO 3166-1 alpha-2)

  • RU — Россия
  • KZ — Казахстан
  • UA — Украина
  • BY — Беларусь
  • UZ — Узбекистан

Комбинации

  • ru-RU — русский язык в России
  • ru-KZ — русский язык в Казахстане (важно — разный контент!)
  • kk-KZ — казахский язык в Казахстане

Специальный код

  • x-default — версия по умолчанию для всех, кто не подходит под другие правила

Типичные ошибки

1. Несимметричные ссылки

Если страница A ссылается на B, B обязательно должна ссылаться на A. Иначе Google считает разметку невалидной и игнорирует.

Плохо:

  • example.com/: ссылка на /kk/
  • example.com/kk/: нет ссылки обратно на /

Хорошо:

  • example.com/: ссылка на /kk/
  • example.com/kk/: ссылка обратно на /

2. Неправильные коды

  • hreflang="russian" — это не код
  • hreflang="ru-russia" — региона должен быть в alpha-2
  • hreflang="ru-RU"

3. Отсутствие x-default

Без x-default поисковики не знают, какую версию показать пользователям из других стран, которых нет в вашем списке.

Решение: всегда добавлять x-default — обычно это главная или английская версия.

4. hreflang на дубли без перевода

Если у вас русская и казахская версии одинаковые (просто два URL с тем же контентом) — hreflang не нужен, canonical между ними обязателен.

hreflang нужен только для версий с разным языком или регионом.

5. Указание hreflang на 404 страницы

Если одна из версий удалена или возвращает 404, в hreflang её обязательно убрать. Иначе разметка считается невалидной.

Когда hreflang НЕ нужен

  • У вас один сайт на одном языке для одной страны
  • Языковые версии — это canonical-копии без перевода
  • Вы используете поддомены для регионов (msk.example.ru, spb.example.ru) — для них работают другие механизмы (Я.Вебмастер регионы, Schema.org LocalBusiness)

Сценарии для рунета и СНГ

Сценарий 1: Сайт на русском для РФ

hreflang не нужен. Достаточно региональности в Я.Вебмастере.

Сценарий 2: Сайт на русском для РФ + Казахстан + Беларусь

Контент одинаковый на всех версиях — hreflang не нужен, нужен canonical. Регионы укажите в Я.Вебмастере.

Сценарий 3: Сайт на русском + казахская версия (разный контент)

<link rel="alternate" hreflang="ru" href="https://example.com/" />
<link rel="alternate" hreflang="kk" href="https://example.com/kk/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/" />

Сценарий 4: Международный сайт (русский, английский, казахский)

<link rel="alternate" hreflang="ru" href="https://example.com/" />
<link rel="alternate" hreflang="en" href="https://example.com/en/" />
<link rel="alternate" hreflang="kk" href="https://example.com/kk/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/en/" />

Как проверить

1. Через Google Search Console

«Поисковый трафик → Таргетинг по странам и языкам → Hreflang» Покажет ошибки в разметке.

2. Через Я.Вебмастер

«Инструменты → Проверка hreflang»

3. Сторонние сервисы

  • merkle.com/hreflang-tag-tester
  • screaming-frog.co.uk (десктопный SEO-краулер)

Связь с GEO

Hreflang не влияет напрямую на GEO, но косвенно:

  • ИИ-модели учитывают язык пользователя при ответах
  • Правильная разметка помогает моделям показать релевантную версию вашего сайта
  • Schema.Country и Schema.inLanguage дополняют hreflang

Чек-лист

  • [ ] Определить, нужен ли hreflang (см. сценарии выше)
  • [ ] Внедрить hreflang во всех версиях
  • [ ] Все ссылки симметричны
  • [ ] Указаны правильные коды языков и регионов
  • [ ] Добавлен x-default
  • [ ] Проверено через GSC / Я.Вебмастер
  • [ ] Регулярная проверка после обновлений сайта

Итог

Hreflang — техническая разметка, обязательная только для реально мульти-региональных сайтов с переводами. Для одной страны — не нужна. Если внедрена с ошибками — может вредить больше, чем помогать.

Прогнать SEO-аудит с проверкой hreflang →

Получить SEO-аудит своего сайта

Бесплатно. Без регистрации. Топ-проблемы и план роста позиций за 60 секунд.

Проверить сайт →