Web na Reactu, Vue nebo Next.js vypadá v prohlížeči skvěle. Jenže vy se na něj díváte až poté, co prohlížeč stáhl a spustil JavaScript, který stránku teprve poskládal. Google k němu přistupuje jinak, a mezi tím, co vidíte vy, a tím, co skutečně stáhne a zaindexuje on, může být rozdíl od kosmetického po zásadní: stránky, které pro vyhledávání v podstatě neexistují. Přesně tohle řeší JavaScript SEO. A to, jestli se týká i vašeho webu, zjistíte svépomocí, zdarma a za pár minut.
Jak Google zpracovává JavaScript
Klasický web pošle hotové HTML: texty, nadpisy i odkazy v něm jsou rovnou. Moderní frameworky často posílají jen kostru — pár řádků HTML a balík JavaScriptu, který obsah sestaví až u návštěvníka. Google proto stránky zpracovává ve dvou krocích.
Nejdřív stránku stáhne jako obyčejné HTML. Z něj si vezme odkazy a základní informace. Potom ji zařadí do fronty na vykreslení: až na ni přijde řada, spustí ji v Chromiu (stejné jádro, na kterém běží Chrome, průběžně aktualizované) a teprve takhle vykreslené HTML indexuje. Do fronty přitom putuje každá stránka, která vrátí stav 200 — Google předem nezkoumá, jestli JavaScript potřebuje.
Starší články na tohle téma straší, že mezi stažením a vykreslením uplynou týdny. Dnešní dokumentace Googlu mluví o pár sekundách, někdy déle. Fronta tedy už není hlavní nepřítel. Riziko je jinde: vykreslení je krok navíc, který se může nepovést. Když skript spadne, data nedorazí nebo je soubor se skriptem zablokovaný v robots.txt, Google si místo vaší stránky zaindexuje prázdnou kostru — a vy se to z ničeho nedozvíte, dokud se nepodíváte.
Jedna věc navíc, která v roce 2026 nabývá na váze: JavaScript spouští Google, ale zdaleka ne každý robot. Řada botů, včetně těch, které sbírají obsah pro AI asistenty, čte jen surové HTML. Obsah, který existuje až po vykreslení, pro ně není.
Co se v praxi pokazí
U klientských webů na frameworcích se pořád dokola opakuje pár stejných situací.
Obsah se objeví až po kliknutí nebo posunutí stránky. Google s vaší stránkou neinteraguje — dokumentace to říká výslovně. Na tlačítko „načíst další" za vás nikdo neklikne. Záložky a rozbalovací sekce jsou v pořádku, pokud je jejich text v HTML od začátku a JavaScript ho jen skrývá a ukazuje. Jakmile se ale obsah stahuje až na kliknutí, robot ho nikdy nevyvolá. Totéž nekonečné skrolování: co se načítá až posouváním a nemá vlastní stránkované adresy, Google nedočte.
Odkazy, které nejsou odkazy. Google sbírá odkazy z atributu href. Menu nebo výpis produktů poskládaný z klikacích divů bez skutečných odkazů znamená, že robot nemá kudy na další stránky — a stránka, na kterou nic nevede, se hledá špatně.
Zablokované zdroje. Když robots.txt zakazuje složku se skripty nebo API, ze kterého si stránka bere data, vykreslení proběhne bez nich. Stránka se „vyrenderuje" — prázdná.
Tiché chyby. U návštěvníka aplikace chybu skousne, u robota skončí bílou stránkou. A jednostránkové aplikace rády vracejí stav 200 i na adresách, které neexistují — Google pak indexuje hromadu prázdných „stránek nenalezeno".

