SEO-34
Deklarovaný jazyk stránky neodpovídá obsahu
Co kontrola měří
Nález vznikne v jediném, schválně nejužším případě: stránka deklaruje <html lang> s platným kódem jiným než cs, ale její text obsahuje českou diakritiku. Report uvede deklarovaný i odhadnutý jazyk.
Proč jen čeština, když nálezy umíme v devíti jazycích? Protože odhad jazyka z textu spolehlivě zvládneme jen u ní: diakritika je jednoznačný podpis. U ostatních jazyků by rozšiřování srovnání přineslo hlavně příležitosti hádat špatně, a nález, který občas obviní správně nastavenou stránku, je horší než nález, který mlčí.
Jazyk ale neměříme, odhadujeme ho statistickou analýzou textu. Spočítáme, jaký podíl všech písmen na stránce tvoří znaky č ď ě ň ř š ť ů ž, tedy ty, které kromě češtiny a slovenštiny nemá žádný z devíti jazyků, ve kterých umíme nález napsat. Když je jich aspoň tři a zároveň tvoří 2,5 % a víc všech písmen, prohlásíme text za český. Práh i seznam znaků žijí v apps/.
Práh je z měření, ne od stolu. Skutečně české stránky mají hustotu těch znaků 4,43–4,57 %, cizojazyčné stránky, které jen nesou české jméno, adresu nebo název firmy, 0,09–1,39 %. Mezi tím je široká mezera a 2,5 % leží uprostřed s rezervou na obě strany. Dřívější práh 1 % ji nerozděloval: česká adresa v patičce anglické stránky vyšla na 1,39 % a stránka se označila za českou: přesně ten falešný nález, kvůli kterému se práh 12. 9. 2026 posunul.
Statistika se splést může a my to říkáme nahlas. Falešný nález vznikne tam, kde je českých znaků nepoměrně moc k délce textu: krátká cizojazyčná stránka s českým názvem firmy v každém nadpisu. Opačně nález nevznikne u českého textu psaného bez diakritiky.
Proto existuje volitelný krok „Ověření jazyka modelem“. Zapnete-li ho, jazyk u sporných stránek posoudí jazykový model: text přečte, místo aby počítal znaky. Ptáme se ho jen tam, kde má odpověď co změnit: na stránkách, kde by nález vznikl, na stránkách s hustotou v pásmu 1–4 % (tam se obě skupiny z měření překrývají) a na malém vzorku stránek bez českého signálu.
Výsledek se projeví ještě před vznikem nálezu, ne dodatečnou opravou: potvrdí-li model rozpor, nález vznikne; vyvrátí-li odhad, nález se neobjeví vůbec. Selže-li model, platí statistika a nález se chová jako bez toho kroku. A jen s ověřením umí tahle kontrola najít rozpor mimo češtinu: třeba německou stránku deklarovanou jako francouzská, kterou statistika nevidí.
Co kontrola nedělá:
- Nepozná německou stránku deklarovanou jako francouzskou ani žádnou jinou dvojici bez češtiny.
- Nespustí se na stránce bez
lang: bez platného kódu není co porovnávat. To jeSEO-14. - Nepozná obrácený případ: českou deklaraci na anglickém textu.
- Nevidí vnořené jazykové pasáže. Česká citace uvnitř anglického článku může nález vyvolat, i když je stránka v pořádku.
Nález je na úrovni stránky, závažnost varování.
Jak silný důkaz za tím stojí
Doporučujeme to, protože to neuškodí nebo to má jiný užitek, ale vliv na to, jestli vás jazykové modely budou citovat, neslibujeme. Nikdo ho zatím nedoložil.
Na viditelnost v odpovědích AI doložený vliv nemáme. A pro vyhledávání je to slabší, než se čeká; Google to má ve vlastní dokumentaci:
Google k určení jazyka stránky používá její viditelný obsah. Nepoužíváme žádné informace o jazyce na úrovni kódu, jako jsou atributy lang nebo URL.Google Search Central, vícejazyčné weby
Špatná deklarace tedy Google nejspíš nesplete; jazyk si přečte z textu.
Koho ale splete spolehlivě, je čtečka obrazovky. Ta atribut lang bere doslova a podle něj volí hlasový model. Česká věta přečtená anglickou výslovností je pro nevidomého uživatele nesrozumitelná: to není nepohodlí, to je bariéra. Je to kritérium WCAG a je to nejtvrdší důvod, který tenhle nález má.
Druhý dopad je na prohlížeč: podle lang volí dělení slov a nabídku překladu. Česká stránka označená jako anglická bude návštěvníkům nabízet překlad do češtiny. Z češtiny.
Praktický závěr: opravte to, je to jeden atribut. Ale důvod je u lidí, ne u vyhledávačů, a my vám nebudeme tvrdit opak.
Jak to opravit
Nejdřív si ověřte, který případ máte. Nález má dvě zcela různé příčiny a druhá je vážnější:
- Špatně nastavená šablona. Web je český, ale šablona nese
lang="en"z původního vzoru. Oprava je jednořádková a vyřeší celý web. - Vícejazyčný web se sdílenou šablonou. Anglická verze má správně
lang="en", jenže část obsahu na ní zůstala česky: nepřeložený článek, nepřeložená patička, nepřeložené názvy produktů. Tady je vada v obsahu, ne v atributu, a přepsánímlangji zakryjete místo abyste ji opravili.
<html lang="cs">- Čeština je
cs, necz. - Každá jazyková verze má svůj
lang: generujte ho z téhož zdroje, ze kterého se rozhoduje o jazyce obsahu, ne napevno v šabloně. - Cizojazyčnou pasáž uvnitř stránky označte zvlášť přes
langna obalujícím prvku. Čtečka podle toho přepne výslovnost a nález zmizí správně, ne obchvatem.
<p>Google to formuluje takto: <span lang="en">There are no additional requirements.</span></p>Co o tom říká report
Popis nálezu
`<html lang>` deklaruje „[declared]", ale viditelný text stránky obsahuje výraznou českou diakritiku, což je silný signál, že jde ve skutečnosti o „[guessed]" obsah. Nesprávný `lang` je matoucí signál pro vyhledávače i asistivní technologie (čtečky obrazovky volí špatnou výslovnost). Jde o standardní doporučení pro klasické vyhledávání; nemáme doklad, že by to ovlivňovalo viditelnost v odpovědích AI asistentů. Jazyk obsahu přitom neměříme, jen ho odhadujeme statistickou analýzou textu, dokud ho nepotvrdí volitelný krok auditu „Ověření jazyka modelem“. Statistika se může splést, typicky u cizojazyčné stránky, která nese české jméno, adresu nebo název firmy; než `lang` přepíšete, projděte si text stránky nebo spusťte to ověření.
Doporučení
Opravte `<html lang="…">` tak, aby odpovídal skutečnému jazyku obsahu stránky, nebo (pokud je stránka opravdu vícejazyčná) rozdělte obsah na samostatné URL s vlastním `lang` a vzájemným `hreflang` (SEO-05).
Zdroje
- Google Search Central: Managing multi-regional and multilingual sites (ověřeno 2026-09-12)
- W3C: Language tags in HTML and XML (ověřeno 2026-09-12)
Text ověřen 2026-09-13