Hreflang: jak wdrożyć i nie zepsuć wielojęzycznego SEO

Hreflang – co to jest, jak wdrożyć i jak uniknąć błędów w wielojęzycznym SEO

Hreflang to atrybut HTML (rel="alternate" hreflang="xx"), który mówi Google: ta strona ma wersje w innych językach albo dla innych krajów, oto linki do nich. Bez hreflang Google może wyświetlić polską wersję użytkownikowi z Niemiec (bo .pl ma wyższy autorytet) albo potraktować polską i angielską wersję jako duplikaty (ta sama treść, inny język = duplikat dla algorytmu). Hreflang rozwiązuje oba problemy: kieruje właściwą wersję językową do właściwego użytkownika.

Kiedy potrzebujesz hreflang

Wtedy, gdy masz stronę w wielu językach (polski, angielski, niemiecki) albo w kilku wersjach regionalnych (angielski dla USA, dla UK, dla Australii). Konkretne scenariusze:

Wielojęzyczna strona firmowa. twojafirma.pl (PL) plus twojafirma.com/en/ (EN) plus twojafirma.de (DE). Hreflang mówi Google „/en/ to angielska wersja tego samego contentu co /”.

E-commerce międzynarodowy. sklep.pl (PLN, polski), sklep.de (EUR, niemiecki), shop.com (USD, angielski). Te same produkty, inne języki i waluty. Bez hreflang Google potrafi wyświetlić niemiecką wersję polskiemu użytkownikowi, bo .de ma więcej linków zewnętrznych.

Blog z tłumaczonymi artykułami. Artykuł po polsku plus tłumaczenie angielskie. Hreflang łączy je: Google wie, że to ta sama treść w dwóch językach, nie duplikat.

Nie potrzebujesz, kiedy strona jest tylko w jednym języku, nawet jeśli odwiedzają ją ludzie z różnych krajów. Hreflang to o wersjach językowych, nie o lokalizacji użytkownika.

Jak wygląda tag

W <head> każdej strony:

<link rel="alternate" hreflang="pl" href="https://twojafirma.pl/artykul" />
<link rel="alternate" hreflang="en" href="https://twojafirma.com/en/article" />
<link rel="alternate" hreflang="de" href="https://twojafirma.de/artikel" />
<link rel="alternate" hreflang="x-default" href="https://twojafirma.com/en/article" />

Tłumaczy się to „ta strona ma 3 wersje językowe: PL, EN, DE. Domyślna (x-default) to angielska, wyświetl ją użytkownikom, dla których nie ma dedykowanej wersji (np. Japończykowi)”.

Kluczowe zasady.

Dwukierunkowość. Hreflang musi być na obu stronach. Polska wskazuje na angielską I angielska wskazuje na polską. Jednokierunkowy hreflang Google ignoruje.

Self-referencing. Każda strona musi wskazywać na samą siebie. Polska strona ma hreflang="pl" z linkiem do siebie plus hreflang="en" do angielskiej. Brak self-reference, Google ignoruje.

x-default. Opcjonalny, ale zalecany. Domyślna wersja dla użytkowników, których język nie jest obsługiwany. Najczęściej angielska.

Kody języków i krajów

Hreflang używa ISO 639-1 (język) i opcjonalnie ISO 3166-1 Alpha-2 (kraj):

Hreflang Znaczenie Kiedy używać
hreflang="pl" Polski (dowolny kraj) Jedna polska wersja dla wszystkich
hreflang="en" Angielski (dowolny kraj) Jedna angielska wersja dla wszystkich
hreflang="de" Niemiecki Jedna niemiecka wersja
hreflang="en-US" Angielski dla USA Osobna wersja dla Ameryki (USD, daty, spelling)
hreflang="en-GB" Angielski dla UK Osobna wersja dla UK (GBP)
hreflang="pt-BR" Portugalski dla Brazylii Brazylijski kontra europejski portugalski
hreflang="x-default" Domyślna wersja Dla użytkowników bez dedykowanej wersji

Język plus kraj robisz tylko, kiedy masz osobne wersje per kraj tego samego języka (en-US vs en-GB). Jedna wersja angielska wszędzie? hreflang="en" bez kodu kraju. Nie ma czegoś takiego jak hreflang="en-EU", EU nie jest krajem w ISO 3166.

