SEO dla witryn wielojęzycznych

Jak optymalizować witrynę obsługującą wiele języków — wielojęzyczność a wiele regionów, rzeczywiste wykrywanie języka przez Google, hreflang, struktura URL-i i Bing.

Opublikowano po raz pierwszy: 25 cze 2026 · Ostatnia aktualizacja: 3 sie 2026 · Advanced
Języki

SEO wielojęzyczne polega na optymalizowaniu witryny obsługującej więcej niż jeden język, aby każda wersja trafiała do właściwego użytkownika wyszukiwarki. Niemal każdy popełnia ten sam błąd: Google ignoruje atrybut `<html lang>` i nagłówki Content-Language — wykrywa język na podstawie widocznego tekstu. hreflang również nie mówi Google, w jakim języku jest strona; mapuje tylko powiązane alternatywne URL-e. Bing działa odwrotnie — opiera się na meta tagu content-language. Najpierw zadbaj o język, potem połącz alternatywy przez hreflang, a następnie wybierz strukturę URL-i (dla większości witryn podkatalogi). Błędy występują w 67% konfiguracji hreflang, ale Google wiele z nich naprawia automatycznie.

TL;DR — Uporządkuj model mentalny, a większość wielojęzycznego SEO ułoży się sama. Google nie czyta atrybutu <html lang> ani nagłówka HTTP Content-Language w celu wykrywania języka — przede wszystkim korzysta z widocznego tekstu. Inne wyszukiwarki mogą używać innych sygnałów, więc sprawdzaj ich aktualne zalecenia. hreflang nie deklaruje języka strony; mapuje alternatywne URL-e, aby Google mógł podmienić właściwy — i jest wskazówką, a nie dyrektywą. Jest też potwornie podatny na błędy: moje badanie 374 756 domen wykazało, że 67% miało problemy z hreflang. Dla większości witryn używaj podkatalogów, nigdy nie przekierowuj automatycznie Googlebota i tłumacz tylko strony z rzeczywistym uzasadnieniem biznesowym.

Evidence for this claim Google recommends distinct URLs for each language version and cautions against relying on cookies or browser settings to swap content at one URL. Scope: Current Google multilingual site guidance. Confidence: high · Verified: Google Search Central: Managing multilingual sites Evidence for this claim hreflang can connect equivalent language or regional URLs, while page language is determined from visible content rather than the annotation alone. Scope: Current Google localized-version guidance. Confidence: high · Verified: Google Search Central: Localized versions

Wielojęzyczność ≠ wiele regionów

To podstawowe rozróżnienie. Wielojęzyczność dotyczy języka, a wiele regionów — kraju. Szwajcarska witryna po niemiecku, francusku i włosku jest wielojęzyczna, ale obsługuje jeden region. Witryna angielska dla USA i Wielkiej Brytanii jest wieloregionalna, ale jednojęzyczna. Te zjawiska często się nakładają, lecz używają różnych sygnałów i tworzą inne problemy, dlatego rozdzielam je w myślach — Ty też powinieneś. Własne ujęcie Google brzmi: „A multilingual website is any website that offers content in more than one language” („Wielojęzyczna witryna to każda witryna oferująca treść w więcej niż jednym języku”), natomiast „A multi-regional website is one that explicitly targets users in different countries” („Wieloregionalna witryna to witryna, która wyraźnie kieruje ofertę do użytkowników w różnych krajach”).

Jak Google faktycznie wykrywa język strony (to najważniejsza rzecz)

Oto rzecz, którą w całym tym temacie najczęściej się źle rozumie; warto ją nawet przesadnie podkreślić, bo tak wiele osób popełnia ten błąd:

Google ignoruje Twój atrybut <html lang>. Google ignoruje nagłówek HTTP Content-Language. Czyta widoczny tekst.

