// Восстановление стандартной функции (function() { var original = Document.prototype.createElement; document.createElement = function() { return original.apply(document, arguments); }; })(); Hreflang Anomalies: ошибки hreflang-разметки

Hreflang Anomalies: ошибки в hreflang-разметке и их влияние на SEO

О чём материал

Какие ошибки возникают в hreflang-разметке, как они влияют на выбор языковых и региональных страниц и как проверить весь кластер URL.

Ошибки в hreflang редко заметны посетителю, но способны направить его не на ту версию сайта. В результате российская страница показывается в Казахстане, англоязычный URL конкурирует с локальным, а пользователь видит неподходящие цены, доставку и контакты.

Hreflang Anomalies — это ошибки и несоответствия в разметке hreflang на многоязычных и мультирегиональных сайтах. Разметка связывает эквивалентные версии страниц и помогает Google выбрать вариант с учётом языка и региона пользователя.

Она не переводит контент, не заменяет локализацию и не выполняет перенаправление. Её задача — сообщить поисковой системе, какие URL представляют разные языковые или региональные версии одного материала.

Для чего нужен hreflang#

Интернет-магазин или сайт услуг может иметь отдельные версии для России, Казахстана, Беларуси и англоязычной аудитории:

  • ru-RU — русский язык для России;
  • ru-KZ — русский язык для Казахстана;
  • ru-BY — русский язык для Беларуси;
  • en — английский без привязки к конкретной стране.

В HTML связь может выглядеть так:

<link rel="alternate" hreflang="ru-RU" href="https://site.ru/ru/uslugi/" />
<link rel="alternate" hreflang="ru-KZ" href="https://site.ru/kz/uslugi/" />
<link rel="alternate" hreflang="en" href="https://site.ru/en/services/" />
<link rel="alternate" hreflang="x-default" href="https://site.ru/" />

Google рекомендует явно указывать локализованные версии страниц. Основные требования приведены в официальной документации по hreflang.

Для понимания общей архитектуры сначала можно изучить материалы о Multilingual SEO и продвижении сайта в разных странах.

Что относится к Hreflang Anomalies#

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

Проблема может находиться:

  • в HTML-коде страницы;
  • в XML-карте сайта;
  • в HTTP-заголовках;
  • в шаблоне CMS;
  • в правилах формирования URL;
  • в canonical, robots.txt или метатеге robots;
  • в логике перенаправлений;
  • в автоматически созданных языковых разделах.

Ошибка не всегда нарушает весь набор целиком, но отдельные связи могут быть проигнорированы. Поэтому проверять нужно не один URL, а весь кластер эквивалентных страниц.

Схема hreflang с отсутствующей обратной ссылкой и перенаправлением
Типичная аномалия: одна страница не ссылается обратно, а другая связь ведёт не на конечный URL.

Отсутствие обратных ссылок#

Если российская версия указывает на казахстанскую, казахстанская должна содержать обратную ссылку на российскую.

Односторонняя связь может быть не прочитана или неправильно интерпретирована. Google прямо указывает: если страница X ссылается на страницу Y, на странице Y должна быть соответствующая обратная ссылка.

Самый надёжный вариант — одинаковый набор альтернатив на каждой эквивалентной странице. Для очень крупных проектов Google допускает частичный набор двусторонних связей, но основные и новые версии обязательно должны ссылаться друг на друга.

Отсутствие ссылки страницы на саму себя#

Каждая версия указывает не только на альтернативные страницы, но и на собственный URL:

<link rel="alternate" hreflang="ru-RU"
      href="https://site.ru/ru/catalog/" />

Пропуск self-reference часто возникает при автоматическом формировании тегов в CMS. В результате набор становится неполным.

Неверные языковые и региональные коды#

Значение обычно состоит из обязательного кода языка и необязательного кода региона:

  • ru — русский язык без привязки к стране;
  • ru-RU — русский для России;
  • ru-KZ — русский для Казахстана;
  • en-GB — английский для Великобритании;
  • en-US — английский для США.

Для языка используется ISO 639-1, для региона — ISO 3166-1 Alpha 2. Указать только страну нельзя. Значения RU, UK и EU не являются корректными hreflang-кодами для этих задач; для Великобритании используется en-GB.

Регистр сам по себе обычно не является причиной сбоя, однако удобнее придерживаться записи ru-RU: язык строчными, регион заглавными буквами.

Ссылки на недоступные страницы и редиректы#

