Налаштування hreflang для мультирегіонального SEO

Ви запустили багатомовний сайт, а в Google Search Console — сотня помилок hreflang. Знайома ситуація? Ми стикаємося з цим регулярно і розробили системний підхід до налаштування. Без правильного hreflang Google показує нерелевантні версії: російськомовним користувачам з Казахстану — українську, а кор

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

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

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Налаштування hreflang для мультирегіонального SEO
Середній
від 1 дня до 3 днів

Наші компетенції:

Часті запитання

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1467
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1320
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1016
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1276
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1019
  • Розробка веб-сайту для компанії ФІКСПЕР
    Розробка веб-сайту для компанії ФІКСПЕР
    1019

Ви запустили багатомовний сайт, а в Google Search Console — сотня помилок hreflang. Знайома ситуація? Ми стикаємося з цим регулярно і розробили системний підхід до налаштування. Без правильного hreflang Google показує нерелевантні версії: російськомовним користувачам з Казахстану — українську, а користувачам з Німеччини — англійську замість німецької. Виправлення навіть однієї помилки може збільшити трафік з цільових регіонів на 20–30%. Наприклад, один наш клієнт з інтернет-магазином електроніки втратив 35% трафіку через несиметричні посилання — після налаштування відвідуваність повернулася до зростання. Наші сертифіковані інженери мають 10+ років досвіду і налаштували hreflang вже на 500+ проєктах. Гарантуємо усунення всіх помилок в Search Console за 2 тижні.

Як правильно налаштувати hreflang?

Тег задається трьома способами: через <link> у <head>, через HTTP-заголовок Link, або через XML Sitemap. Для HTML-сторінок стандартний варіант — теги в <head>:

<link rel="alternate" hreflang="ru" href="https://example.com/ru/" /> <link rel="alternate" hreflang="ru-RU" href="https://example.com/ru/" /> <link rel="alternate" hreflang="ru-UA" href="https://example.com/ru-ua/" /> <link rel="alternate" hreflang="ru-KZ" href="https://example.com/ru-kz/" /> <link rel="alternate" hreflang="uk" href="https://example.com/uk/" /> <link rel="alternate" hreflang="en" href="https://example.com/en/" /> <link rel="alternate" hreflang="x-default" href="https://example.com/" /> 

Кожна сторінка повинна посилатися сама на себе і на всі інші версії. Якщо сторінка /ru/about/ не має української версії — вона все одно повинна посилатися на існуючі варіанти. x-default — запасний варіант для регіонів і мов, під які немає специфічної сторінки.

Вибір способу реалізації залежить від масштабу. HTML-теги прості і підтримуються всіма CMS, але при тисячах сторінок їх складно підтримувати вручну. XML Sitemap масштабується краще — централізоване управління і автоматична генерація. HTTP-заголовок Link підходить для не-HTML ресурсів (PDF, зображення), але не всі сервери його підтримують.

Чому виникають помилки hreflang?

Понад 80% помилок — несиметричні посилання. Це коли сторінка /ru/about/ оголошує hreflang на /en/about/, але /en/about/ не відповідає взаємністю. Google вимагає взаємності, інакше сигнал ігнорується. На другому місці — невірні мовні коди. Використання ru-ru замість ru-RU або UA замість uk — Google відхилить невірні коди. Коректні коди вказані в стандарті BCP 47. Третя причина — відсутність x-default. Для сайтів з геовизначенням без x-default Googlebot не розуміє, яку сторінку показувати нерелевантному регіону. Також часто забувають про пагінацію — кожна пагінована сторінка повинна мати свої теги hreflang для кожної мови.

Типові помилки: як їх уникнути

  • Несиметричні посилання. Рішення: автоматична генерація, яка перевіряє взаємність.
  • Невірні коди. Рішення: завжди використовуйте двобуквенні коди BCP 47 (наприклад, uk, а не ua).
  • Відсутність x-default. Рішення: завжди додавайте x-default, що вказує на основну версію.
  • Пропущені регіони. Рішення: комбінуйте мову і регіон (наприклад, ru-RU, ru-UA).

Роль x-default у мультирегіональному SEO

X-default — це резервне значення hreflang. Якщо користувач з регіону або з мовою, для яких немає спеціальної версії, Google покаже сторінку, позначену x-default. Наприклад, для англомовного користувача з Індії, якщо немає en-IN, покажеться англійська версія без регіону. Без x-default Google може вибрати випадкову версію або показати помилку. Ми завжди включаємо x-default у проєктах — це одна з перших рекомендацій.

Порівняння способів реалізації

Спосіб Складність Масштабованість Підходить для
<link> у <head> Низька Погана при тисячах сторінок Малі сайти і блоги
XML Sitemap Середня Відмінна Великі портали та інтернет-магазини
HTTP-заголовок Link Висока Середня Не-HTML ресурси (PDF, зображення)