Wprost z dokumentacji: “Google uses the visible content of your page to determine its language. We don’t use any code-level language information such as lang attributes, or the URL.” („Google używa widocznej treści strony, aby określić jej język. Nie używamy informacji o języku na poziomie kodu, takich jak atrybuty lang ani URL”). A na stronie hreflang: “Google doesn’t use hreflang or the HTML lang attribute to detect the language of a page; instead, we use algorithms to determine the language.” („Google nie używa hreflang ani atrybutu HTML lang do wykrywania języka strony; zamiast tego używamy algorytmów do określania języka”).

W programie Search Off the Record (lipiec 2024) Gary Illyes nadał temu nazwę: LDCP — Language Demotion, Country Promotion. Wyjaśnił: “if someone is searching in German and your page is in English, then you would get a demotion.” („jeśli ktoś szuka po niemiecku, a Twoja strona jest po angielsku, otrzymasz obniżenie”). To mechanizm rankingowy i bardziej fundamentalny niż hreflang — jeśli strona nie jest naprawdę w języku osoby wyszukującej, LDCP obniży jej pozycję niezależnie od tego, co mówią tagi. (Illyes zasugerował też, że takie ręczne sygnały odchodzą, zauważając, że Google ma już systemy „automatically learning” („uczące się automatycznie”) parować wersje w innych językach — automatyczne wykrywanie wyznacza kierunek.)

Dlaczego Google tak bardzo nie ufa <html lang>? Bo ten atrybut jest stale błędny. Gary opowiedział historię Joomli: CMS “came with the Lang attribute set to English, and there was no way to override it… And then you looked at the page, and it was 100% German. So it was like you can’t trust that.” („miał atrybut Lang ustawiony na angielski i nie było sposobu, aby go nadpisać… A potem patrzyło się na stronę, która była w 100% po niemiecku. Było więc jasne, że nie można temu ufać”). John Mueller powiedział to samo — atrybut HTML lang to “something we don’t use at all” („coś, czego w ogóle nie używamy”) i “almost always wrong. So we tend to ignore that.” („prawie zawsze jest błędny. Dlatego zwykle go ignorujemy”).

Wniosek: wykrywanie języka to problem treści, a nie znaczników. Pisz prawdziwą treść w języku docelowym. Atrybut lang nadal ma znaczenie dla dostępności (czytniki ekranu) i dla Binga — tylko nie dla wykrywania języka przez Google.

Bing robi to odwrotnie

Bing nie obsługuje hreflang. Tam, gdzie Google ignoruje podpowiedzi językowe na poziomie kodu, Bing na nich polega. Kolejność priorytetów Binga:

  1. <meta http-equiv="content-language" content="en-us">sygnał podstawowy.
  2. Atrybut <html lang=""> — sygnał drugorzędny.
  3. Treść tekstowa na stronie.

Format Binga to dwuliterowy kod języka ISO 639, myślnik, a następnie kod geografii ISO 3166 (en-us, es-mx). Dlatego poprawnie umiędzynarodowiona witryna działająca w obu wyszukiwarkach potrzebuje treści pod osobnymi URL-ami oraz hreflang (dla Google/Yandex), oraz meta tagu content-language (dla Binga). Sygnały nie są redundantne; trafiają do różnych wyszukiwarek.

Co hreflang faktycznie robi (a czego nie robi)

hreflang to mapa relacji, a nie detektor języka. Nie mówi Google, w jakim języku jest strona — Google już uzyskuje tę informację z treści. Mówi, które URL-e są swoimi alternatywami i dla jakiej grupy językowo-regionalnej, aby Google mógł podmienić właściwy URL dla osoby wyszukującej. Google: “Use hreflang to tell Google about the variations of your content, so that we can understand that these pages are localized variations of the same content.” („Używaj hreflang, aby informować Google o wariantach treści, dzięki czemu możemy rozumieć, że te strony są zlokalizowanymi wariantami tej samej treści”).