Trzy sposoby wdrożenia

1. Tagi HTML w head (najczęstsze). Wstawiasz <link rel="alternate"> w sekcji <head> każdej strony. Na WordPressie WPML albo Polylang robią to automatycznie. Ręcznie: motyw, header.php, PHP generujący tagi per język.

2. HTTP header (dla nie-HTML, np. PDF).

Link: <https://twojafirma.pl/artykul>; rel="alternate"; hreflang="pl",
      <https://twojafirma.com/en/article>; rel="alternate"; hreflang="en"

Dla plików, które nie mają <head> (PDF, API). Apache/LiteSpeed: .htaccess, Header set Link. Nginx: add_header Link.

3. Sitemap XML.

<url>
  <loc>https://twojafirma.pl/artykul</loc>
  <xhtml:link rel="alternate" hreflang="pl" href="https://twojafirma.pl/artykul" />
  <xhtml:link rel="alternate" hreflang="en" href="https://twojafirma.com/en/article" />
  <xhtml:link rel="alternate" hreflang="de" href="https://twojafirma.de/artikel" />
</url>

Sensowne, kiedy masz tysiące stron i nie chcesz dodawać tagów HTML osobno. WPML generuje sitemap z hreflang automatycznie.

Hreflang na WordPressie

WPML (płatny, około 39 dolarów rocznie). Najpopularniejsza wtyczka do wielojęzyczności. Tłumaczysz wpisy, strony, produkty WooCommerce, menu, widgety i schema. WPML automatycznie generuje hreflang, przełącznik języków i odpowiednie URL-e (subfoldery /en/, /de/ albo subdomeny/domeny).

Konfiguracja: WPML, Języki, dodajesz języki (PL, EN, DE), tłumaczysz treści, WPML dorzuca hreflang sam. Sprawdzasz F12, Elements, szukasz hreflang w head.

Polylang (Free i Pro). Darmowa alternatywa dla WPML. Wersja Free daje wielojęzyczność treści, hreflang i przełącznik. Pro (99 dolarów rocznie) dorzuca tłumaczenie URL-i i integrację z WooCommerce. Prostszy w obsłudze niż WPML, ale ma mniej funkcji, zwłaszcza pod sklepy.

Najczęstsze błędy

Brak dwukierunkowości. Polska wskazuje na angielską, angielska nie wskazuje na polską. Google ignoruje hreflang na obu stronach.

Brak self-reference. Strona wskazuje na inne wersje, ale nie na samą siebie. Każda strona musi wskazywać siebie plus wszystkie wersje językowe.

Hreflang na niekanoniczne URL. Strona A ma hreflang na B, ale B ma canonical na C. Sprzeczność, Google ignoruje. Hreflang musi wskazywać na te same URL-e, co canonical.

Złe kody języków. uk to ukraiński (ISO 639-1), nie angielski brytyjski (ten jest en-GB). cz nie istnieje, czeski to cs. jp nie istnieje, japoński to ja. Sprawdzaj kody na Wikipedii (ISO 639-1).

Hreflang na 404 albo redirect. Wskazuje na stronę zwracającą 404 albo 301, Google ignoruje. Po usunięciu albo przekierowaniu strony zaktualizuj hreflangi na pozostałych wersjach.

Jak sprawdzić hreflang

Google Search Console. Międzynarodowe targetowanie, sprawdzasz błędy (brak return tag, złe kody, linki na 404). GSC od 2024 ograniczył ten raport, ale błędy krytyczne wciąż pokazuje.

Screaming Frog. Crawl, zakładka „Hreflang”, pełna analiza: brakujące return tags, non-canonical hreflang, missing self-reference, niepoprawne kody językowe. Najlepsze narzędzie do audytu, sam zawsze tym sprawdzam wielojęzyczne klientów.

Ahrefs / Semrush. Site Audit, sekcja „Hreflang”, lista błędów per strona.

Ręcznie. Otwórz stronę, F12, Elements, Ctrl+F, szukaj hreflang. Sprawdź self-reference, czy linki prowadzą do istniejących stron i czy kody są poprawne.

Struktury URL pod wielojęzyczność

