Техническое SEO

hreflang, який ламає мовні версії: п'ять способів зробити двомовний сайт одномовним

Сайт має дві мовні версії, перемикач працює, hreflang оголошено — і при цьому пошуковик бачить лише одну мову. Розбираємо п'ять реальних конфігурацій, у яких мовна розмітка формально є, а працює проти сайту.

9 сентября 2026 г.
5 мин чтения

Двомовний сайт — це не дві версії тексту, а домовленість із пошуковою системою: ось ця сторінка українською, ось її відповідник іншою мовою, показуйте кожному ту, яка йому підходить. Домовленість оформлюється атрибутом hreflang.

Проблема в тому, що зламаний hreflang виглядає точно як робочий: сайт відкривається, перемикач працює, у коді розмітка є. Помилка видно лише тоді, коли її цілеспрямовано шукати.

Нижче — п'ять реальних конфігурацій, які ми зустрічали в замірах українських сайтів.

1. hreflang заведено двічі, і два набори суперечать один одному

Найскладніший випадок із тих, що ми бачили. На магазині білизни мовна розмітка була додана двома різними механізмами одночасно — імовірно, темою й окремим розширенням, які не знали один про одного.

Перший набір оголошував ru-ru, uk-ua і pl, ведучи на кореневі адреси. Другий — ru, x-default і uk, ведучи на адреси з префіксом /ua/. При цьому за посиланням, оголошеним як uk-ua, віддавався російський контент, і те саме за польським.

Для пошуковика це не «дві думки», а суперечність, яку він розв'язує на власний розсуд — тобто найчастіше ігнорує обидва набори.

2. Код мови вказано неправильно

На магазині військового спорядження мовні версії реально існували — коренева й /ua/. У розмітці вони були оголошені як uk-UA і uk-RU.

Другий код не означає «російська для України»: перша частина — це мова, друга — регіон. uk-RU читається як «українська мова, регіон Росія». Правильний код для російськомовної версії українського сайту — ru-UA.

Додатковий штрих на тому ж сайті: <html lang="ru"> на кореневій версії, тобто атрибут мови сторінки суперечив тому, що оголошував hreflang.

Окремий різновид цієї помилки трапився у вибірці будівельних компаній: той самий код мови оголошено двічі — один сайт із восьми перевірених 8 серпня 2026 року.

3. Карта сайту містить лише одну мовну версію

Сайт двомовний, hreflang оголошено правильно — але в карті сайту адреси лише однієї мови. Друга версія існує для людини з перемикачем і не існує для краулера, який починає обхід із карти.

З реальних замірів:

  • магазин спецій: усі 590 унікальних адрес карти ведуть на російську версію, хоча в коді <html lang="uk"> і hreflang для української оголошено;
  • магазин інструменту: 100% адрес у карті — російськомовні, при тому що сайт за замовчуванням віддає українську;
  • магазин садової техніки: у карті лише україномовна гілка, російська версія заявлена в hreflang, але в карту не потрапила;
  • гуртовий магазин косметики: жодної російськомовної адреси в карті при повноцінній двомовності з перемикачем.

Закономірності в тому, яка саме мова «зникає», немає — і це найкращий доказ, що причина технічна, а не змістова: так налаштувався генератор карти, і ніхто не перевірив результат.

4. Переклад інтерфейсу без перекладу метатегів

Тонший випадок. Мовна версія існує, інтерфейс перекладено, <html lang="uk"> виставлено правильно — а <title> і meta description лишились мовою оригіналу.

Ми бачили це на магазині білизни: україномовна версія /ua мала перекладений інтерфейс і правильний атрибут мови, але метатеги на ній залишились російськими. Для пошуковика така сторінка виглядає як дублікат — саме за метатегами він насамперед і розрізняє сторінки.

Це класична помилка часткової локалізації: перекладають те, що видно в макеті, і не перекладають те, що видно лише у видачі.

5. hreflang є, а другої версії немає

Зворотний випадок: розмітка оголошує мовні версії, яких фізично не існує, — залишок від планів чи від шаблону. Пошуковик іде за посиланням, отримує 404 або редирект на ту саму сторінку, і перестає довіряти всій групі.

Окремий варіант — hreflang лише з одним записом на самого себе плюс x-default. Формально не помилка, практично — розмітка, яка не робить нічого: група з однієї сторінки ні з чим її не пов'язує.

