Hreflang помогает поисковым системам понять, какие URL являются языковыми или региональными версиями одной страницы. Это особенно важно, если сайт работает на одном домене, но использует папки вроде /ru/, /en/, /de/ вместо отдельных поддоменов.
Главная цель hreflang - не “поднять позиции одной строкой кода”, а снизить риск, что пользователь из нужного региона увидит не ту версию страницы в поиске.
Есть разные URL для разных языков или стран.
Один язык, один регион, нет альтернативных версий.
Ошибки в кластере могут привести к игнорированию разметки.
Что такое hreflang простыми словами
Hreflang - это атрибут в теге link rel="alternate", который сообщает поисковику: “у этой страницы есть альтернативные версии для других языков или регионов”.
Например, одна и та же услуга может быть доступна на русском, английском и немецком языках. Если разметка настроена корректно, поисковая система лучше понимает, какую версию показать пользователю.
Hreflang - это не замена переводу, не замена региональной стратегии и не гарантия роста трафика. Это технический сигнал, который работает только вместе с нормальной индексацией, каноникалами, контентом и структурой URL.
Когда hreflang действительно нужен
Перед внедрением стоит честно ответить: есть ли у сайта несколько версий одной и той же страницы для разных аудиторий. Если таких страниц нет, hreflang может стать лишним техническим шумом.
| Ситуация | Нужен ли hreflang | Почему |
|---|---|---|
| Есть /ru/ и /en/ версии одной услуги | Да | Нужно связать языковые версии в один кластер. |
| Есть /en-us/ и /en-gb/ с разными ценами и условиями | Да | Язык один, но региональная релевантность разная. |
| Один сайт только на русском для России | Нет | Нет альтернативных языковых или региональных URL. |
| Разные города в России: /moskva/, /spb/, /kazan/ | Обычно нет | Это чаще задача региональной структуры, контента и геопривязки, а не hreflang. |
Как устроить языковые версии без поддоменов
Если не использовать поддомены, самый понятный вариант - подпапки. Они легче поддерживаются, проще для аналитики и обычно удобнее для WordPress.
Подпапки
example.com/ru/, example.com/en/
Оптимальный вариант для большинства проектов: один домен, понятная структура, проще контроль индексации.
Параметры URL
example.com/page?lang=en
Можно использовать, но сложнее контролировать дубли, каноникалы и чистоту индекса.
Один URL с автопереводом
example.com/service/
Плохой вариант для SEO, если поисковик не видит отдельные индексируемые URL для каждой версии.
Базовые правила hreflang, которые нельзя нарушать
Большинство ошибок появляется не из-за самого тега, а из-за несогласованности всей связки: URL, canonical, sitemap, robots, редиректы и статус-коды.
en-GB, а не en-UK.x-default.Три способа внедрения hreflang без поддоменов
1. HTML-теги в head
Подходит для небольших сайтов или шаблонов, где разработчик может корректно вывести теги в секции head каждой страницы.
<link rel="alternate" hreflang="ru-RU" href="https://example.com/ru/service/" />
<link rel="alternate" hreflang="en-US" href="https://example.com/en/service/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/service/" />
2. XML Sitemap
Хороший вариант для крупных сайтов, где много языковых страниц. Так проще централизованно управлять кластерами и проверять структуру.
<url>
<loc>https://example.com/ru/service/</loc>
<xhtml:link rel="alternate" hreflang="ru-RU" href="https://example.com/ru/service/" />
<xhtml:link rel="alternate" hreflang="en-US" href="https://example.com/en/service/" />
<xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/service/" />
</url>
3. HTTP-заголовки
Используются реже. Метод полезен для PDF и других файлов, где нет HTML-секции head.
Link: <https://example.com/file-ru.pdf>; rel="alternate"; hreflang="ru-RU",
<https://example.com/file-en.pdf>; rel="alternate"; hreflang="en-US"
Если один и тот же кластер одновременно выводится в HTML, sitemap и HTTP-заголовках, возрастает риск расхождений. Лучше выбрать один основной метод и поддерживать его стабильно.
Пошаговая инструкция по внедрению
Соберите карту соответствий
Для каждой страницы укажите все альтернативы: русскую, английскую, немецкую и универсальную версию, если она есть.
Проверьте индексацию URL
Каждая страница должна отдавать 200 OK, не быть закрытой через noindex и не уходить в редирект.
Настройте canonical
Если страницы являются полноценными языковыми версиями, обычно каждая указывает canonical на себя. Подробно логику каноникализации можно разобрать в материале про canonical и дубли страниц.
Сгенерируйте одинаковый набор ссылок
На каждой странице кластера должен быть одинаковый набор hreflang-ссылок, включая ссылку на текущую страницу.
Проверьте после публикации
Просканируйте сайт краулером, проверьте исходный код, sitemap, статус-коды и выбранный canonical в инструментах вебмастера.
Частые ошибки при настройке hreflang
Нет обратных ссылок между версиями
Русская страница ссылается на английскую, но английская не ссылается обратно. В таком случае связка может быть проигнорирована.
Canonical ведёт на другую языковую версию
Например, английская страница указывает canonical на русскую. Поисковик получает конфликт: страницу нужно показать как альтернативу, но одновременно не считать её основной.
Используются относительные URL
В hreflang лучше не писать /en/service/. Нужен полный адрес: https://example.com/en/service/.
Коды стран указаны неверно
Типичная ошибка - en-UK вместо en-GB. Перед внедрением коды нужно проверить по стандартам ISO.
Разметка есть только на главных страницах
Если разметить только /ru/ и /en/, это не решит проблему для страниц услуг, категорий, товаров и статей.
Теги генерируются плагином, но никто их не проверяет
WordPress-плагины могут помочь, но они не гарантируют корректную карту соответствий, особенно при ручных переводах, изменённых URL и нестандартных шаблонах.
Как проверить hreflang после внедрения
Проверку лучше делать не “на глаз”, а по чек-листу. Иначе можно пропустить конфликт canonical, редирект или страницу, закрытую от индексации.
| Что проверить | Как проверить | Что должно быть в норме |
|---|---|---|
| Наличие тегов | Исходный код или rendered HTML | Все альтернативы есть в head или sitemap. |
| Обратные ссылки | Screaming Frog, Netpeak Spider, Sitebulb | Каждая версия ссылается на себя и остальные версии. |
| Canonical | Краулер, просмотр HTML, URL Inspection | Нет конфликта между canonical и hreflang. |
| Индексация | Google Search Console, Яндекс.Вебмастер, robots.txt | URL открыты для обхода и не закрыты noindex. |
| Sitemap | Проверка XML и namespace xhtml | В sitemap нет битых, редиректных и неканонических URL. |
Не ограничивайтесь главной страницей. Проверьте по одному URL каждого типа: главная, услуга, категория, товар, статья, страница контактов.
Hreflang для Google и Яндекса: что учитывать в России
Для российского бизнеса важно не путать мультиязычность с региональным продвижением. Если сайт работает только на русском языке, но продвигается по городам России, чаще нужны отдельные региональные страницы, корректные контакты, геопривязка и коммерческие факторы, а не hreflang.
Если сайт реально работает на несколько стран или языков, hreflang стоит внедрять аккуратно. Особенно если русская, английская и другие версии находятся на одном домене в папках.
Для комплексного продвижения важно смотреть не только на hreflang, но и на техническую базу, контент, структуру, конверсию и аналитику. Это часть общей системы SEO-продвижения сайта, а не отдельная “волшебная настройка”.
Что спросить у подрядчика перед внедрением
Красные флаги: когда внедрение сделано плохо
Пример плохого и хорошего варианта
Плохой вариант
<link rel="alternate" hreflang="en-UK" href="/en/service/" />
Ошибка в коде региона, относительный URL, нет ссылки на текущую страницу и другие версии.
Хороший вариант
<link rel="alternate" hreflang="ru-RU" href="https://example.com/ru/service/" />
<link rel="alternate" hreflang="en-GB" href="https://example.com/en-gb/service/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/service/" />
Полные URL, корректные коды, понятная логика для универсальной версии.
Почему проблема может быть не только в hreflang
Если трафик из другой страны не растёт, нельзя автоматически обвинять только hreflang. Иногда техническая разметка настроена нормально, а проблема находится в другом месте.
Контент
Перевод может быть формальным, без локальных терминов, цен, условий доставки и примеров.
Оффер
Пользователю может быть непонятно, работаете ли вы с его страной, валютой, документами и сроками.
Продажи
Заявки могут теряться из-за медленной обработки, языкового барьера или отсутствия удобного канала связи.
Если после технической проверки остаются вопросы по качеству контента, полезно отдельно оценить полноту материала, интент и устойчивость текста к устареванию. Для этого можно использовать подход из статьи про data-повреждённый контент.
Мини-ТЗ для разработчика
Нужно внедрить hreflang для языковых версий сайта на одном домене. Структура URL: /ru/, /en/, при необходимости x-default.
Для каждой страницы вывести полный набор link rel="alternate" hreflang в секции head или в XML Sitemap. Все URL должны быть абсолютными, отдавать 200 OK, быть индексируемыми и согласованными с canonical.
После внедрения предоставить отчёт: список проверенных URL, найденные ошибки, статус-коды, canonical, наличие self-reference и обратных ссылок между версиями.
FAQ по hreflang без поддоменов
Можно ли использовать hreflang без поддоменов?
Да. Языковые версии могут находиться в подпапках одного домена, например /ru/ и /en/. Важно, чтобы каждая версия имела отдельный URL.
Нужно ли добавлять x-default всегда?
Не всегда. Он полезен, если есть универсальная страница, страница выбора языка или версия для пользователей, которые не подходят ни под один явно заданный язык или регион.
Hreflang влияет на позиции?
Он не является простой кнопкой роста позиций. Его задача - помочь поисковой системе выбрать подходящую версию URL. Эффект зависит от качества страниц, индексации, спроса, ссылок, коммерческих факторов и конкуренции.
Что лучше: hreflang в HTML или sitemap?
Для небольшого сайта удобно использовать HTML-теги. Для большого сайта с множеством языковых страниц чаще удобнее sitemap, потому что им проще централизованно управлять.
Можно ли ставить hreflang на страницы с noindex?
Не стоит. Если страница закрыта от индексации, она не должна участвовать в нормальном hreflang-кластере для поисковой выдачи.
Нужен ли hreflang для регионов России?
Обычно нет, если все страницы на русском и отличаются только городом. Для таких задач чаще важнее региональная посадочная структура, коммерческие факторы, контакты, доставка, карта и геосигналы.
Как понять, что hreflang работает?
Проверьте, что теги видны в HTML или sitemap, ссылки взаимные, canonical не конфликтует, URL индексируемые, а в выдаче постепенно показываются релевантные версии для нужных языков и регионов.
Что делать дальше
Если вы не уверены, правильно ли настроены языковые версии, начните не с массовых правок, а с короткого технического аудита: URL, canonical, sitemap, robots, индексация, hreflang-кластеры и реальные страницы в выдаче.
Такой подход быстрее показывает, где проблема: в разметке, структуре сайта, контенте, оффере или обработке заявок.
