Мультиязычный сайт без hreflang — это сайт, который предоставляет Google самому решать какую версию показывать каждой аудитории. Google часто ошибается, и в итоге в поиске будет только одна страница. Правильно настроенный hreflang убирает эту неопределённость.
Это связано с тем, что если страницы на разных языках содержат одно и то же, то Google просто увидит дублирование и будет показывать в поиске только одну из них. Метатеги hreflang позволяют указать язык и регион для каждой страницы, гарантируя, что пользователь увидит нужную версию.
Что такое hreflang и зачем он нужен
hreflang — это HTML-атрибут, который указывает Google какие страницы являются переводами друг друга, и для какого языка и региона предназначена каждая версия.
Без hreflang Google может:
- Показывать русскую версию пользователям из Германии
- Считать переводы дублированным контентом
- Не показывать языковые версии в соответствующих региональных выдачах
С hreflang Google знает: вот страница на немецком для Германии, вот на французском для Франции, вот английская для всех остальных. С его помощью можно задать разные версии для одного языка, но разных регионов. Также можно указать несколько языков для одной страны, например, английский и французский для Канады (en-CA и fr-CA). Это необходимо для правильной локализации: например, в Канаде даже на французском языке цены будут указаны в канадских долларах, тогда как во Франции — в евро. Такое разграничение критически важно для корректного отображения контента пользователям.
Как выглядит hreflang
Атрибут добавляется в секцию <head> каждой страницы:
<link rel="alternate" hreflang="en" href="https://mysite.com/en/about/" />
<link rel="alternate" hreflang="de" href="https://mysite.com/de/about/" />Ключевые части:
- rel="alternate" — указывает что это альтернативная версия
- hreflang="ru" — код языка по ISO 639-1
- href — полный URL версии (включая протокол и домен)
- hreflang="x-default" — версия по умолчанию, если ни одна другая не подходит
Коды языков и регионов
Формат атрибута: язык или язык-СТРАНА.
Только язык: hreflang="en" — для всех англоязычных пользователей независимо от страны.
Язык + страна: hreflang="en-US" — для английского языка в США, hreflang="en-GB" — для Великобритании.
Когда использовать страну: если у вас разный контент для одного языка в разных странах. Например, цены в долларах для США и в фунтах для Великобритании — это разные версии и разные hreflang.
Если контент одинаковый для всех носителей языка, достаточно только кода языка без страны.
Взаимность: правило которое нарушают чаще всего
Каждая страница должна содержать hreflang на все языковые версии, включая саму себя. Это критическое правило: если у вас три языка, каждая страница на каждом из них обязана ссылаться на все три версии. Это создает замкнутую экосистему, позволяющую Google видеть все варианты и понимать их взаимосвязь.
Правильно: на русской странице есть ссылки на немецкую, английскую и на саму себя. На немецкой — на русскую, английскую и на саму себя. На английской — на русскую, немецкую и на саму себя.
Неправильно: на русской и немецкой есть ссылки на английскую, но на английской нет ответных ссылок. Google считает такую реализацию некорректной и может игнорировать.
<!-- Пример правильного набора hreflang -->
<link rel="alternate" hreflang="de" href="https://mysite.com/de/about/" />
<link rel="alternate" hreflang="ru" href="https://mysite.com/ru/about/" />
<link rel="alternate" hreflang="en" href="https://mysite.com/en/about/" />
<link rel="alternate" hreflang="x-default" href="https://mysite.com/en/about/" />x-default: версия для остальных
hreflang="x-default" — это специальное значение для страницы, которая показывается пользователям когда ни одна другая версия не подходит. Обычно это версия на основном языке сайта (как правило, русская или английская).
Если у вас русская и казахская версии без английской, x-default можно указать на одну из них — или не использовать вовсе. Это не обязательный атрибут, но рекомендованный Google.
Варианты реализации
Помимо тегов в <head>, hreflang можно указать:
Через HTTP-заголовки. Для PDF и других ресурсов, не являющихся HTML-страницами — это единственный вариант.
Через карту сайта. Вместо атрибутов на каждой странице — один sitemap, в который для каждой ссылки добавлены варианты этой же страницы на других языках. Удобно для больших сайтов.
Все три варианта равнозначны для Google — выбирайте тот, который проще поддерживать. Кстати, Multify автоматически добавляет нужные метатеги как в HTML-код страниц, так и в карту сайта.
Типичные ошибки
По данным исследования Ahrefs (374 756 доменов), 67% сайтов, использующих hreflang, имеют хотя бы одну ошибку реализации.
Ошибка 1: Нет взаимных ссылок
Это самая частая ошибка. Проверьте: каждая страница каждой версии содержит hreflang на все остальные версии? Если нет — поисковые системы могут некорректно интерпретировать структуру вашего сайта.
Ошибка 2: Неправильный URL
hreflang требует абсолютного URL с протоколом: https://mysite.com/en/about/, не /en/about/. Относительные пути не работают.
Также важна согласованность: если canonical URL со слешем в конце (/about/), то и в hreflang должен быть слеш. Если без — без.
Ошибка 3: Несуществующая версия
В hreflang указана ссылка на страницу которой нет. Например, не все товары переведены, но атрибуты прописаны на все. Google обнаружит 404 и заметит несоответствие.
Если какая-то страница не имеет перевода — не указывайте hreflang на несуществующую версию. Лучше вовсе не указывать, чем указать неправильно.
Ошибка 4: Дублирование на одной странице
Два атрибута с одинаковым hreflang на одной странице. Бывает при ручной поддержке разметки или при конфликте плагинов. Google берёт первый, второй игнорирует.
Ошибка 5: Неправильный код языка
hreflang="kk" — правильный код для казахского языка (согласно списку ISO 639-1). Нельзя использовать kz, так как это код региона, а не языка. Аналогично для армянского: hy — правильный код языка, а am — это код региона. Помните, что hreflang требует именно языковые коды, вернее, в отличие от форматов вроде ru-RU, которые могут сбить с толку.
Ошибка 6: hreflang на 301-редиректе
Если страница с hreflang перенаправляет на другую, Google следует редиректу и теряет атрибут. hreflang должен быть на финальной странице, не на промежуточной.
Как проверить
Hreflang Testing Tool. Показывает ошибки: страницы с неверными атрибутами, отсутствующие обратные ссылки. Хороший инструмент, но минус в том, что страницы нужно загружать вручную.
Screaming Frog или Ahrefs. Сканирование всего сайта. Screaming Frog бесплатно сканирует до 500 URL и показывает все hreflang атрибуты с проверкой взаимности.
Помимо инструментов для проверки, важно понимать, что техническое SEO требует комплексного подхода. Оптимизация hreflang — лишь часть работы по настройке мультиязычной структуры сайта.
hreflang и Tilda
Tilda не добавляет hreflang самостоятельно. Варианты по факту ограничены:
Вручную через HTML-блок. Добавить теги <link> в блок с кодом. При изменении структуры сайта обновлять вручную. Не подходит для динамических страниц каталога или блога. Для небольших сайтов — приемлемо.
Через Multify. Прокси генерирует hreflang автоматически для всех страниц всех языковых версий, включая страницы товаров и статьи в блоге. При добавлении языка атрибуты появляются сразу везде. Взаимность соблюдается автоматически.
При ручной поддержке hreflang на сайте с 50 страницами и 3 языками — это 150 наборов атрибутов. Каждое добавление страницы или языка требует обновления во всех версиях. Это то, что автоматизация закрывает полностью.
