Hreflang
Также: hreflang-атрибут
Hreflang — атрибут, который сообщает поисковикам о языковых и региональных версиях одной и той же страницы. Помогает Google и Яндексу показывать правильную версию пользователю из нужной страны.
Как работает
Разметка hreflang делается в трёх местах. Чаще всего — набор <link> тегов в <head> страницы:
<link rel="alternate" hreflang="ru" href="https://example.com/ru/">
<link rel="alternate" hreflang="en" href="https://example.com/en/">
<link rel="alternate" hreflang="en-US" href="https://example.com/en-us/">
<link rel="alternate" hreflang="x-default" href="https://example.com/">
Для не-HTML документов подходит HTTP-заголовок Link. Для крупных сайтов с сотнями языковых пар удобнее задавать hreflang через атрибуты xhtml:link внутри sitemap.xml — не приходится редактировать шаблоны страниц.
Код языка задаётся по стандарту ISO 639-1 (ru, en, de), опционально с регионом по ISO 3166-1 Alpha 2 (en-US, ru-RU, pt-BR). Значение x-default — fallback для пользователей, не подпадающих ни под одну из указанных версий.
Обязательное правило — взаимные ссылки. Если страница A ссылается через hreflang на страницу B, то B тоже должна ссылаться на A. Асимметрия — самая частая ошибка, Google в таких случаях игнорирует всю разметку.
Почему важно для SEO
Без hreflang Google угадывает нужную языковую версию по IP пользователя, содержимому страницы и языку интерфейса — иногда правильно, иногда нет. Пользователь из России может получить в выдаче английскую версию сайта, из США — русскую, что немедленно приводит к возврату в SERP и падению позиций.
Google Search Central подробно описывает hreflang как основной инструмент управления языковыми версиями. В Search Console раздел «Международный таргетинг» отдельно показывает ошибки hreflang: асимметричные ссылки, недоступные URL, неверные коды языков.
Яндекс hreflang формально не поддерживает и использует для этих задач Content-Language или каталог сайта, разбитый на подпапки. Для рунета обычно достаточно правильной внутренней структуры URL (example.com/ru/, example.com/en/) и отдельной региональной привязки в Вебмастере.
Проверим весь сайт?
Пара минут — и увидите отчёт по каждой странице.
Проверить сайтЧастые ошибки
- Асимметричные ссылки: A → B, но B не ссылается на A — Google игнорирует весь блок hreflang.
- Использованы коды стран вместо кодов языков (
en-GBвместоenдля британского контента, если содержимое одинаковое). - URL в hreflang возвращают 404, 301 или canonical на другую страницу — сигнал сломан.
- Нет
x-default— Google не знает, что показать пользователю, чей регион не указан. - Разметка hreflang ставится через JavaScript — часть роботов её не увидит.
- Одна и та же страница помечена как каноническая и как альтернативная одновременно — конфликт сигналов.
Как проверить
В Chrome DevTools вкладка Elements → поиск по hreflang покажет все теги в <head>. Инструмент Merkle Hreflang Tags Tester (technicalseo.com/tools/hreflang) валидирует симметрию всех связей между страницами. В Google Search Console раздел «Международный таргетинг → hreflang» показывает статистику ошибок по сайту.
SEO Crawler при обходе строит граф языковых версий: собирает hreflang со всех страниц, проверяет симметрию ссылок, доступность целевых URL, корректность языковых кодов. В отчёте это блок «Мультиязычность» — со списком асимметричных связей и битых hreflang-ссылок.
Вывод
Hreflang — способ управлять языковыми версиями сайта в глобальной выдаче Google. Держите взаимные ссылки во всех парах, обязательно ставьте x-default, проверяйте разметку через валидатор после каждого добавления новой языковой версии. Для рунета Яндекс работает по своим правилам — упор на структуру URL и региональную привязку в Вебмастере, а не на hreflang.
Проверим весь сайт?
Пара минут — и увидите отчёт по каждой странице.
Проверить сайт