Hreflang – fundament widoczności wielojęzycznych stron w Google

Jeśli prowadzisz stronę internetową skierowaną do użytkowników z różnych krajów lub mówiących w różnych językach, hreflang to nie opcja – to konieczność. Ten niepozorny atrybut HTML to jeden z najbardziej strategicznych elementów technicznego SEO, który wpływa nie tyle na ranking, co na trafność i jakość ruchu. To dzięki hreflangowi Google wie, komu i kiedy pokazać Twoją stronę – i w jakiej wersji językowej. Wdrażasz wielojęzyczność? Zacznij od tego miejsca.

Bartłomiej Szczęśniak Bartłomiej Szczęśniak dnia 2025-06-17

Co to jest hreflang i dlaczego ma znaczenie?

Atrybut hreflang to sygnał umieszczany w kodzie strony, który informuje wyszukiwarki i przeglądarki, że dany serwis posiada alternatywne wersje językowe lub regionalne tej samej treści. Google dzięki niemu rozumie, że Twoja strona przygotowana w języku francuskim ma też warianty dla użytkowników z Niemiec, Hiszpanii czy Polski – i może trafnie dobrać odpowiednią wersję do lokalizacji i języka użytkownika.

Dla Google to jak naklejka z etykietą: „To jest wersja strony przygotowana specjalnie dla osób mówiących po hiszpańsku w Meksyku”. Dzięki temu unikasz błędnego kierowania użytkowników na niewłaściwe wersje językowe i ograniczasz problemy z duplikacją treści.

Nie wpływa na wygląd strony – to czysto techniczna informacja dla robotów.

Jak działa hreflang? Zasady składni i implementacji

Najczęściej atrybut hreflang umieszcza się jako tag <link> w sekcji <head> każdej strony:

<link rel="alternate" hreflang="pl" href="https://example.com/pl/" />

Podstawowe zasady:

Przykład dla strony w języku angielskim dla Wielkiej Brytanii:

<link rel="alternate" hreflang="en-GB" href="https://example.com/gb/" />

Dodatkowo można dodać atrybut x-default, który wskazuje wersję domyślną, np. stronę wyboru języka:

<link rel="alternate" hreflang="x-default" href="https://example.com/" />

Adresy URL muszą być absolutne i zawierać protokół http lub https.

Alternatywne sposoby wdrażania hreflang

Google dopuszcza trzy metody:

Dla plików sitemapowych używa się składni z przestrzenią nazw xhtml:

<xhtml:link rel="alternate" hreflang="de-de" href="https://example.com/de/" />

Pamiętaj: każdy językowy wariant strony powinien zawierać komplet tagów hreflang, w tym również odwołanie do siebie samego. Jeśli strona A wskazuje na stronę B, to strona B musi wskazywać na stronę A. Inaczej Google zignoruje oznaczenia.

Przykładowe struktury URL a wdrożenie hreflang

Struktura Twojej strony decyduje o tym, jak wygląda implementacja:

W każdej z tych wersji musisz wdrożyć komplet wzajemnych tagów hreflang dla każdego wariantu językowego i regionalnego.

Dlaczego hreflang to potężne narzędzie SEO?

Wdrożenie hreflangu nie podnosi bezpośrednio pozycji w rankingu – potwierdził to sam Gary Illyes z Google – ale jego znaczenie dla strategii SEO jest fundamentalne:

Składnia tagu hreflang – jak nie popełnić błędu

Jednym z najczęstszych powodów nieskutecznego działania hreflangów są błędy składniowe. Dlatego warto dokładnie zrozumieć, jak powinien wyglądać poprawny tag.

Zazwyczaj atrybut hreflang umieszczamy w <head> strony jako:

<link rel="alternate" hreflang="język-region" href="https://adres-strony/" />

Do kodowania języka używamy normy ISO 639-1, a dla kraju – ISO 3166-1 alpha-2. Przykładowo:

Uwaga: Kod kraju nigdy nie może występować sam – zawsze musi być poprzedzony kodem języka. Wartości powinny być zgodne z konwencją: język małymi literami, region dużymi.

W przypadku sitemap XML, składnia wygląda inaczej:

<xhtml:link rel="alternate" hreflang="es-es" href="https://example.com/es/" />

Wdrożenie hreflang – trzy ścieżki

Google akceptuje trzy sposoby informowania o wersjach językowych:

  1. W kodzie HTML (najczęstsze) – umieszczamy tagi <link rel="alternate" hreflang=...> w sekcji <head> każdej wersji językowej.
  2. W nagłówkach HTTP – przydatne np. dla plików PDF czy treści bez kodu HTML.
  3. W mapie witryny XML – dobre rozwiązanie dla dużych serwisów lub generowanych dynamicznie wersji językowych.

