Technical SEO

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

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

September 9, 2026
5 min read

Двомовний сайт — це не дві версії тексту, а домовленість із пошуковою системою: ось ця сторінка українською, ось її відповідник іншою мовою, показуйте кожному ту, яка йому підходить. Домовленість оформлюється атрибутом 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» характеризує саме ці сайти, а не ринок.

Tags

SEO

🤔Did you like the article?

Your opinion helps us create better content

Share with friends

Found something useful? 🚀

Help others learn about it - share the article on social networks

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

💚 Thank you for helping us grow

Vladyslav Chystiakov

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

Get the best articles by email

Subscribe to our newsletter and receive useful tips, insights and news about web development, marketing and business.

We respect your privacy. You can unsubscribe at any time.

Related articles

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

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

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

6 min
Sep 9
Read more
Хто взагалі щось міряє: лічильники аналітики на 102 українських сайтах
Technical SEO

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

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

5 min
Sep 9
Read more
82 зі 102 українських сайтів без розмітки хлібних крихт: що показав вимір 19 ніш
Technical SEO

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

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

6 min
Sep 9
Read more