Struktura Przykład Plus Minus
Subfolder twojafirma.pl/en/, twojafirma.pl/de/ Łatwa konfiguracja, jeden hosting, jeden autorytet domeny Mniej „lokalne” niż ccTLD
Subdomena en.twojafirma.pl, de.twojafirma.pl Łatwa separacja Google traktuje subdomeny jak osobne strony (mniejszy autorytet)
ccTLD twojafirma.pl, twojafirma.de, twojafirma.com Najsilniejszy sygnał lokalny (Google wie, że .de = Niemcy) Drogie, osobny autorytet per domena
Parametr URL twojafirma.pl?lang=en Proste technicznie NIE ZALECANE, Google nie zaleca parametrów do wielojęzyczności

Z mojego doświadczenia subfoldery (/en/, /de/) wygrywają. Najprostsze, najczęstsze, autorytet domeny dzielony między językami. ccTLD bierzesz dla dużych firm z budżetem na link building per domena. Subdomeny są rzadko zalecane, bo Google traktuje je trochę jak osobne witryny.

Hreflang a SEO

Hreflang nie jest bezpośrednim czynnikiem rankingowym. Nie poprawi pozycji polskiej wersji na polskie frazy. Co daje:

Prawidłowe kierowanie użytkowników. Niemiec widzi niemiecką wersję, nie polską. Lepsze doświadczenie, niższy bounce rate, pośrednio lepsze pozycje.

Brak kanibalizacji. Bez hreflang polska i angielska wersja walczą o te same frazy w Google (duplikacja), autorytet się rozprasza. Z hreflang Google wie, że to różne wersje, polska rankuje na PL frazy, angielska na EN.

Konsolidacja autorytetu. Hreflang sygnalizuje, że strony są powiązane. Linki do angielskiej wersji częściowo wzmacniają polską (i odwrotnie). To nie transfer jak canonical, raczej sygnał powiązania.

Najczęściej zadawane pytania

Czy hreflang zastępuje canonical

Nie. To dwa osobne mechanizmy. Canonical mówi „to oryginalna wersja tej strony” (duplikaty). Hreflang mówi „ta strona ma wersje w innych językach” (tłumaczenia). Każda strona powinna mieć oba: canonical (self-referencing) plus hreflang (wskazujący na wersje językowe).

Czy Google wymaga hreflang

Nie. Google potrafi sam wykryć wersje językowe (po języku treści, ccTLD, ustawieniach w Search Console). Ale hreflang daje jednoznaczny sygnał: „Google, oto dokładna mapa moich wersji”. Dla stron z 2+ językami hreflang jest praktycznie obowiązkowy, jeśli zależy ci na poprawnym kierowaniu ruchu.

Czy Bing obsługuje hreflang

Bing nie obsługuje hreflang. Używa tagu <meta http-equiv="content-language"> i ustawień w Bing Webmaster Tools. Yandex obsługuje hreflang. Baidu nie. W praktyce hreflang jest głównie pod Google, który ma 90+% rynku w większości krajów.

Ile wersji językowych mogę mieć

Bez limitu. Google obsługuje hreflang dla dowolnej liczby. Wikipedia ma hreflangi do ponad 300 wersji. Jedyne ograniczenie: każda strona musi mieć komplet tagów (self plus wszystkie wersje), więc przy 50 językach to 50 tagów per strona w head. Dla dużych liczb użyj sitemap zamiast tagów HTML.

Czy muszę tłumaczyć całą stronę

Nie. Hreflang dotyczy konkretnych stron, nie całej witryny. Masz 100 stron po polsku i 20 przetłumaczonych na angielski? Hreflang dodajesz tylko na tych 20 (wzajemne wskazanie PL ↔ EN). Pozostałe 80 zostaje bez hreflang, bo nie mają angielskiej wersji.

Picture of Tomasz Zieliński
Tomasz Zieliński

Tomasz zajmuje się tematyką SEO, sztucznej inteligencji i automatyzacji pracy w marketingu internetowym. W swoich artykułach analizuje zmiany w algorytmach wyszukiwarek, rozwój narzędzi AI oraz nowe sposoby tworzenia i optymalizacji treści. Interesuje go przede wszystkim to, jak technologia wpływa na codzienną pracę specjalistów SEO, marketerów i twórców internetowych.

Facebook
Twitter
LinkedIn
Pinterest

Najnowsze Wpisy

Śledź nas