Перейти к содержимому
Левицкий Концепт
Инициализация систем000%

Генератор hreflang для многоязычного сайта

Перечислите языковые версии страницы — генератор соберёт hreflang в трёх форматах и проверит коды: «en-UK» вместо «en-GB» и регион без языка — частые ошибки.

Бесплатно, без регистрации. Данные обрабатываются в вашем браузере и никуда не отправляются.

Языковые версии одной страницы

КодАдрес

Код — язык по ISO 639-1 (ru, en, de) и, при необходимости, регион по ISO 3166-1 через дефис (en-GB, de-AT). x-default — версия для всех остальных.

Вставьте в <head> каждой из версий
<link rel="alternate" hreflang="ru" href="https://example.ru/catalog/" />
<link rel="alternate" hreflang="en" href="https://example.ru/en/catalog/" />
<link rel="alternate" hreflang="kk-KZ" href="https://example.kz/catalog/" />
<link rel="alternate" hreflang="x-default" href="https://example.ru/en/catalog/" />
Один и тот же набор тегов должен стоять на всех версиях: каждая страница ссылается на себя и на все остальные. Без обратных ссылок поисковик проигнорирует связь.

Как пользоваться

  1. Перечислите все языковые и региональные версии одной страницы с полными адресами.
  2. Добавьте x-default — страницу для всех, чей язык вы не поддерживаете.
  3. Выберите формат: теги в <head>, HTTP-заголовок или блок для sitemap.
  4. Вставьте один и тот же набор на каждую из версий и проверьте предупреждения.

Что такое hreflang

Атрибут hreflang сообщает поисковикам, что у страницы есть версии на других языках или для других стран, и какая из них для кого предназначена. Благодаря этому посетитель из Казахстана увидит в выдаче казахстанскую версию сайта с ценами в тенге, а англоязычный пользователь — английскую страницу, а не русскую. Без hreflang поисковик может показывать «не ту» версию, а близкие по содержанию страницы для разных регионов — считать дублями.

hreflang нужен не всем. Если у сайта одна русская версия — он не нужен совсем. Если есть русская и английская — нужен. Если вы работаете на Россию, Казахстан и Беларусь с одинаковым русским текстом, но разными ценами, контактами или ассортиментом — нужен обязательно: это как раз случай региональных версий одного языка (ru-RU, ru-KZ, ru-BY).

Как устроен код языка

ПримерЧто означаетКомментарий
ruРусский язык, любая странаСамый частый вариант
en-GBАнглийский для ВеликобританииРегион — код страны ISO 3166-1
en-UKОшибкаКода UK в ISO 3166-1 нет, нужно GB
kk-KZКазахский для КазахстанаЯзык и страна не совпадают по буквам — это нормально
zh-HantКитайский, традиционное письмоДопустим код письменности
x-defaultВерсия по умолчаниюДля всех остальных языков и стран

Код всегда начинается с языка. Указать только страну нельзя: «UA» — не язык; украинский язык — «uk», а украинский для Украины — «uk-UA». Генератор проверяет коды по спискам ISO и подсказывает исправление в частых ошибках.

Три способа разметить версии

  • Теги <link> в <head> — самый распространённый способ. Подходит для обычных HTML-страниц.
  • HTTP-заголовок Link — для файлов, у которых нет <head>: PDF, документов. Настраивается на сервере.
  • Sitemap с xhtml:link — удобно для больших сайтов: связи хранятся в карте сайта, и не нужно менять шаблоны страниц. Каждый адрес в карте перечисляет все альтернативы, включая себя.

Выберите один способ. Комбинировать можно, но тогда разметка должна совпадать во всех местах, иначе поисковик получит противоречивые сигналы.

Пять правил, без которых hreflang не работает

  1. Взаимность. Если русская страница ссылается на английскую, английская обязана ссылаться на русскую. Ссылки «в одну сторону» игнорируются.
  2. Ссылка на себя. Каждая версия перечисляет и саму себя. Поэтому набор тегов на всех версиях одинаковый.
  3. Абсолютные адреса. Только https://site.ru/en/page, никаких относительных путей.
  4. Канонические адреса. hreflang должен указывать на страницы, которые отдают код 200 и являются каноническими сами для себя. Ссылка на редирект или страницу с canonical на другой адрес ломает связь.
  5. Только реальные версии. Не объявляйте английскую версию, если вместо неё отдаётся 404 или русский текст.

Что такое x-default и когда его указывать

x-default — страница для тех, кому не подходит ни одна из версий. Часто это английская версия или страница выбора языка. Если у сайта только русская и английская версии, x-default обычно ставят на английскую: франкоязычному пользователю она полезнее русской. Если основная аудитория — Россия, а английская версия второстепенна, некоторые ставят x-default на русскую — это тоже допустимо, главное — осознанно.

Частые ошибки на практике

  • Шаблон выводит hreflang на все страницы, включая те, у которых нет перевода, — поисковик идёт на 404.
  • Разные адреса со слешем и без слеша на конце: для поисковика это разные страницы.
  • Языковые версии закрыты в robots.txt — робот не может проверить обратные ссылки.
  • hreflang указывает на версию с параметрами (?lang=en), а canonical — на адрес без них.

После внедрения добавьте связи в карту сайта — помогут генератор sitemap.xml и генератор robots.txt. Общий порядок технической проверки сайта — в чек-листе технического аудита.

Пример: сайт для России и Казахстана

Компания продаёт оборудование в России и Казахстане. Тексты на русском почти одинаковые, но различаются цены, валюта, телефоны и условия доставки. Без hreflang поисковик видит две похожие страницы и может показывать казахстанским пользователям российскую версию с ценами в рублях. Решение: на обеих версиях страницы ставим одинаковый набор — ru-RU на российскую, ru-KZ на казахстанскую и x-default на российскую как основную. Если позже появится казахская версия, добавляется kk-KZ, и набор обновляется на всех трёх страницах. Генератор соберёт такой набор и напомнит про x-default и обратные ссылки.

Вопросы и ответы

Нужен ли hreflang, если у сайта только русская версия?

Нет. hreflang описывает связь между версиями; если версия одна, связывать нечего.

Можно ли указывать только язык без региона?

Да, и чаще всего так и нужно. Регион добавляют, только если для разных стран действительно разные страницы.

hreflang заменяет canonical?

Нет, это разные сигналы. canonical указывает основную версию среди дублей, hreflang — связь между переводами. На каждой языковой версии canonical должен указывать на неё саму.

Влияет ли hreflang на позиции?

Напрямую нет. Он помогает показать пользователю правильную версию, из-за чего растут CTR и поведенческие метрики, а дубли между регионами перестают конкурировать.

Как проверить, что всё работает?

Проверьте код страницы и ответ сервера, затем через несколько недель посмотрите в Search Console отчёты по международному таргетингу и то, какую версию показывает выдача в разных странах.

Когда нужна команда

SEO-продвижение

Соберём ядро по выдаче, спроектируем структуру и доведём страницы до топа — с отчётами по позициям и заявкам.

Другие инструменты