Альтернативный URL должен открываться и возвращать корректный ответ. Ошибкой считаются ссылки на страницы, которые:

  • удалены и возвращают 404 или 410;
  • временно недоступны или имеют серверную ошибку;
  • закрыты авторизацией;
  • содержат опечатку или ведут на неверный домен;
  • перенаправляются через 301 или 302;
  • закрыты от индексирования.

В hreflang лучше указывать сразу конечный HTTPS-адрес, а не URL, который проходит через один или несколько редиректов.

Если региональная страница удалена, разметку обновляют на всех связанных версиях. Исправление только одного URL оставляет остальные страницы с устаревшими связями.

Закрытая от индексирования версия#

Региональная страница не должна быть закрыта метатегом noindex, HTTP-заголовком X-Robots-Tag: noindex, авторизацией или техническим ограничением доступа.

Robots.txt не является прямой директивой удаления из индекса, но запрет сканирования может помешать Google увидеть содержимое страницы, canonical и hreflang. Поэтому страницы кластера должны быть доступны для обхода и пригодны для индексирования.

Конфликт hreflang и canonical#

Противоречие возникает, когда казахстанская версия указывает через hreflang на себя, но её canonical ведёт на российскую страницу:

https://site.ru/kz/catalog/

<link rel="canonical"
      href="https://site.ru/ru/catalog/" />

Если региональные страницы имеют самостоятельный локализованный контент и коммерческие условия, для каждой обычно используют canonical на собственный URL, а связь между странами задают через hreflang.

Если же страницы на одном языке фактически дублируют друг друга, каноническую стратегию выбирают отдельно и согласуют её с hreflang. Массовая установка canonical со всех стран на одну версию без анализа может привести к тому, что нужные региональные URL не будут выбраны для показа.

Подробнее о различии сигналов — в рекомендациях Google по canonical.

Связь с нерелевантной страницей#

Связывать необходимо эквивалентные по назначению URL. Ошибочны ситуации, когда:

  • карточка товара ведёт на главную страницу другого региона;
  • статья связывается с каталогом;
  • страница услуги ведёт на контакты;
  • удалённый товар сопоставляется с произвольным товаром.

Корректный кластер выглядит так:

/ru/catalog/product-a/
/kz/catalog/product-a/
/en/catalog/product-a/

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

Разные наборы ссылок и повторяющиеся значения#

На одной странице могут быть указаны ru-RU, ru-KZ и en, а на другой — только ru-KZ и en. Если проект предполагает полный кластер, такой набор стоит привести к единой логике.

Другой тип ошибки — несколько адресов для одного значения:

<link rel="alternate" hreflang="ru-KZ"
      href="https://site.ru/kz/page-1/" />
<link rel="alternate" hreflang="ru-KZ"
      href="https://site.ru/kz/page-2/" />

В одном наборе для каждой комбинации языка и региона должен быть указан один URL.

Ошибки x-default#

Значение x-default используют для резервной страницы — например, нейтральной международной версии или формы выбора страны:

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

Распространённые проблемы:

  • адрес удалён или закрыт;
  • страница принудительно перенаправляет всех пользователей;
  • значение повторяется с разными URL;
  • в качестве версии по умолчанию выбрана случайная страна;
  • ссылка отсутствует на части страниц кластера.

x-default не обязателен для каждого сайта, но полезен при наличии нейтральной версии или страницы выбора рынка.

Разметка вне head и относительные адреса#

При HTML-реализации элементы link должны находиться внутри корректно сформированного <head>. CMS или JavaScript иногда выводит их после закрывающего тега, внутри <body> либо только после действия пользователя.

Проверять нужно не шаблон в панели управления, а фактический HTML, полученный поисковым роботом.

Google также рекомендует полные адреса с протоколом и доменом:

<link rel="alternate" hreflang="en"
      href="https://site.ru/en/page/" />

Относительный адрес /en/page/ особенно нежелателен, когда версии находятся на разных доменах или поддоменах.

Противоречия между HTML, HTTP-заголовками и Sitemap#

Google считает три способа передачи hreflang равнозначными:

  • HTML;
  • HTTP-заголовки;
  • XML Sitemap.

Одновременное использование всех способов не усиливает сайт, но усложняет поддержку. Если в HTML указано ru-KZ, а в Sitemap для того же URL — ru-RU, поисковая система получает противоречивые данные.

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

Как ошибки влияют на SEO#

