SEONER
website

Как правильно сделать многоязычный сайт: ошибки hreflang

9 мин

Правильно построенный многоязычный сайт держится на трёх вещах: отдельный URL для каждого языка, корректные hreflang-атрибуты, связывающие эти URL между собой, и контент, реально адаптированный под каждый язык, а не дословно переведённый. Разберём, как построить всё это на практике и каких ошибок чаще всего избегают неправильно.

Что такое многоязычный сайт и почему одного перевода недостаточно

Многоязычный сайт — это не один и тот же контент, скопированный на разные языки. Аудитория каждого языка ищет по-своему, пользуется разными ИИ-платформами (для русскоязычной аудитории Яндекс важен не меньше Google), ожидает контента, адаптированного под свой контекст. Поэтому правильный многоязычный сайт состоит из двух слоёв: технического (структура URL, hreflang) и контентного (текст, реально адаптированный под каждый язык) — и оба одинаково важны.

Что такое hreflang и как он работает

Hreflang — это тег <link rel="alternate" hreflang="..."> (или отдельный блок в sitemap), который сообщает поисковику: "русская версия этой страницы находится по этому адресу, английская — по тому". На основе этого сигнала Google и Яндекс показывают посетителю версию, соответствующую его языку или региону. Без hreflang может показаться не та языковая версия, либо версии начинают конкурировать друг с другом в поиске — и обе показывают результат хуже.

Частые ошибки в hreflang

  • Односторонняя ссылка — страница A ссылается на страницу B через hreflang, но B не ссылается обратно на A. Поисковик может полностью проигнорировать такой сигнал — связь должна быть двусторонней.
  • Отсутствие self-reference — каждая страница, включая саму себя, должна ссылаться сама на себя через hreflang (например страница /ru/ указывает на саму себя с hreflang="ru"). Это упускают на удивление часто.
  • Несовпадение слагов — если переведённой версии ещё нет или hreflang указывает не на тот адрес, результат — 404 или неверная страница (см. реальный пример ниже).
  • Отсутствие x-default — без запасной версии для несовпадающей аудитории поисковик фактически угадывает, какую страницу показать.
  • Ошибка в коде языкаhreflang="en" вместо, например, некорректного кода — Google и Яндекс полностью игнорируют такой тег.

Реальный пример: ошибка hreflang на нашем собственном сайте

Это не теоретический риск — мы столкнулись с этим на практике. На раннем этапе каждая языковая версия раздела статей получала собственный, естественный для своего языка URL (например /ru/articles/chto-takoe-seo и /en/articles/what-is-seo), но поскольку система hreflang не опиралась на единый общий идентификатор для связи версий между собой, часть hreflang-ссылок указывала на несуществующие адреса — это приводило к ошибке 404. Решение — добавить в метаданные каждой статьи поле translationKey, одинаковое для всех переводов, и по этому ключу автоматически находить реальный, существующий слаг каждой языковой версии. Такой подход позволяет каждому языку сохранять свой естественный URL и при этом гарантирует корректные, взаимные hreflang-связи.

Как выбрать структуру URL

СтруктураПримерКогда подходит
Подпапкаsite.com/ru/Рекомендуется для большинства компаний — SEO-вес домена делится между всеми языками
Поддоменru.site.comДля крупных проектов с отдельной командой или инфраструктурой на регион
Отдельный доменsite.comТолько при полностью независимой брендовой стратегии по регионам

Для большинства малого и среднего бизнеса подпапка — самое простое и эффективное решение: настройка технически проще, а общий уровень доверия к домену не дробится.

Как на самом деле готовить контент под каждый язык

Самая частая ошибка — написать текст на одном языке, а затем дословно перевести на остальные. Это вредит по двум причинам. Во-первых, у каждого языка своя естественная поисковая формулировка — например, русскоязычная аудитория по всему СНГ чаще ищет "SEO продвижение", а не буквальный перевод английского термина; дословный перевод эту разницу стирает. Во-вторых, ИИ-инструменты всё лучше распознают текст, "звучащий как перевод", и могут оценивать его ниже. Правильный подход — исследовать и писать каждую языковую версию отдельно, с нуля, под поисковое поведение именно этого языка, а затем связывать версии общим translation key — а не переводить и адаптировать задним числом.

Как проверить настройку многоязычного сайта

Отчёт "Международное таргетирование" в Google Search Console автоматически показывает ошибки hreflang — некорректные коды, односторонние ссылки, несовпадающие адреса. Яндекс.Вебмастер также стоит проверять отдельно, поскольку индексация в Яндексе не всегда совпадает с Google. Дополнительно можно вручную открыть исходный код страницы (view-source:) и проверить теги <link rel="alternate"> — каждый указанный адрес должен реально открываться и ссылаться обратно.

Итог

Создание многоязычного сайта — это не только перевод, а работа в два слоя: правильная техническая структура (URL, hreflang) и контент, по-настоящему адаптированный под каждый язык. Ошибки hreflang приводят к медленной, малозаметной потере трафика, поэтому их стоит проверять и после запуска сайта. Услуга по созданию сайта от SEONER изначально строит многоязычные сайты на правильной технической основе — подробнее о фундаменте такого сайта можно прочитать в статье как создать сайт для бизнеса.

Есть похожая проблема? Получите бесплатную консультацию

Оставить заявку

Частые вопросы

Hreflang — HTML-атрибут, который сообщает Google и Яндексу, какую языковую или региональную версию страницы показывать какой аудитории. Без него поисковик может показать не ту языковую версию не той аудитории или посчитать версии дублирующим контентом.

Для большинства компаний подпапка (например site.com/ru/) — самый разумный выбор: весь SEO-вес домена (ссылки, доверие) распределяется между языковыми версиями, а настройка технически проще. Поддомен или отдельный домен обычно оправданы только для крупных проектов с отдельными региональными командами.

Нет, и часто не должны. У каждого языка своя естественная поисковая формулировка (например /ru/chto-takoe-seo и /en/what-is-seo), поэтому слаги могут и должны отличаться. Важно другое — общий внутренний идентификатор (translation key), связывающий версии, и корректные hreflang-теги между ними.

x-default определяет, какую версию показать посетителю, чей язык или регион не совпадает ни с одним из указанных в hreflang вариантов — обычно это версия по умолчанию или страница выбора языка. Не обязателен, но рекомендуется на любом многоязычном сайте — без него несовпадающая аудитория попадает на случайную версию.