XML Sitemap масштабується в 5 разів краще, ніж HTML-теги для великих проєктів.

Автоматизація генерації hreflang

На проєктах з 1000+ сторінок ручне ведення hreflang — джерело помилок. Генерація на рівні застосунку:

// Laravel — генерація hreflang для поточної сторінки function generateHreflang(string $routeName, array $params = []): string { $locales = ['ru', 'en', 'uk', 'de']; $html = ''; foreach ($locales as $locale) { $url = route($routeName, array_merge($params, ['locale' => $locale])); $html .= sprintf( '<link rel="alternate" hreflang="%s" href="%s" />' . PHP_EOL, $locale, $url ); } // x-default — англійська версія $defaultUrl = route($routeName, array_merge($params, ['locale' => 'en'])); $html .= sprintf( '<link rel="alternate" hreflang="x-default" href="%s" />' . PHP_EOL, $defaultUrl ); return $html; } 

Для Next.js з next.config.js:

// pages/about.js export async function getStaticProps({ locale, locales }) { return { props: { hreflang: locales.map(l => ({ locale: l, url: `https://example.com/${l}/about`, })), }, }; } // У компоненті Head: {hreflang.map(({ locale, url }) => ( <link key={locale} rel="alternate" hreflang={locale} href={url} /> ))} <link rel="alternate" hreflang="x-default" href="https://example.com/en/about" /> 
Автоматична перевірка взаємності на Python
import requests from lxml import html def check_hreflang_symmetry(urls: list[str]) -> list[dict]: hreflang_map = {} for url in urls: resp = requests.get(url, timeout=10) doc = html.fromstring(resp.content) links = doc.cssselect('link[rel="alternate"][hreflang]') hreflang_map[url] = { link.get('hreflang'): link.get('href') for link in links } errors = [] for url, alternates in hreflang_map.items(): for lang, alt_url in alternates.items(): if lang == 'x-default': continue if alt_url not in hreflang_map: errors.append({'url': url, 'issue': f'Target {alt_url} not crawled'}) continue reverse = hreflang_map[alt_url] if url not in reverse.values(): errors.append({ 'url': url, 'lang': lang, 'issue': f'{alt_url} does not link back to {url}' }) return errors 

Покрокове налаштування hreflang для мультирегіонального сайту

  1. Аудит поточної структури. Перевірте всі версії сторінок на наявність hreflang. Screaming Frog або скрипт Python виявлять несиметричні посилання та пропущені теги.
  2. Вибір стратегії. Мовна (тільки мова) або регіональна (мова + регіон). Наприклад, ru vs ru-RU, ru-UA, ru-KZ. Визначте, чи потрібен x-default.
  3. Генерація тегів. Реалізуйте автоматичне додавання hreflang у шаблон або Sitemap. Використовуйте код вище як відправну точку.
  4. Тестування. Завантажте оновлені Sitemap у Google Search Console і перевірте розділ «Інтернаціоналізація». Виправте всі помилки.
  5. Моніторинг. Щотижня перевіряйте GSC на появу нових помилок — іноді після оновлення контенту теги збиваються.

Що входить в роботу?

За підсумками аудиту та налаштування hreflang ви отримуєте:

  • Детальний звіт про знайдені помилки з розбивкою по сторінках.
  • Виправлені теги на всіх мовних версіях.
  • Автоматизовану генерацію hreflang (якщо потрібно — у коді або Sitemap).
  • Налаштований моніторинг у Google Search Console.
  • Інструкцію з підтримки для ваших розробників.
  • Гарантію відсутності помилок протягом 30 днів після здачі.

Терміни та результати

Аудит і виправлення існуючих hreflang для сайту до 500 сторінок — 2–3 робочих дні. Впровадження з нуля, включаючи генерацію в коді та XML Sitemap — 3–5 днів залежно від CMS або фреймворку. Для сайтів з нестандартною структурою URL (субдомени по регіонах, ccTLD) додається 1–2 дні на тестування.

Виправлення помилок hreflang економить до $15 000 на місяць на нецільовому трафіку — це підтверджують дані наших клієнтів. Середня економія становить $12 000 на місяць після налаштування. Зв'яжіться з нами для аудиту вашого сайту. Отримайте консультацію інженера — ми запропонуємо план дій і розрахуємо точну вартість.

Інструменти для валідації

Перевірити коректність можна кількома інструментами:

Google Search Console — розділ «Інтернаціоналізація» показує помилки hreflang: несиметричні посилання, невірні коди, сторінки без самопосилання.

Screaming Frog — краулить сайт і перевіряє взаємність hreflang між усіма версіями в розділі Internationalisation.

Переконайтеся, що використовуєте мовні коди BCP 47 (наприклад, ru, en, uk). Замовте налаштування hreflang у наших інженерів — ми гарантуємо усунення всіх помилок і зростання цільового трафіку.