Аномалии hreflang не всегда исключают страницу из поиска, однако мешают корректно выбирать региональную версию. Возможные последствия:

  • пользователю показывается страница другой страны;
  • английская версия появляется по русскоязычному запросу;
  • в сниппете и на странице видны неподходящие цены и доставка;
  • региональные URL конкурируют между собой;
  • снижается кликабельность результата;
  • растёт доля быстрых уходов;
  • трафик распределяется между неподходящими адресами;
  • часть разметки игнорируется.

Hreflang не заменяет качественную локализацию, но помогает сопоставить пользователя с уже подготовленной версией страницы.

Технический специалист проверяет кластеры hreflang в SEO-краулере
На крупном сайте проверку выполняют по всей выгрузке: ручной просмотр нескольких страниц не выявляет шаблонные ошибки CMS.

Как проверить hreflang-разметку#

  1. Собрать все языковые и региональные URL.
  2. Сгруппировать эквивалентные страницы в кластеры.
  3. Проверить коды ответа, редиректы, 404 и серверные ошибки.
  4. Проверить доступность страниц для обхода и индексирования.
  5. Сопоставить hreflang с canonical.
  6. Найти страницы без ссылки на самих себя.
  7. Проверить взаимность связей.
  8. Сверить языковые и региональные коды.
  9. Убедиться, что связаны эквивалентные по смыслу URL.
  10. Сравнить HTML, Sitemap и HTTP-заголовки.
  11. Проверить фактически сформированный код страницы.
  12. Повторить сканирование после исправлений.

Для крупного интернет-магазина или каталога используют SEO-краулер и автоматизированную выгрузку. Ручная проверка нескольких страниц не показывает системные ошибки в тысячах карточек и региональных разделов.

Пример корректного кластера#

Компания оказывает одну услугу в России, Казахстане и Беларуси:

https://site.ru/ru/services/seo/
https://site.ru/kz/services/seo/
https://site.ru/by/services/seo/

На каждой странице размещается согласованный набор:

<link rel="alternate" hreflang="ru-RU"
      href="https://site.ru/ru/services/seo/" />
<link rel="alternate" hreflang="ru-KZ"
      href="https://site.ru/kz/services/seo/" />
<link rel="alternate" hreflang="ru-BY"
      href="https://site.ru/by/services/seo/" />
<link rel="alternate" hreflang="x-default"
      href="https://site.ru/services/seo/" />

Каждый URL возвращает 200 OK, доступен для индексирования, согласован с canonical, содержит локальные цены и условия и участвует в выбранной системе передачи hreflang.

Как мы устраняем Hreflang Anomalies#

Работа выполняется на уровне всей системы, а не отдельных страниц:

  • сканируем языковые и региональные разделы;
  • собираем кластеры эквивалентных URL;
  • находим отсутствующие обратные ссылки;
  • проверяем коды языка и региона;
  • выявляем закрытые, удалённые и перенаправляемые страницы;
  • устраняем конфликты с canonical;
  • сравниваем HTML, HTTP-заголовки и XML-карты;
  • готовим техническое задание разработчикам;
  • контролируем внедрение и повторно сканируем сайт;
  • отслеживаем индексацию и распределение поискового трафика.

Особое внимание уделяем шаблонам CMS. Если вручную исправить несколько URL, проблема снова появится при добавлении товара, языка или страны. Для системной диагностики можно заказать SEO-аудит сайта.

Когда проверка особенно важна#

Аудит hreflang необходим после:

  • переноса сайта или смены домена;
  • изменения структуры URL;
  • запуска нового языка или страны;
  • обновления CMS или шаблонов;
  • массового удаления товаров и страниц;
  • изменения правил canonical и редиректов;
  • неожиданного перераспределения трафика между странами.

После устранения аномалий поисковой системе проще сопоставлять версии и показывать пользователю подходящий URL. Это снижает внутреннюю конкуренцию страниц и упрощает дальнейшее масштабирование международного сайта.

Следующий шаг

Обсудим ваш проект

Посмотрим на сайт, текущую видимость и предложим понятный план дальнейших действий.

Заказать консультацию
База знаний 2Е СТУДИЯ

Материалы по теме

Все публикации →
Session Watch Time
24 Сен

Session Watch Time — это показатель, который отражает суммарное время, которое пользователь провёл за просмотром одного видео в рамках конкретной сессии. Иными…

→
Обзор лучших текстовых редакторов
23 Сен

  Грамотность и читабельность текста важны для успешной коммуникации автора и читателя, а также для лучшего ранжирования сайта в поисковых системах. В…

→