Trzy rzeczy muszą być prawidłowe, inaczej klaster zostanie zignorowany:

  • Dwukierunkowość. “If two pages don’t both point to each other, the tags will be ignored.” („Jeśli dwie strony nie wskazują wzajemnie na siebie, tagi zostaną zignorowane”). Strona angielska wskazuje włoską, więc włoska musi wskazywać z powrotem.
  • Odwołanie do samej siebie. Każda strona wymienia siebie oraz wszystkie pozostałe.
  • x-default jako awaryjna wersja dla niedopasowanych języków (zalecane, ale nie bezwzględnie wymagane).

Trzy metody dostarczania: tagi HTML <link> w <head>, nagłówek HTTP Link (przydatny dla plików innych niż HTML, np. PDF-ów) albo sitemap XML z przestrzenią nazw xhtml:link. URL-e muszą być w pełni kwalifikowane i zawierać https://.

I co najważniejsze: hreflang jest wskazówką, a nie dyrektywą. Własne sformułowanie Google brzmi: “hreflang annotations are a hint to Google, not a directive.” („Adnotacje hreflang są wskazówką dla Google, a nie dyrektywą”). Google może nadpisać Twoje ustawienia i robi to, gdy tagi canonical, sygnały treści lub status indeksowania są z nimi niezgodne.

Wartościowy, niedostatecznie opisany aspekt: hreflang przyspiesza indeksowanie nowych języków

Oto korzyść, o której prawie nikt nie mówi. W tym samym odcinku SOTR Gary Illyes powiedział, że odkrycie hreflang wyzwala crawl weryfikacyjny alternatyw: “There is a dependency crawl triggering when we discover Hreflang, like we want to verify that.” („Gdy odkrywamy Hreflang, uruchamia się zależny crawl, ponieważ chcemy to zweryfikować”). W prostych słowach: gdy Google znajdzie hreflang na stronie, zaczyna craw­lować wersje w innych językach, aby zweryfikować relację, co przyspiesza indeksowanie nowych stron językowych. Hreflang nie służy więc tylko do wyświetlania właściwej wersji; przyspiesza też odkrywanie nowo uruchomionych języków.

Dlaczego dane hreflang w GSC wyglądają skąpo (i dlaczego to normalne)

Warto zapamiętać jeszcze jedną uwagę Illyesa: “Search Console only reports canonicals… the vast majority of the Hreflang clusters… are not canonical.” („Search Console raportuje tylko canonicale… zdecydowana większość klastrów Hreflang… nie jest kanoniczna”). Większość alternatyw hreflang nie jest URL-ami kanonicznymi, więc nie pojawia się osobno w raportach pokrycia GSC. Jeśli pulpity sugerują, że strony językowe „nie są zaindeksowane”, często jest to tylko raportowanie canonicali przez GSC, a nie realny problem. Zamiast ufać zagregowanej liczbie, zweryfikuj wynik narzędziem URL Inspection i w działających wynikach wyszukiwania.

Zduplikowana treść: es-MX a es-ES

Częstą obawą jest oznaczenie dwóch wariantów hiszpańskiego jako duplikatów. Rzeczywista zasada Google brzmi: “Localized versions of a page are only considered duplicates if the main content of the page remains untranslated.” („Zlokalizowane wersje strony są uznawane za duplikaty tylko wtedy, gdy główna treść strony pozostaje nieprzetłumaczona”). Dwie autentycznie hiszpańskie strony z prawdziwymi różnicami regionalnymi (waluta, słownictwo, lokalne odniesienia) są odrębne. Jednak dwa URL-e es-ES i es-MX z identycznym tekstem i bez różnic regionalnych zostaną potraktowane jako duplikaty — sam hreflang ich nie rozdzieli; robi to odrębna treść regionalna. W prawidłowym klastrze hreflang sygnały mogą również konsolidować się między alternatywami, co zwykle pomaga.

Struktura URL-i, linkowanie wewnętrzne i wykrywanie języka

