Seonal

← Späť na postupy

Hreflang chyby: keď viacjazyčný web súperí sám so sebou

10. 10. 2026 · 6 min čítania

Viacjazyčný web má jednu nepríjemnú vlastnosť: tie isté texty existujú v niekoľkých verziách a vyhľadávač musí uhádnuť, ktorú komu ukázať. Keď mu to nepoviete, rozhodne sa sám. Výsledok býva ten, že Čech dostane v Googli slovenskú verziu, Rakúšan nemeckú z Nemecka a vy sa čudujete, prečo konverzný pomer na jednom trhu padá.

Hreflang je značka, ktorou vyhľadávaču poviete: tieto URL sú tá istá stránka v inom jazyku alebo pre inú krajinu, vyber z nich tú správnu. Znie to jednoducho. V praxi je to jedna z najčastejšie zle nasadených vecí na webe, pretože chyba v nej nie je vidieť — stránky sa normálne zobrazujú, nič nesvieti načerveno, len sa v zahraničí deje niečo nepochopiteľné.

Čo hreflang robí a čo nerobí

Hreflang nie je signál pre pozície. Nezlepší poradie vo výsledkoch a nenahradí preklad. Robí dve veci:

  1. Určuje, ktorá jazyková verzia sa zobrazí používateľovi v danom jazyku a krajine.
  2. Spája jazykové verzie do skupiny, takže ich vyhľadávač nevyhodnotí ako konkurenčné duplikáty.

Druhý bod je ten, ktorý firmy prekvapí. Keď máte slovenskú a českú verziu produktovej stránky a texty sú z 80 % rovnaké (ceny, parametre, názvy), bez hreflangu si tieto dve URL reálne konkurujú. Je to podobný problém ako kanibalizácia kľúčových slov, len naprieč jazykmi.

Ako vyzerá správny zápis

V <head> každej jazykovej verzie musia byť odkazy na všetky verzie vrátane tej aktuálnej:

``html <link rel="alternate" hreflang="sk" href="https://example.com/sk/produkt/" /> <link rel="alternate" hreflang="cs" href="https://example.com/cs/produkt/" /> <link rel="alternate" hreflang="de-AT" href="https://example.com/at/produkt/" /> <link rel="alternate" hreflang="x-default" href="https://example.com/en/produkt/" /> ``

Tri možnosti nasadenia: značky v <head>, HTTP hlavička Link (pre PDF a iné nehtml súbory) alebo atribúty xhtml:link v XML sitemape. Pri veľkom webe je sitemapa najpraktickejšia — nemusíte zasahovať do šablón a zmena je na jednom mieste.

Osem chýb, ktoré vidím najčastejšie

1. Chýbajúca spätná väzba

Hreflang funguje obojsmerne. Keď slovenská stránka odkazuje na českú, česká musí odkazovať späť na slovenskú. Ak nie, Google celý vzťah ignoruje. Toto je najčastejšia chyba na weboch, kde jazykové mutácie vznikali postupne — nová verzia odkazuje na staršie, staršie o novej nevedia.

Typický spúšťač: prekladovú verziu spravuje iný človek alebo iný plugin.

2. Nesprávne kódy jazyka a krajiny

Jazyk je ISO 639-1 (dvojpísmenový), krajina je ISO 3166-1 alpha-2. Chyby, ktoré sa opakujú:

  • en-UK namiesto správneho en-GB
  • cz ako jazyk — čeština je cs, cz je kód krajiny
  • sk-SK je v poriadku, ale SK-sk nie je — poradie je jazyk-krajina
  • de-DE-AT — kombinácia dvoch krajín neexistuje
  • samotné at alebo cz bez jazyka — krajina sa nedá použiť samostatne

Jeden neplatný kód neshodí celú stránku, zhodí len tú jednu väzbu. A zhodí ju ticho.

3. Chýbajúci odkaz na seba

Každá verzia musí obsahovať aj hreflang na samu seba. Šablóny, ktoré vypisujú „ostatné jazyky", tento riadok často vynechajú. Bez neho je skupina neúplná a Google ju spracuje nespoľahlivo.

4. Hreflang si protirečí s canonicalom

Najzákernejšia kombinácia. Slovenská stránka má hreflang na českú verziu, ale zároveň canonical ukazuje na anglickú verziu. Tým hovoríte dve veci naraz: „toto je samostatná jazyková verzia" a „toto nie je hlavná verzia, indexuj inú". Canonical vyhrá a hreflang zmizne.

Pravidlo: canonical každej jazykovej verzie ukazuje sám na seba. Kanonizovať sa dá v rámci jedného jazyka (napríklad URL s parametrami), nie medzi jazykmi. Viac o tom, kedy canonical dáva zmysel a kedy nie, nájdete v článku o canonical tagoch a duplicitnom obsahu.

