Hreflang i międzynarodowe SEO — wielojęzyczna widoczność w Google i w modelach AI
W międzynarodowym SEO najwięcej szkód robi jedno nieporozumienie: że hreflang podnosi pozycje. Nie podnosi. Hreflang to dyrektywa routingu — mówi Google, którą wersję językową pokazać któremu użytkownikowi, a nie która strona ma rankować wyżej. Mimo to jego błędy są najczęstszą wpadką wielojęzycznych witryn: audyty regularnie znajdują niekompletne albo niewzajemne adnotacje na większości dużych serwisów, a skutek jest zawsze ten sam — Google pokazuje Polakowi angielską wersję, konwersja spada, a Ty szukasz przyczyny w treści, nie w nagłówku.
Hreflang to nie czynnik rankingowy, lecz routing języków — a jego błędy to najczęstsza wpadka wielojęzycznego SEO, którą audyty znajdują na większości dużych witryn. W erze AI dochodzi druga stawka: ChatGPT i Perplexity na to samo pytanie po polsku i po angielsku cytują inne źródła. Kompletny warsztat: trzy architektury adresów, pięć zasad hreflang bez błędów, tłumaczenie slugów i wielojęzyczne GEO.
W erze AI dochodzi druga stawka, o której klasyczne poradniki milczą: modele językowe traktują język zapytania jako sygnał źródła. To samo pytanie zadane ChatGPT po polsku i po angielsku zwraca inne cytowania — bo model sięga po treści w języku pytania. Wielojęzyczna architektura przestała więc być tylko sprawą Google; decyduje też o tym, czy Cię w ogóle widać w polskiej i angielskiej odpowiedzi AI.
Ten wpis to kompletny warsztat: czym hreflang jest naprawdę, jak wybrać architekturę adresów, pięć zasad wdrożenia bez błędów, tłumaczenie slugów (na naszym własnym wzorcu PL/EN) i wielojęzyczne GEO.
Czym hreflang jest — i czym nie jest
Zacznijmy od rozdzielenia dwóch rzeczy, które w głowach się zlepiają.
Hreflang nie jest czynnikiem rankingowym. Nie sprawia, że strona rankuje wyżej, nie przekazuje „mocy", nie zastępuje linkowania ani treści. Google w dokumentacji opisuje go jako sygnał, a nie wiążącą dyrektywę — może go zignorować, jeśli reszta sygnałów mówi co innego.
Hreflang jest mapą wersji językowych. Dla strony dostępnej w kilku językach lub regionach mówi wyszukiwarce: „to są warianty tej samej treści, pokaż użytkownikowi właściwy". Efekt nie jest w rankingu, lecz w tym, że właściwa wersja trafia do właściwego użytkownika — co ratuje CTR i konwersję, a nie pozycję.
Dwa najczęstsze objawy braku lub błędu hreflang:
- Zła wersja w wynikach. Polak widzi angielski URL, klika rzadziej, a jeśli kliknie — odbija się. Google to widzi i z czasem obniża widoczność całej sekcji.
- Kanibalizacja między językami. Bez mapowania Google traktuje wersje jak konkurujące strony o ten sam temat i sam wybiera „zwycięzcę" — często nie tę, którą chcesz.
Trzy architektury adresów — ccTLD, subdomena, subfolder
Zanim dotkniesz hreflang, musisz zdecydować, gdzie w ogóle mieszkają wersje językowe. To decyzja na lata — zmiana architektury to pełna migracja z ryzykiem utraty pozycji.
/// TRZY ARCHITEKTURY WERSJI JĘZYKOWYCH
Decyzja na lata — jej zmiana to pełna migracja
| Architektura | Przykład | Kiedy wybrać |
|---|---|---|
| ccTLD (domena krajowa) | twojafirma.pl / .de | Silne targetowanie geo, budżet na wiele domen, realna obecność w kraju |
| Subdomena | pl.twojafirma.com | Osobna infrastruktura per język przy jednej marce, słabsza konsolidacja autorytetu |
| Subfolder (katalog) | twojafirma.com/pl/ | Domyślny wybór — cały autorytet domeny w jednym miejscu |
Dla zdecydowanej większości firm — zwłaszcza tych, które celują w widoczność w AI — subfolder wygrywa. Powód jest ten sam co przy budżecie crawlowania: jedna domena kumuluje cały autorytet i cały sygnał encji, zamiast rozpraszać go na osobne hosty. ccTLD ma sens, gdy naprawdę działasz lokalnie w danym kraju (magazyn, obsługa, waluta) i stać Cię na utrzymanie kilku domen jak osobnych serwisów. To jest dokładnie nasz wybór na tej stronie: jedna domena, wersje w /pl/ i /en/.
Pięć zasad hreflang bez błędów
Hreflang psuje się na detalach. Te pięć zasad eliminuje większość problemów, które audyty wyłapują na dużych witrynach.
/// PIĘĆ ZASAD HREFLANG BEZ BŁĘDÓW
Eliminują większość problemów wyłapywanych w audytach
- 1.Wzajemność. Jeśli strona PL wskazuje na EN, to EN musi wskazać z powrotem na PL. Jednostronna adnotacja jest przez Google ignorowana — to najczęstszy błąd w audytach.
- 2.Self-referencing. Każda wersja musi wskazywać także samą siebie. Strona PL wśród swoich adnotacji hreflang wymienia również PL.
- 3.x-default. Dodaj wpis hreflang="x-default" wskazujący wersję domyślną (zwykle angielską albo stronę wyboru języka) dla użytkowników spoza zdefiniowanych języków.
- 4.Adresy bezwzględne i po 301. URL-e w hreflang muszą być pełne (z https://) i prowadzić do finalnego adresu, nie do przekierowania. Wskazanie na URL, który robi 301, łamie mapowanie.
- 5.Zgodność z canonical. hreflang i canonical nie mogą sobie przeczyć: strona PL ma canonical na samą siebie, nie na EN. Sprzeczność to klasyczny powód, dla którego Google ignoruje całą grupę.
Poprawny zestaw dla dwóch języków wygląda tak — te same trzy linki w sekcji head każdej z wersji:
<link rel="alternate" hreflang="pl" href="https://twojadomena.pl/pl/oferta" /><link rel="alternate" hreflang="en" href="https://twojadomena.pl/en/offer" /><link rel="alternate" hreflang="x-default" href="https://twojadomena.pl/en/offer" />
Kody języków trzymaj zgodne ze standardem BCP 47 (ISO 639-1 dla języka, opcjonalnie ISO 3166-1 dla regionu): „pl", „en", a jeśli rozróżniasz regiony — „en-GB", „en-US", „pt-BR". Nie wymyślaj własnych kodów; „en-UK" jest niepoprawne (poprawnie: „en-GB").
Tłumaczenie slugów — nasz wzorzec PL/EN
Częste pytanie: tłumaczyć slug (część adresu po domenie), czy zostawić jeden dla wszystkich języków? Tłumaczyć. Slug w języku użytkownika to sygnał trafności dla wyszukiwarki i wyższy CTR — Polak chętniej klika /pl/hreflang-miedzynarodowe-seo-geo niż /pl/international-seo.
Problem w tym, że przetłumaczone slugi trzeba ze sobą powiązać, żeby hreflang i przełącznik języka wiedziały, co jest czym. Nasz wzorzec na tej stronie: każdy wpis ma jeden numeryczny identyfikator, a slugi są tłumaczone per język i parowane właśnie po nim. Angielski odpowiednik tego wpisu to hreflang-international-seo-geo — inny slug, ten sam identyfikator. Przełącznik języka rozwiązuje parę po identyfikatorze, a nie po dopasowaniu tekstu adresu, dzięki czemu tłumaczenie slugów niczego nie psuje.
To samo dotyczy encji marki: spójna architektura języków wzmacnia graf wiedzy i encję, bo Google i modele AI widzą jedną markę w wielu językach, a nie kilka niepowiązanych bytów.
Wielojęzyczne GEO — dlaczego AI cytuje inne źródła per język
Tu zaczyna się część, której nie ma w klasycznych poradnikach hreflang. Modele językowe traktują język zapytania jako filtr źródeł. Zapytaj ChatGPT o „najlepsze narzędzia do czegoś" po polsku, a potem po angielsku — dostaniesz dwie różne listy cytowań, bo model preferuje treści w języku pytania.
/// JĘZYK ZAPYTANIA = FILTR ŹRÓDEŁ W AI
To samo pytanie, dwa języki — dwie różne listy cytowań
- →Cytuje polskie treści ekspertów
- →Polskie fora, blogi, media branżowe
- →Twoja wersja /pl/ — jeśli istnieje i jest mocna
- →Cytuje anglojęzyczne treści
- →Reddit, media i blogi globalne
- →Twoja wersja /en/ — osobna pula cytowań
Konsekwencje dla strategii:
- Sama wersja EN nie da Ci widoczności w polskich odpowiedziach AI. Jeśli cała ekspercka treść jest po angielsku, w polskim ChatGPT jesteś niewidoczny — model cytuje polskie źródła konkurencji.
- Tłumaczenie to nie maszynowa kalka. Modele i Google nagradzają treść, która brzmi natywnie i jest osadzona w lokalnym kontekście — przykłady, waluta, realia rynku. Automatyczne tłumaczenie bez redakcji to sygnał niskiej jakości.
- Struktura pod cytowania działa w każdym języku. Zasady z wpisu o optymalizacji pod AI Overviews — odpowiedź wprost, nagłówki-pytania, dane z atrybucją — stosuj w każdej wersji językowej osobno.
Innymi słowy: hreflang załatwia stronę techniczną (właściwa wersja do właściwego użytkownika), ale o cytowaniach w AI decyduje to, czy w danym języku w ogóle masz mocną, natywną treść.
Jak zweryfikować wdrożenie
Zanim uznasz temat za zamknięty, sprawdź cztery rzeczy:
- Search Console → raport międzynarodowego targetowania i błędów hreflang — pokazuje brakujące zwrotne adnotacje i błędne kody języków.
- Ręczny test w źródle strony — otwórz podgląd HTML bez renderowania JS i sprawdź, czy linki hreflang są w sekcji head. Jeśli wstrzykujesz je JavaScriptem, część crawlerów ich nie zobaczy — to ten sam problem, co w JavaScript SEO.
- Crawler (Screaming Frog / Sitebulb) — raport hreflang wychwytuje niewzajemne i niekanoniczne wskazania na skalę całej witryny.
- Test AI per język — zadaj to samo pytanie modelom po polsku i po angielsku i sprawdź, czy cytują Twoje właściwe wersje. To pomiar warstwy, której nie widać w GA4 — jak go poukładać, opisuję w analityce ruchu z AI.
Plan wdrożenia krok po kroku
- 1.Wybierz architekturę (subfolder dla większości) i trzymaj się jej na całej witrynie.
- 2.Ustal listę języków i regionów oraz poprawne kody BCP 47 — bez własnych wynalazków.
- 3.Wygeneruj hreflang programowo z jednego źródła prawdy (mapa identyfikator → slug per język), a nie ręcznie per strona.
- 4.Dodaj x-default i self-referencing do każdej grupy.
- 5.Zsynchronizuj canonical — każda wersja kanoniczna na samą siebie.
- 6.Przetłumacz slugi i powiąż je po stałym identyfikatorze (nasz wzorzec).
- 7.Zredaguj treść natywnie per język — nie kalkę maszynową; osobno zoptymalizuj każdą wersję pod cytowania AI.
- 8.Zweryfikuj w GSC, w źródle bez JS, crawlerem i testem AI per język.
- 9.Przy każdej migracji aktualizuj hreflang w tym samym wdrożeniu — przestarzałe wskazania do starych adresów łamią mapowanie.
---
Projektuję architekturę wielojęzyczną od wyboru domeny po hreflang generowany z jednego źródła prawdy — w ramach technicznego SEO i optymalizacji pod AI (GEO). Uczę tego w kursie SEO & GEO. Napisz do mnie — zacznę od audytu hreflang i mapy języków pod widoczność w AI.
Warto przeczytać dalej:

Specjalista SEO & GEO i AI engineer z Białegostoku. 10 lat budowania widoczności w wyszukiwarkach dla znanych marek i 3 lata wdrożeń AI — agentów, automatyzacji i integracji LLM (Next.js, React, Node.js).
/// RELATED_SERVICES
Potrzebujesz wdrożenia tych koncepcji? Zobacz usługi powiązane z tym tematem.
/// ŹRÓDŁA
- 01Google Search Central – Localized versions of your pages (hreflang, oficjalna dokumentacja)
- 02Google Search Central – Managing multi-regional and multilingual sites
- 03RFC 5646 (BCP 47) – Tags for Identifying Languages
- 04W3C Internationalization – Language tags in HTML and XML
- 05Google – AI features and your website (oficjalna dokumentacja)
/// RELATED_RECORDS
Jak mierzyć ruch z ChatGPT, Perplexity i AI Mode — analityka ery AI (GA4 + logi serwera)
Ruch z AI konwertuje nawet ~4,4× lepiej niż klasyczny organik, a do sklepów urósł o ponad tysiąc procent — ale domyślny GA4 skutecznie go ukrywa: część ląduje w referralach, część w direct, a wejścia z AI Overviews są nierozróżnialne od zwykłego Google. Kompletny warsztat pomiaru: grupa kanałów AI w GA4 z gotowym regexem, ciemny ruch AI, sygnatura AI Overviews w GSC i logi serwera jako druga połowa obrazu.
JavaScript SEO — co naprawdę widzą Googlebot i crawlery AI bez renderowania
Googlebot renderuje JavaScript — z opóźnieniem i na własny koszt. Większość crawlerów AI nie renderuje go wcale: badanie Vercela pokazało, że GPTBot, ClaudeBot i PerplexityBot pobierają pliki JS, ale ich nie wykonują. Jak w 5 minut sprawdzić, co boty naprawdę widzą, czym różni się CSR od SSR/SSG/ISR i jak naprawić SPA bez przepisywania całej aplikacji.
Crawlery AI — kto skanuje Twoją stronę i jak tym zarządzać (robots.txt, pay-per-crawl)
GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot, Google-Extended — każdy robi co innego, a zablokowanie niewłaściwego oznacza zniknięcie z odpowiedzi AI. Kompletna mapa botów AI, macierz decyzyjna dla robots.txt, weryfikacja podszywających się scraperów oraz nowa ekonomia crawlu: pay-per-crawl Cloudflare (HTTP 402) i standard licencyjny RSL.
Signal received?
Przerwij
Ciszę
Zainicjuj protokół. Nawiąż połączenie. Zbudujmy coś głośnego.
