Przejdź do treści
Powrót do poradników
Poradnik Stan na: październik 2026 r. 8 min czytania

Błędy hreflang i jak je naprawić

Linki hreflang działają tylko jako pełny zestaw. Tu znajdziesz błędy, które najczęściej psują taki zestaw, oraz to, jak je znaleźć i naprawić.

Dlaczego drobne błędy psują hreflang

Linki hreflang mówią wyszukiwarkom, które strony są wersjami tej samej treści w innych językach lub dla innych regionów. Każda wersja musi potwierdzać pozostałe. Jeden błędny kod, jeden brakujący link zwrotny albo jedna wersja, która przekierowuje, mogą wystarczyć, żeby część zestawu została zignorowana. Jak w ogóle założyć wersje językowe i ich adresy, opisuje nasz poradnik Tłumaczenie strony. Ten poradnik dotyczy błędów, które zostają potem.

Trzy wersje tej samej strony w trójkącie. Każdą parę łączy strzałka w obie strony, a każda strona ma małą strzałkę wskazującą na siebie: każda wersja podaje wszystkie inne i siebie.
Pełny zestaw: linki zwrotne między wszystkimi wersjami i odwołanie do siebie na każdej stronie.

Jak sprawdzić zestaw

Zacznij od jednej strony, zbierz jej linki hreflang, a potem otwórz każdą wersję, którą ona podaje. Dopiero wtedy widać, czy wersje do siebie pasują.

Jak sprawdzić zestaw hreflang
Zbierz linki
Wszystkie wpisy hreflang strony startowej
Sprawdź kody
Język według ISO 639-1, region według ISO 3166-1
Otwórz każdą wersję
Status 200, bez przekierowania, bez noindex
Sprawdź linki zwrotne
Każda wersja podaje wszystkie inne i siebie
Sprawdź canonical
Każda wersja wskazuje samą siebie
Sprawdź x-default
Najwyżej jeden, na każdej stronie taki sam
Zacznij od jednej strony i przejdź do każdej wersji, którą ona podaje.

Błąd 1: brakuje linków zwrotnych

To pierwszy punkt na liście typowych błędów, którą publikuje Google. Jeśli strona A podaje stronę B jako wersję niemiecką, strona B musi też podawać stronę A. Google pisze, że tagi są ignorowane, jeśli dwie strony nie wskazują na siebie nawzajem. Dzieje się tak, gdy nowy język trafia tylko na część stron albo gdy każdy język jest w osobnym systemie. Rozwiązanie: zbuduj blok linków hreflang z jednej listy wszystkich wersji i umieść ten sam blok na każdej stronie zestawu.

Czy każda wersja odsyła z powrotem?
Czy wskazana wersja podaje tę stronę we własnych linkach hreflang, z dokładnie tym samym adresem?
Tak
Para potwierdza się nawzajem. Google może korzystać z oznaczeń między tymi dwiema stronami.
Nie
Google może zignorować oznaczenia między tymi dwiema stronami. Dodaj brakujący link na stronie, której go brakuje.
Zadaj to pytanie dla każdej pary stron w zestawie.

Błąd 2: błędne kody języka lub regionu

  • en-UK zamiast en-GB. Kod ISO Zjednoczonego Królestwa to GB. Google pisze, że zarezerwowane kody, takie jak UK, EU czy UN, nie mają w hreflang żadnego skutku.
  • Sam kod kraju, na przykład us albo jp. Google nie przyjmuje regionu bez języka. Kod języka japońskiego to ja, więc strona dla Japonii używa ja lub ja-JP.
  • Kraj wzięty za język. Przykład podany przez Google: be to kod języka białoruskiego, a nie Belgii. Strona po francusku dla Belgii używa fr-BE.
  • Podkreślnik, jak w en_GB. Według W3C części znacznika języka oddziela się łącznikiem.
  • Kody poprawne gdzie indziej, ale nie dla Google. es-419 oznacza hiszpański w Ameryce Łacińskiej i według W3C jest poprawnym znacznikiem języka, ale Google pisze, że go nie obsługuje.
Błędne i poprawne kody
Błędnie
  • en-UK
  • jp (kraj, a nie język)
  • be dla Belgii (be to białoruski)
  • en_GB (podkreślnik)
  • es-419 (Google go nie obsługuje)
Poprawnie
  • en-GB
  • ja lub ja-JP
  • fr-BE lub nl-BE
  • en-GB (łącznik)
  • es albo jeden kod na kraj, np. es-MX
Wielkość liter nie ma dla Google znaczenia: en-gb i en-GB to to samo.

Błąd 3: strona nie podaje samej siebie

Google pisze, że każda wersja językowa musi podawać samą siebie i wszystkie inne wersje. Stronie, która wymienia tylko pozostałe języki, brakuje własnego wpisu. Jedna z możliwych przyczyn: ta sama pętla buduje też przełącznik języków, a on często ukrywa aktywny język. Rozdziel jedno od drugiego: przełącznik może ukrywać bieżący język, blok hreflang nie.