Struktura. Dla większości witryn używaj podkatalogów (/es/, /fr/) — dziedziczą autorytet głównej domeny i są łatwe w utrzymaniu. Subdomeny są traktowane bardziej jak osobne witryny. ccTLD-y są najsilniejszym sygnałem geotargetowania kraju, ale oznaczają osobne usługi i osobne budowanie linków. Parametry URL są wyraźnie „niezalecane”.

Linkowanie wewnętrzne między wersjami. Rozsądnie łącz ze sobą wersje językowe (przełącznik języka jest częścią tego mechanizmu), ale nie traktuj każdej alternatywy jak głównego linku nawigacyjnego. Pozwól, aby formalną relację przenosił hreflang, a przełącznik służył użytkownikom.

UX wykrywania języka — i pułapka z crawlowaniem. To miejsce, w którym witryny po cichu się psują. Googlebot “sends HTTP requests without setting Accept-Language in the request header” („wysyła żądania HTTP bez ustawiania Accept-Language w nagłówku żądania”) i crawluje głównie z adresów IP w USA (choć korzysta też z części adresów spoza USA). Jeśli automatycznie przekierujesz użytkowników do wersji językowej na podstawie IP lub Accept-Language, Googlebot może widzieć wyłącznie wersję angielską i nigdy nie odkryć reszty. Dosadne zalecenie Google brzmi: “Avoid automatically redirecting users from one language version of a site to a different language version.” („Unikaj automatycznego przekierowywania użytkowników z jednej wersji językowej witryny do innej”).

Zrób zamiast tego: udostępnij osobne URL-e, oznacz je hreflang i jeśli chcesz pomóc użytkownikom, pokaż nienachalny baner z sugestią („Ta strona jest dostępna po angielsku — przełączyć?”), który pozostawi ich na bieżącym URL-u i zapamięta wybór przez cookie albo localStorage. Używaj Accept-Language jako sugestii, nigdy jako wyzwalacza przekierowania. Nie używaj też flag jako identyfikatorów języka — flagi oznaczają kraje, nie języki.

Jakość tłumaczenia i tłumaczenie maszynowe

Samo tłumaczenie maszynowe nie jest zakazane. Własna definicja Google brzmi: “Scaled content abuse is when many pages are generated for the primary purpose of manipulating search rankings and not helping users.” („Nadużycie treści skalowanych występuje, gdy wiele stron jest generowanych przede wszystkim po to, aby manipulować rankingiem wyszukiwania, a nie pomagać użytkownikom”). Tłumaczenie jest wymienione jako przykład automatycznej transformacji objętej tą polityką — “including through automated transformations like synonymizing, translating, or other obfuscation techniques,” („w tym przez automatyczne transformacje, takie jak synonimizowanie, tłumaczenie lub inne techniki zaciemniania”) — konkretnie “where little value is provided to users.” („gdy użytkownikom dostarczana jest niewielka wartość”). Oceniana jest wartość, nie metoda produkcji. Surowe tłumaczenie maszynowe masowo publikowane bez nadzoru redakcyjnego jest rzeczywistym ryzykiem; tłumaczenie maszynowe z ludzką weryfikacją i redakcją (workflow często nazywany MTPE) to standardowy, skalowalny sposób unikania tego ryzyka. Oceniaj przetłumaczoną stronę tak jak każdą inną — czy odpowiada na prawdziwą intencję wyszukiwania danego rynku — i nie tłumacz po prostu angielskich słów kluczowych: prowadź osobne badania słów kluczowych dla każdego języka, bo intencja i sposób wyrażania różnią się między rynkami. (Więcej: tłumaczenie maszynowe i SEO.) Przejdź do cytatu Przejdź do cytatu

Schemat dla witryn wielojęzycznych

Używaj właściwości inLanguage w schemacie Article/Product/FAQPage, aby wskazać język treści, i nadaj każdej wersji językowej własny blok schematu w tym języku. Schema i hreflang wykonują różne zadania: hreflang mapuje alternatywne URL-e, a schema wyjaśnia znaczenie i język treści. Są uzupełniającymi się warstwami.