Niezależnie od formy, obowiązuje ta sama zasada: każda wersja musi wskazywać na siebie i na wszystkie pozostałe – tzw. dwukierunkowość (reciprocal linking). Jeśli strona A wskazuje na B, to B musi wskazywać na A – w przeciwnym razie Google zignoruje cały zestaw.

Wersje językowe mogą być dostępne jako:

Kluczowe jest, by tagi hreflang były spójne z rzeczywistą strukturą strony i odzwierciedlały jej przeznaczenie.

Korzyści z prawidłowego użycia hreflang

Wdrożenie hreflangów daje konkretne przewagi SEO:

Wyzwania i najczęstsze błędy przy implementacji hreflangów

Choć składnia tagów hreflang wydaje się prosta, w praktyce wdrożenie bywa problematyczne. Poniżej znajdziesz listę najczęstszych błędów, które prowadzą do całkowitego zignorowania tagów przez Google.

Brak relacji zwrotnej (reciprocal)

To najczęstszy i najbardziej krytyczny błąd. Każda strona musi odsyłać do wszystkich pozostałych wersji językowych, w tym do samej siebie. Jeśli A wskazuje na B, to B musi wskazać również na A.

Przykład:

❌ Źle – brak linku zwrotnego:
Strona en zawiera tag hreflang do pl, ale pl nie zawiera tagu do en.

✅ Dobrze – pełna siatka odniesień:
Strona en wskazuje na pl i en, a pl również wskazuje na en i pl.

Niepoprawne kody językowe lub regionów

Użycie kodu EN-us zamiast en-US, albo samego kodu kraju (np. DE zamiast de-DE) sprawia, że tag nie działa. Google stosuje konwencję: język (małe litery) + opcjonalnie region (duże litery).

Brak strony docelowej (404 lub 301/302)

Tag hreflang musi prowadzić do rzeczywistej, dostępnej podanej wersji językowej. Jeśli link prowadzi do błędu 404, przekierowania 301 lub 302, Google zignoruje go.

Błędy w sitemapie XML

Wielu administratorów generuje sitemapę automatycznie, ale zapomina o dodaniu tagów <xhtml:link>. Co więcej, tagi te również muszą być wzajemne i kompletne, tak jak w przypadku <head>.

Brak wersji x-default

Choć opcjonalna, warto dodać wersję x-default, czyli adres strony domyślnej – np. landing page z wyborem języka. Google traktuje ją jako bezpieczną alternatywę, gdy nie może dopasować użytkownika do żadnego wariantu językowego.

Mieszanie hreflang z canonical w sposób błędny

Jeśli strona en zawiera canonical do pl, a jednocześnie hreflang do en, wysyłamy sprzeczne sygnały: jeden mówi, że pl jest oryginałem, drugi – że en jest niezależną wersją językową. To częsty błąd w przypadku tłumaczeń opartych na tej samej strukturze HTML.

Hreflang a canonical – czy się wykluczają?

To częste pytanie, bo obie metody wpływają na indeksowanie i zrozumienie wersji strony przez Google. Ale uwaga: hreflang i canonical mogą działać razem, pod warunkiem że ich logika nie jest sprzeczna.

Główne różnice:

Cechahreflangcanonical
CelDopasowanie językowe i lokalizacyjneWskazanie oryginalnej wersji treści
Zakres działaniaWersje językowe tej samej treściUnikanie duplikacji
Może wskazywać na siebie?TakTak
Może wskazywać na inną stronę?Tak, jeśli to odpowiednik językowyTak, ale tylko jedna wersja jako kanoniczna

Dobra praktyka:

Każda wersja językowa powinna zawierać canonical do samej siebie, a tagi hreflang – do pozostałych wersji. To pokazuje Google, że strona jest równoważnym odpowiednikiem językowym, a nie kopią treści.

Podsumowanie

Tagi hreflang to kluczowy element SEO dla stron wielojęzycznych i wieloregionalnych. Ich poprawna implementacja pozwala Google zrozumieć, która wersja językowa strony powinna być wyświetlona użytkownikowi w zależności od jego języka lub lokalizacji. Aby działały skutecznie, muszą być kompletne, wzajemne i poprawnie osadzone (w <head>, sitemapie lub nagłówku HTTP). Najczęstsze błędy to brak relacji zwrotnej, nieprawidłowe kody języków lub konflikty z tagami canonical. Prawidłowe wdrożenie hreflangów minimalizuje ryzyko duplikacji treści i zwiększa widoczność strony w odpowiednich wersjach językowych, co przekłada się na lepsze doświadczenia użytkowników i wyższe pozycje w wynikach wyszukiwania.