Proč je hreflang kritický a kde nejčastěji selhává
Hreflang je signál pro vyhledávače, který páruje jazyk a často i regionální variantu jednotlivých verzí stránek. Správná implementace snižuje riziko nesprávného zobrazení (např. en-US ve Velké Británii) a eliminuje interní konkurenci verzí v SERPu. Chyby však vznikají již u základních principů: chybí self-referential odkaz, neexistuje return tag, míchají se kanonizace napříč jazyky nebo se používají neplatné kódy. Následujících 10 bodů je praktický kontrolní seznam, který můžete projít při migracích, nasazení nového trhu, ale i při pravidelné technické údržbě.
1) Vždy používejte platné jazykové a regionální kódy (BCP-47)
Hreflang používá jazyk (povinný) a volitelně regionální kód. Příklady: en, en-GB, en-US, sk, cs-CZ, de-AT. Vyhněte se neexistujícím či „obchodním“ kódům (např. en-EU). Kódy musí být case-insensitive, ale běžně se píší tak, že jazyk je malými písmeny a region velkými: en-GB.
2) Každá alternativa musí sama sebe uvádět (self-referencing)
Každá jazyková/regionální verze stránky musí v hreflangu odkazovat i na sebe. Tím se zabrání tomu, aby vyhledávač vnímal stránku pouze jako alternativu jiné verze. Příklad HTML <head> implementace:
<link rel="alternate" hreflang="sk" href="https://www.example.com/sk/produkt-x/" />
<link rel="alternate" hreflang="cs-CZ" href="https://www.example.com/cz/produkt-x/" />
<link rel="alternate" hreflang="en-GB" href="https://www.example.com/uk/product-x/" />
<link rel="alternate" hreflang="x-default" href="https://www.example.com/" />
3) Zajistěte obousměrnost (return tags) mezi všemi alternativami
Pokud stránka A uvádí alternativu na stránku B, musí i stránka B odkazovat zpět na stránku A. Obousměrnost je nutná mezi všemi páry alternativ, jinak bude hreflang považován za neúplný či nespolehlivý.
4) Nepřekračujte hranice kanonizace (hreflang ≠ jazykový kanál)
Kanonická adresa rel="canonical" musí vždy směřovat na tu samou jazykově-regionální verzi (buď sama na sebe, nebo na svou kanonickou variantu v rámci téhož jazyka). Nikdy nekanonizujte sk na cz nebo en s úmyslem „přesunout signál“ – zrušíte tím význam hreflangu.
5) Implementujte pouze jednu primární metodu na stránce (HTML, HTTP hlavička nebo XML sitemap)
Hreflang lze implementovat třemi způsoby: v HTML, v HTTP hlavičkách (např. pro PDF) a přes XML sitemapu. Doporučení v praxi: vyberte si jednu hlavní metodu a tu dodržujte konzistentně. Při paralelním použití více metod se snadno objeví nesrovnalosti (různý počet alternativ, odlišné URL, jiné kódy), což snižuje důvěryhodnost signálu.
Příklad v XML sitemapě:
<url>
<loc>https://www.example.com/sk/produkt-x/</loc>
<xhtml:link rel="alternate" hreflang="sk" href="https://www.example.com/sk/produkt-x/"/>
<xhtml:link rel="alternate" hreflang="cs-CZ" href="https://www.example.com/cz/produkt-x/"/>
<xhtml:link rel="alternate" hreflang="en-GB" href="https://www.example.com/uk/product-x/"/>
<xhtml:link rel="alternate" hreflang="x-default" href="https://www.example.com/"/>
</url>
6) Použijte x-default jako výběrový uzel (jazykový rozcestník)
Máte-li stránku, která má návštěvníka přesměrovat či navést k výběru lokalizace, použijte hreflang="x-default". Tím jasně uvedete, že se nejedná o preferenci pro konkrétní zemi/jazyk, ale o „neutrální“ cílovou stránku.
7) Hreflang uvádějte pouze na indexovatelných, konzistentních URL
Alternativy musí být indexovatelné (bez noindex, bez blokace v robots.txt) a konzistentní: stejný protokol (https), správný host (bez mixu www/bez www), správný trailing slash a bez nechtěných parametrů měnících obsah. Vyhněte se hreflangu na URL s 3xx/4xx/5xx statusy.
8) Nesměřujte signál segmentací filtrů a parametrů
V e-commerce je lákavé lokalizovat i množství filtrovaných URL. Definujte si „indexovatelný korpus“ (kategorie, produkt, klíčové landingy) a hreflang používejte pouze zde. Filtry/parametry (řazení, barva, velikost) ponechte jako noindex, follow s kanonizací na hlavní verzi, jinak vzniká „šum“ a chyby v párování alternativ.
9) Ošetřete speciální případy: PDF, AMP, mobilní verze, stránkování
Hreflang lze zaslat pomocí HTTP hlaviček u souborů typu PDF. U AMP a mobilních verzí dbejte na to, aby byl hreflang zahrnut na každé alternativě konzistentně s rel="amphtml"/alternate pro mobilní verzi. Při stránkování mějte hreflang na každé stránce série s párováním na odpovídající stránky v jiné jazykové verzi (1↔1, 2↔2…).
10) Ověření a monitoring: automatizujte kontrolu v CI/CD
Po nasazení ověřujte:
- Syntax (platné kódy, správné páry, self-ref, return-tags).
- Dostupnost (200 OK, HTTPS, bez blokací a duplicit).
- Konzistenci s kanonickými tagy (žádné cross-language canonical).
- Mapování URL mezi jazyky (1:1, nebo jasná pravidla 1:n při konsolidaci obsahu).
V rámci CI/CD pipeline přidejte kroky: crawl lokalizací, validaci hreflangu, porovnání počtu alternativ mezi HTML a sitemapou, kontrolu duplicitních/nesrovnalostních párů a report diffs při každém deployi.
Rozhodovací diagram při chybách (stručný přehled)
| Symptóm | Pravděpodobná příčina | Řešení |
|---|---|---|
| Střídání jazyků v SERPu | Chybí self-ref nebo return-tags; neplatné kódy | Doplnit obousměrnost, opravit kódy podle BCP-47 |
| Indexuje se „nesprávný“ jazyk | Canonical ukazuje na jinou jazykovou verzi | Upravit canonical, sladit s hreflang |
| Hreflang ignorován | URL mají status 3xx/4xx/5xx nebo noindex |
Zajistit 200 OK, odstranit blokace |
| Rozdíl mezi HTML a sitemapou | Neshodný počet alternativ / odlišné URL | Zjednotit primární metodu, synchronizovat zdroje |
| Nekonzistentní varianty trhů | Míchají se subdomény, protokoly, trailing slash | Normalizovat URL strukturu a interní odkazy |
Implementační vzory podle typu projektu
- Vícedoménový model (
example.sk,example.cz): udržujte identické struktury cest; mapování je pak stabilní a automatizovatelné. - Subdirectory model (
/sk/,/cz/): ideální na jednotném hostiteli a CDN; důležité je přísně izolovat jazykové zdroje (menu, meta, data, měny). - Subdoménový model (
sk.example.com): pozor na shoduwwwa certifikátů; hreflang musí používat absolutní URL.
Příklady správných a chybných implementací
Správné (HTML, absolutní URL, self-ref, x-default):
<link rel="alternate" hreflang="sk" href="https://www.example.com/sk/sluzba/" />
<link rel="alternate" hreflang="cs-CZ" href="https://www.example.com/cz/sluzba/" />
<link rel="alternate" hreflang="en-GB" href="https://www.example.com/uk/service/" />
<link rel="alternate" hreflang="x-default" href="https://www.example.com/" />
Chybné (cross-language canonical):
<link rel="canonical" href="https://www.example.com/en/service/" /> <!-- na SK verzii -->
Hreflang přes HTTP hlavičku pro ne-HTML zdroje (např. PDF)
U PDF nebo jiných typů odpovědí můžete použít hlavičku Link:
Link: <https://www.example.com/sk/brochura.pdf>; rel="alternate"; hreflang="sk",
<https://www.example.com/cz/brozura.pdf>; rel="alternate"; hreflang="cs-CZ",
<https://www.example.com/>; rel="alternate"; hreflang="x-default"
Proces zavedení a kontroly ve 5 krocích
- Inventarizace URL: seznam všech jazykových verzí, párování 1:1 (mapa).
- Výběr metody: HTML vs. XML sitemap (u velkých webů preferujte sitemapu pro škálovatelnost).
- Generování tagů: šablony pro každý typ stránky (domovská, kategorie, produkt, článek).
- Validace: testovací crawl (výstup: počet alt verzí, výskyt kódů, stavové kódy, sladění canonical).
- Monitoring: CI kontrola při každém deployi + pravidelný crawl (měsíčně) s regresní komparací.
Nejčastější „skryté“ pasti v reálných projektech
- Dynamický jazykový přepínač, který mění pouze UI, nikoli URL – hreflang ztrácí smysl bez unikátních URL.
- Geo-redirect před doručením HTML – vyhledávač uvidí jinou verzi, než kterou deklaruje hreflang. Používejte jemná doporučení (banner) místo tvrdých redirectů.
- Přerušené mapování (některý trh chybí v části šablon) – přeruší obousměrnost v sérii stránkování či u variant produktů.
- Mix absolutních a relativních URL v tagách – vždy používejte absolutní URL s protokolem a hostitelem.
Checklist: „Hreflang bez chyb“ na jednom místě
- Platné BCP-47 kódy (jazyk povinný, region volitelný).
- Self-referential tag přítomen na každé verzi.
- Return-tags mezi všemi alternativami.
- Canonical ukazuje na stejný jazyk (žádné cross-language canonical).
- Jedna primární implementační metoda (HTML/HTTP/Sitemap) a konzistentní.
x-defaultpro rozcestník.- Jen indexovatelné, 200 OK URL; žádné blokace či redirecty.
- Minimalizovaná indexace filtrů/parametrů; jasný korpus stránek.
- Ošetřené speciální případy (PDF, AMP, mobil, stránkování).
- Automatizované testy a pravidelný monitoring v CI/CD.
Hreflang jako stabilní signál, nikoli jednorázový úkol
Hreflang je dlouhodobý technický závazek. Nejlepší výsledky přináší tam, kde se kombinuje jednoznačná URL strategie, disciplinovaná kanonizace a automatizované validace. Pokud se budete držet výše uvedených 10 bodů, minimalizujete šum, zlepšíte relevanci v SERPu a zajistíte, že uživatelé vždy obdrží správnou jazykovou/regionální verzi vašeho obsahu.