Як перевірити свій сайт

  1. Відкрийте головну українською й подивіться код: знайдіть усі рядки з hreflang. Їх має бути стільки, скільки у вас мовних версій, плюс, за потреби, x-default.
  2. Перевірте коди мов: uk-UA для української, ru-UA для російськомовної версії українського сайту. Кожен код має траплятися рівно один раз.
  3. Відкрийте кожне посилання з hreflang і переконайтесь, що за ним відкривається саме та мова, яка оголошена, і що сторінка віддає 200, а не редирект.
  4. Перевірте зворотність: на сторінці, куди веде hreflang, має бути посилання назад на першу. Односторонні оголошення пошуковик не враховує.
  5. Порівняйте <html lang> із тим, що оголошує hreflang, — вони мають збігатися.
  6. Перевірте карту сайту: чи є в ній адреси обох мовних версій.
  7. Перевірте <title> і meta description на другій мовній версії — вони мають бути перекладені, а не успадковані.

Скільки це роботи

Сама розмітка — години: це блок посилань у <head>, який генерується з переліку мовних версій сторінки. Складніше буває розгребти ситуацію, коли розмітку ставлять одночасно тема й розширення: спершу треба знайти обидва джерела й вимкнути одне.

Найдорожчий пункт зазвичай четвертий — переклад метатегів на всіх сторінках другої мовної версії. Це вже не технічна робота, а контентна, і на каталозі в тисячі позицій вона потребує або перекладача, або автоматизації з подальшою вибірковою перевіркою.

Межі цих даних

Цифри — це заміри на конкретні дати (серпень 2026 року), назв сайтів ми свідомо не наводимо. Ринкова вибірка будівельних компаній, з якої взято приклад із подвоєним кодом мови, складалася з восьми сайтів — тож частка «1 із 8» характеризує саме ці сайти, а не ринок.

Теги

SEO

🤔Вам понравилась статья?

Ваше мнение помогает нам создавать лучший контент

Поделитесь с друзьями

Нашли что-нибудь полезное? 🚀

Помогите другим узнать это — поделитесь статьей в социальных сетях

https://lionex.com.ua/blog/hreflang-yakyj-lamaye-movni-versiyi

💚 Спасибо, что помогаете нам расти

Владислав Чистяков

Пише про те, що робить руками: інтернет-магазини на OpenCart, застосунки на Next.js, інтеграції та швидкість сайтів. У статтях — заміри й перевірки, які читач може повторити на своєму проєкті, а не загальні поради. Комерційна розробка з 2015 року.

Получайте лучшие статьи на почту

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

Мы уважаем вашу конфиденциальность. Отписаться можно в любой момент.

Похожие статьи

Все статьи
Карта сайту, яка бреше: 25 537 записів на 6 857 адрес
Техническое SEO

Карта сайту, яка бреше: 25 537 записів на 6 857 адрес

Карта сайту або порожня, або роздута дублями в 3–4 рази, або веде лише на одну мовну версію з двох. Ми перевірили десятки українських магазинів і зібрали типові дефекти з конкретними цифрами — від файлу на 0 байт до 33% адрес, що ведуть не на той товар.

6 мин
9 сент.
Читать дальше
Хто взагалі щось міряє: лічильники аналітики на 102 українських сайтах
Техническое SEO

Хто взагалі щось міряє: лічильники аналітики на 102 українських сайтах

Meta Pixel стоїть у 41% перевірених сайтів, тег Google Ads — у 26%, а 27% з тих, де ми змогли це перевірити, не мають на головній жодного лічильника. Розбираємо, що це означає для власника, який платить за рекламу.

5 мин
9 сент.
Читать дальше
82 зі 102 українських сайтів без розмітки хлібних крихт: що показав вимір 19 ніш
Техническое SEO

82 зі 102 українських сайтів без розмітки хлібних крихт: що показав вимір 19 ніш

7–8 серпня 2026 ми зовні виміряли 102 українських сайти в 19 нішах — від фітнесу до ювелірних магазинів. Розмітки хлібних крихт немає у 80% з них, структурованих даних узагалі — у 43%. Розбираємо цифри по нішах і що вони насправді означають.

6 мин
9 сент.
Читать дальше