Błąd 4: brak x-default albo niespójny x-default

x-default to zarezerwowana wartość. Google używa jej, gdy żaden inny język ani region nie pasuje do ustawień przeglądarki odwiedzającego, i zaleca ją jako wariant zapasowy, na przykład dla strony, na której odwiedzający wybierają język. Nie musisz jej używać. Jeśli jej używasz, to raz na zestaw, z tym samym wpisem na każdej stronie i z celem, który pasuje dla odwiedzających z dowolnego miejsca, na przykład stroną wyboru języka albo główną wersją. Typowe błędy: x-default różny na różnych stronach, dwa wpisy x-default w jednym zestawie albo cel, który przekierowuje odwiedzających według lokalizacji.

Błąd 5: canonical wskazuje inny język

Tag canonical mówi, który adres jest główną wersją spośród duplikatów strony. Google radzi wskazywać stronę kanoniczną w tym samym języku albo w najlepszym możliwym języku zastępczym, jeśli w danym języku nie ma strony kanonicznej. Jeśli niemiecka strona podaje angielską jako canonical, sygnały sobie przeczą: hreflang mówi, że strona niemiecka jest osobną wersją, a canonical mówi, że jest kopią angielskiej. Rozwiązanie: każda wersja językowa podaje samą siebie jako canonical, a wersje są połączone przez hreflang.

Canonical i hreflang mają różne zadania
rel=canonical wybiera spośród duplikatów tej samej strony, hreflang łączy tłumaczenia. Według Google link canonical z atrybutem hreflang nie jest używany do kanonikalizacji. Google pisze też, że wersje językowe są uznawane za duplikaty tylko wtedy, gdy główna treść pozostaje nieprzetłumaczona.

Błąd 6: linki do przekierowań, stron z noindex lub błędów

  • Przekierowania. Link hreflang do adresu, który przekierowuje, podaje adres, który nie jest samą stroną. Google traktuje przekierowanie jako silny sygnał, że jego cel powinien być adresem kanonicznym. Podawaj adres docelowy. Gorzej, jeśli wersja przekierowuje na inną wersję językową, bo wtedy dwa kody prowadzą na tę samą stronę.
  • noindex. Strona z noindex nie trafia do wyszukiwarki Google, więc link hreflang do niej wskazuje wersję, która nie może się pojawić. Usuń noindex albo usuń tę stronę z zestawu na każdej stronie.
  • Błędy. Wersja, która odpowiada kodem 404 lub błędem serwera, nie może potwierdzić zestawu. Przywróć ją albo usuń z bloku na każdej stronie.

Mniejsze błędy, które łatwo przeoczyć

  • Prawie takie same adresy. http i https, z www i bez, z ukośnikiem na końcu i bez to różne adresy. Link zwrotny musi podawać dokładnie adres strony.
  • Adresy względne, takie jak /pl/cennik/. Google wymaga pełnych adresów razem z https://.
  • Kilka sposobów, które sobie przeczą. Dla Google elementy link w HTML, nagłówek HTTP i mapa witryny są równoważne, a więcej niż jeden sposób nie daje korzyści w wyszukiwarce. Używaj jednego sposobu.

Naprawiaj we właściwej kolejności

  1. 1Zrób jedną listę wszystkich wersji strony: kod i dokładny adres docelowy.
  2. 2Sprawdź każdy adres: status 200, bez przekierowania, bez noindex, canonical wskazujący na siebie.
  3. 3Zbuduj blok hreflang z tej listy, z odwołaniem do siebie i, jeśli chcesz, jednym x-default.
  4. 4Umieść ten sam blok na każdej stronie zestawu, jednym sposobem.
  5. 5Sprawdź zestaw ponownie po każdej przebudowie strony i każdym nowym języku. Zacznij od najczęściej odwiedzanych stron (to nasza rada, a nie zasada Google).

Sprawdź hreflang z Do4U

Sprawdzanie hreflang wykonuje te kroki dla jednej strony i wszystkich jej wersji. Wpisujesz jeden adres. Do4U czyta stronę, zbiera jej linki hreflang, a potem czyta każdą podaną wersję. Kod sprawdza linki zwrotne i odwołania do siebie, kody języków i regionów, x-default i duplikaty oraz to, czy każda wersja jest dostępna bez przekierowania, nie ma noindex, podaje właściwy canonical i ma pasujący html lang. Dostajesz listę stron z błędami i ostrzeżeniami, krótkie wyjaśnienie do każdego wyniku i macierz linków zwrotnych. Działa bez AI i jest za darmo, z dziennym limitem na konto.

Narzędzie czyta tylko elementy link w HTML. Nie czyta hreflang w nagłówkach HTTP ani w mapach witryny i nie uruchamia JavaScriptu. Do4U znajduje wskazówki, a ty sprawdzasz i decydujesz. Poprawne linki hreflang nie obiecują lepszych pozycji.

Źródła