5. Relatívne URL

href="/cs/produkt/" nestačí. V hreflangu musí byť absolútna URL aj s protokolom a doménou. Rovnako musí sedieť verzia s www alebo bez neho a https — ak web beží na https://www.example.com a hreflang odkazuje na http://example.com, vzniká reťazenie presmerovaní, ktoré väzbu znefunkční.

6. Hreflang mieri na presmerovanie, 404 alebo noindex

Cieľová URL musí vracať stav 200 a byť indexovateľná. Stáva sa to po zmene URL štruktúry a slugov: slovenské URL sa prepíšu, hreflang ostane starý a mieri na 301. Alebo sa jazyková mutácia dočasne vypne cez noindex, no odkazy na ňu zostanú.

7. Chýbajúci alebo zle nastavený x-default

x-default je verzia pre každého, kto nespadá do žiadneho definovaného jazyka. Nie je povinný, ale bez neho si vyhľadávač vyberie sám. Dáva zmysel nasmerovať ho na anglickú verziu alebo na stránku s výberom jazyka. Nedáva zmysel dať x-default na lokálnu verziu, ktorú návštevník z iného trhu nepochopí.

8. Dva zdroje pravdy naraz

Hreflang v <head> aj v sitemape súčasne je prípustný, ale len ak oba hovoria to isté. Keď plugin generuje jedno a šablóna druhé, dostanete protichodné signály. Vyberte si jedno miesto. Ak idete cez sitemapu, skontrolujte, či ju vyhľadávač vôbec číta — časté problémy popisujem v článku o chybách v sitemape a robots.txt.

Hreflang nenahradí kvalitný preklad

Dve veci, ktoré hreflang nevyrieši:

Strojový preklad bez korektúry. Ak je česká verzia len preložená slovenčina s chybami, hreflang zabezpečí, že ju Čech uvidí — a odíde. Signál o správnej verzii nenahrádza dôvod zostať.

Rovnaké titulky vo všetkých jazykoch. Prekladové pluginy často nechávajú titulky a meta popisy v pôvodnom jazyku alebo ich kopírujú. To je samostatný problém, ktorý rieši oprava duplicitných titulkov — hreflang s ním nič nespraví.

Ako hreflang overiť

Search Console samostatný report na hreflang už nemá, takže kontrola je na vás. Postup, ktorý funguje:

  1. Otvorte zdrojový kód ľubovoľnej jazykovej verzie a nájdite všetky rel="alternate" riadky.
  2. Skontrolujte, či je medzi nimi odkaz na aktuálnu URL.
  3. Otvorte každú cieľovú URL a overte, či odkazuje späť na východiskovú.
  4. Skontrolujte stavové kódy cieľových URL — musia byť 200, nie 301 ani 404.
  5. Porovnajte canonical každej verzie: musí ukazovať sám na seba.
  6. Prejdite kódy jazykov a krajín proti ISO zoznamom.

Pri troch jazykoch a piatich stránkach je to na pol hodiny. Pri troch jazykoch a 400 stránkach je to práca, ktorú ručne nikto nedorobí.

Čo z toho zvládnem nájsť ja

Pri prechode webu kontrolujem hreflang na každej stránke, kde ho nájdem: či existuje odkaz na seba, či sú väzby obojsmerné, či kódy zodpovedajú platným ISO hodnotám, či cieľové URL vracajú 200 a či si hreflang neprotirečí s canonicalom. Nález dostanete s konkrétnou URL a konkrétnym riadkom, nie s hláškou „problém s medzinárodným cielením".

Čo nevyriešim za vás: rozhodnutie, ktoré trhy chcete oddeliť na úrovni krajiny (de-DE vs. de-AT) a ktoré stačí na úrovni jazyka. To závisí od toho, či máte pre daný trh iné ceny, dopravu alebo sortiment. Ak sa obsah nelíši, delenie podľa krajín vám len znásobí počet URL, ktoré treba udržiavať.

Ak neviete, v akom stave hreflang na vašom webe je, začnite bezplatným auditom — uvidíte zoznam nálezov vrátane tých, ktoré sa týkajú jazykových verzií. Oprava hreflangu patrí medzi zásahy, ktorých dopad je dobre merateľný: zmení sa pomer návštev z jednotlivých krajín, nie celkové číslo. Preto má zmysel sledovať dopad opravy v segmentoch podľa krajiny, nie v jednom grafe.


Toto píše nástroj, ktorý si viete kúpiť

Článok navrhol a napísal Seonal — ten istý, ktorý na vašom webe nájde chyby, opraví ich a výsledok zmeria. Audit je zadarmo.

Zistite zadarmo, koľko chýb má váš web Cenník