Nechce se vám tohle všechno řešit vlastními silami? Přesně tyhle věci dělám za majitele firem každý den. Pošlete mi adresu webu a do 48 hodin víte, co vás v Googlu brzdí a co bych opravila jako první — zdarma a bez závazku.
Jak zjistit, co Google vidí
Tohle je jádro celého tématu a zvládnete ho bez placených nástrojů.
1. Podívejte se na surové HTML. Na stránce dejte zobrazit zdrojový kód (Ctrl+U, na Macu Cmd+Option+U) a vyhledejte v něm kus věty z hlavního textu. Když tam je, váš obsah na vykreslení nestojí a většina popsaných rizik se vás netýká. Když tam není, víte, že všechno visí na tom, jestli render proběhne bez chyby.
2. Kontrola adresy URL v Search Console. Vložte adresu do pole nahoře. U zaindexované stránky klikněte na „Zobrazit procházenou stránku": uvidíte HTML, které Google skutečně použil, výstup konzole JavaScriptu a seznam zdrojů, které se nepodařilo načíst. Ještě cennější je živý test a „Zobrazit testovanou stránku" — jenom tam je i snímek obrazovky, tedy stránka tak, jak ji Google vykreslil. Chybí na snímku produkty? Točí se tam kolečko místo textu? Našli jste problém. Pokud s tímhle nástrojem začínáte, napsala jsem k Search Console velký návod pro majitele firem.
3. Vyhledejte vlastní větu. Zadejte do Googlu site:vas-web.cz "přesná věta z textu" v uvozovkách. Když se stránka najde, Google ten text má. Když ne, je to důvod jít do Search Console a zjistit proč.
A jeden nepřímý příznak: obsahový web na frameworku, kterému v přehledu Stránky visí velká část adres ve stavu „Procházeno – momentálně neindexováno", má důvod render prověřit. Příčin toho stavu je ale víc — rozebírám je v článku o indexování. Kdo chce jít úplně na dřeň, podívá se do logů serveru, co si Googlebot z webu skutečně stahuje.
Kdy to řešit a kdy ne
Řešit to má smysl, když na frameworku stojí obsah, ze kterého žijete: e-shop s produkty, firemní web se službami, blog. A zvlášť když důležité stránky vznikají JavaScriptovými filtry nebo se obsah donačítá za pochodu.
Neřešte to, když máte WordPress, Shoptet nebo jinou krabici s trochou JavaScriptu navrch. Tam je obsah v HTML rovnou a pár skriptů na měření a vychytávky indexaci neohrozí. A neřeší se to ani u aplikací za přihlášením — co nemá být ve vyhledávání, render trápit nemusí.
Co s tím: řešení vybírá vývojář, vy chtějte důkaz
Náprava vede přes to, aby server posílal hotové HTML: serverové vykreslování (SSR), statické generování (SSG) nebo jejich kombinace. Co která strategie znamená a pro jaký web se hodí, najdete v článku o renderingu. Existují i služby, které stránky vykreslují za vás a robotům podávají hotové HTML; fungují, ale berte je jako protézu — i Google své někdejší doporučení „dynamického renderování" (jiná verze webu pro roboty) dnes v dokumentaci vede jako zastaralé a směruje weby k serverovému vykreslování.
Pro vás jako majitele je podstatné jedno: nemusíte rozumět hydrataci ani frameworkům. Stačí po dodavateli chtít jednoduchý důkaz — ať vám ukáže, že zdrojový kód důležitých stránek obsahuje jejich text a odkazy. Kontrolu pak zvládnete sami body 1 až 3 výše.
Časté otázky
Škodí JavaScript sám o sobě SEO?
Neškodí. Google ho spouští a vykresluje spolehlivě; rozhoduje, k čemu ho web používá. JavaScript, který přidává interaktivitu nad hotový obsah, problém nedělá. JavaScript, bez kterého obsah vůbec nevznikne, je riziko, které je potřeba ohlídat.
Můžu nechat JavaScript vkládat title, popisky nebo canonical?
Technicky to jde — Google si je z vykresleného HTML převezme. Doporučit to ale nemůžu: každý údaj závislý na vykreslení je další místo, kde se něco může pokazit, a roboti, kteří JavaScript nespouštějí, tyhle údaje neuvidí nikdy. Metadata patří do surového HTML.
Vidí obsah mého webu AI chatboti?
Hodně jejich robotů JavaScript nespouští a čte jen to, co pošle server. Web, jehož obsah je v surovém HTML, má proto náskok nejen u Googlu: je čitelný pro každého robota, který se o něj kdy bude zajímat. Další důvod, proč chtít obsah rovnou ze serveru.
Chcete vědět, jak je na tom váš web doopravdy? Audit zdarma — ručně, do 48 hodin.
Otázka na deset minut
„Vidí Google můj obsah?" zní jako otázka pro specialistu, ale kontrola zdrojového kódu a jeden test v Search Console zaberou deset minut a u konkrétní stránky vám odpoví najisto. Co už z těch dvou obrazovek nevyčtete, je druhá půlka odpovědi: kolik vás případný rozdíl stojí na návštěvnosti, které stránky postihuje a jestli je na vině render, nebo něco úplně jiného. Na tuhle půlku je SEO audit — dělám ho zdarma a weby na frameworcích v něm procházím právě takhle: surové HTML vedle vykreslené stránky, stránku po stránce.
Zdroje k faktům v článku:
- Jak Google zpracovává JavaScript: tři fáze, fronta na vykreslení („pár sekund, může to trvat déle"), Chromium, robots.txt a nevykreslené skripty, ne všichni roboti JavaScript spouštějí (ověřeno 19. 7. 2026): developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics
- „Google Search does not interact with your page" a stránkování u nekonečného skrolování (ověřeno 19. 7. 2026): developers.google.com/search/docs/crawling-indexing/javascript/lazy-loading
- Kontrola adresy URL: „Zobrazit procházenou stránku", „Zobrazit testovanou stránku", snímek obrazovky v živém testu (ověřeno 19. 7. 2026): support.google.com/webmasters/answer/9012289
- Dynamické renderování označené v dokumentaci Googlu jako zastaralé (ověřeno 19. 7. 2026): developers.google.com/search/docs/crawling-indexing/javascript/dynamic-rendering