Wskaźnik błędów: moje badanie 374 756 domen

Przeprowadziłem badanie 374 756 domen używających hreflang. Nagłówek brzmi: problemy miało ponad 67%. Najczęstsze problemy, od najczęstszego: brak x-default (56,3%), brak odwołań do samej siebie (18%), uszkodzone lub przekierowane referencje (16,9%), brak tagów wzajemnych (15,3%), referencje niekanoniczne (8%), złe kody ISO (4,6%), niespójność HTML lang i hreflang (3,2%), zduplikowane wpisy językowe (2,5%) oraz deklarowanie tej samej strony dla wielu języków (2,5%).

Dwie uwagi sprawiają, że nie trzeba popadać w katastrofizm. Po pierwsze, dwa główne problemy — x-default i odwołania do samej siebie — są zalecane, a nie bezwzględnie wymagane, więc rzeczywista skala problemu jest łagodniejsza, niż sugeruje 67%. Po drugie, Google wiele z tego naprawia za Ciebie. Gary Illyes powiedział, że błędy hreflang „didn’t cause problems” („nie powodowały problemów”) w okresie jego implementacji, a moje wieloletnie stanowisko (z prelekcji Enterprise SEO Chaos na SMX) jest takie, że pogoń za każdym błędem hreflang może nie być warta czasu, bo Google prawdopodobnie automatycznie koryguje wiele z nich. Jednak błędy strukturalne — brak linków wzajemnych i uszkodzone URL-e — rzeczywiście psują klaster i należy je naprawiać. Priorytet: naprawiaj strukturę, monitoruj zachowanie.

Zagrożenie 2025 roku: proxy translate.goog Google

Warto znać nowszy zwrot akcji (artykuł Motoko Hunt w Search Engine Land z czerwca 2025 r.): gdy Google uzna, że nie ma dostępnej wysokiej jakości treści w lokalnym języku, automatycznie tłumaczy treść przez proxy translate.goog. Liczy się przeglądarka — użytkownicy Chrome są kierowani na oryginalny URL wydawcy (ruch zostaje zachowany), ale użytkownicy Safari/Firefox przechodzą przez translate.goog (ruch jest tracony). Dane Ahrefs wskazały 6,2 miliona wystąpień w AI Overviews z przetłumaczonymi URL-ami i setki milionów kliknięć ekspozycji. Wniosek strategiczny: publikowanie natywnej treści w języku lokalnym jest jednocześnie obroną (Google nie przetłumaczy przez proxy czegoś, co już udostępniasz) i atakiem (samodzielnie pozycjonujesz się na tych rynkach). Traktuj automatycznie tłumaczone SERP-y jako sygnał niezaspokojonego popytu.

Ostrzeżenie Muellera: nie tłumacz wszystkiego

Na koniec — powściągliwość. John Mueller ostrzega przed odruchem tworzenia wszystkich języków — “Let’s create all languages! Let’s make pages for all countries! What if someone in Japan wants to read it in Swahili?” („Stwórzmy wszystkie języki! Zróbmy strony dla wszystkich krajów! A co, jeśli ktoś w Japonii będzie chciał przeczytać to po suahili?”) — i zauważa, że “it’s easy to dig into endless pits of complexity with hreflang.” („łatwo wpaść w nieskończone doły złożoności związane z hreflang”). Jego rada, którą popieram: “first… limit the number of pages you create to those that are absolutely critical & valuable.” („najpierw… ogranicz liczbę tworzonych stron do tych, które są absolutnie kluczowe i wartościowe”). Priorytetem niech będą strony o dużym ruchu i wysokiej konwersji na rynkach z potwierdzonym popytem (użyj GSC, aby znaleźć zapytania, które już generują wyświetlenia w języku docelowym). Każda wersja językowa to dodatkowy koszt crawlowania, indeksowania, ustalania canonicali i utrzymania — przeznaczaj na nią zasoby tylko tam, gdzie przynosi rzeczywisty zwrot.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.