Přeskočit na hlavní obsah

Náš vlastní web zmizel z Googlu. Tady je rozbor s čísly

Po přestavbě webu nám návštěvnost z Googlu spadla ze 74 na 17 prokliků měsíčně. Rozebrali jsme příčinu do detailu. Tady je, co jsme našli a jak to poznáte i vy.

Smart Blog |

V říjnu 2025 nám Google posílal 74 návštěv měsíčně. Letos v srpnu jich bylo 17.

Není to příjemné čtení, ale píšeme ho schválně. O tomto typu chyb se moc nemluví, protože se špatně přiznávají a hůř dokazují. My máme čísla, tak je ukážeme. Rozebrali jsme to do detailu a našli přitom věci, které jsme nečekali. Včetně jedné, která nevznikla naším zásahem a klidně může být i na vašem webu.

Pokud jste za poslední rok předělávali web a máte pocit, že vás od té doby nikdo nenajde, tenhle text je pro vás.

Co se stalo, v číslech:

Zvýrazněný řádek označuje měsíc, kdy proběhla přestavba struktury webu.
Období Prokliky / měsíc Zobrazení / měsíc Průměrná pozice
říjen 2025 74 21 378 27,5
březen 2026 57 32 916 18,6
květen 2026 43 23 680 24,0
červen 2026 29 10 113 31,7
srpen 2026 17 6 222 33,6

Propad má dvě fáze a je důležité je rozlišit.

Pomalý sešup začal už kolem února 2026, tedy tři měsíce před přestavbou. Ze 73 prokliků v lednu na 42 v dubnu. To s migrací nesouvisí a vrátíme se k tomu na konci.

Pak přišel ostrý zlom. Po týdnech: konec května 4 482 zobrazení, pak 3 243, pak 2 119. Za dva týdny na polovinu, průměrná pozice o deset míst dolů. V květnu 2026 jsme přestavovali strukturu webu.

Žádnou penalizaci jsme nedostali. Search Console mlčela.

Chyba číslo jedna: přesměrování a kanonická značka si odporovaly

Při přestavbě jsme přejmenovali adresy. Stránka z /levne-webove-stranky/ se přestěhovala na /webove-stranky-na-wordpressu/ a nastavili jsme 301 přesměrování, jak se má.

Jenže u stránky zůstala v databázi uložená stará kanonická adresa. Výsledek:

  •  /levne-webove-stranky/ → 301 → /webove-stranky-na-wordpressu/
  • /webove-stranky-na-wordpressu/ → canonical → /levne-webove-stranky/

Google přijde na starou adresu, ta ho pošle na novou. Nová mu řekne, že originál je ta stará. A ta ho pošle zpátky.

Z téhle smyčky se nedá vybrat a Google ji řeší tím, že neindexuje ani jednu adresu.

Jak moc to bolelo:

Data ze Search Console za 16 měsíců. Nové stránky nahradily starý prefix v květnu 2026.
Stránek Zobrazení za 16 měsíců
starý prefix /levne-webove-stranky/ 15 202 526
nové stránky, které ho nahradily 4 460

Čtyři sta šedesát. Naše hlavní stránka o tvorbě webů na WordPressu měla za čtyři měsíce existence 107 zobrazení.

Nakonec se ukázalo, že ta smyčka nebyla na jedné stránce, ale na čtyřech. Mezi nimi ceník a webhosting, tedy dvě z nejsilnějších adres, které jsme kdy měli.

Ale proč tam ta stará značka vůbec zůstala?

Zůstávala otevřená otázka. Proč tam ta stará hodnota zůstala, když se adresa změnila? Odpověď se ukázala být obecnější, než jsme čekali.

Zjistili jsme, že na 123 ze 141 stránek našeho webu nebyla kanonická značka vůbec žádná. Jediné dvě stránky, které ji měly, byly ty dvě s ručně vyplněnou hodnotou. A obě ukazovaly špatně.

To je zvláštní, protože WordPress ve svém jádru kanonickou značku na příspěvky a stránky vkládá sám. Takže ji tam něco odebíralo.

Test byl jednoduchý. Vypnout SEO plugin a podívat se do zdrojového kódu:

curl -s https://vas-web.cz/kontakt/ | grep -ic canonical

Se zapnutým pluginem 0, s vypnutým 1.

Ten plugin odebírá WordPressu funkci pro vkládání kanonické značky, což dělá většina SEO pluginů, protože chtějí vkládat vlastní. Jenže vlastní vkládá výhradně tam, kde je hodnota vyplněná ručně. Všude jinde nechá stránku holou.

Důsledky jsou dva a oba nepříjemné.

Zaprvé, ruční pole pro kanonickou adresu se stává jediným zdrojem pravdy. Když se u stránky změní adresa, hodnota v tom poli zůstane stará a nikdo vás na to neupozorní. Přesně tak vznikla naše smyčka.

Zadruhé, homepage zůstala bez kanonické značky úplně. WordPress ji totiž ve svém jádru vkládá jen na příspěvky a stránky, na homepage a archivy nikdy.

Projevilo se to hned. Na náš web vede partnerský odkaz s UTM parametry a Google tuhle variantu homepage vyhodnotil jako duplicitní stránku, u které si musel kanonickou verzi vybrat sám.

Jak si to ověřte u sebe. Otevřete libovolnou podstránku, dejte zobrazit zdrojový kód (ne inspektor, ten ukazuje stav po JavaScriptu) a hledejte canonical. Pokud tam není, máte stejný problém. Nezáleží na tom, jestli používáte stejný plugin jako my, chování se liší i mezi verzemi.

Řešení je pár řádků do functions.php v potomkovském tématu:

add_action( 'wp_head', function () {
global $wp;
$url = is_singular()
? get_permalink()
: home_url( user_trailingslashit( $wp->request ) );
if ( $url ) {
echo '<link rel="canonical" href="' . esc_url( $url ) . '">' . "\n";
}
}, 99 );

Priorita 99 zajistí, že to poběží až po SEO pluginu. Jedna podmínka: od té chvíle už nepoužívejte ruční pole pro kanonickou adresu v pluginu, jinak budete mít na stránce dvě značky, což je horší než žádná.

Chyba číslo dvě: přesměrovali jsme na místo, které neodpovídá dotazu

Měli jsme stránku o webu za jednu korunu. Zrušili jsme ji a přesměrovali na obecnou stránku o WordPressu. Logika byla: web za korunu je přece web na WordPressu.

Google to tak nebere. Bere to podle toho, co ten člověk hledal. Dotaz na cenovou nabídku je něco jiného než dotaz na technologii. Když cílová stránka o té nabídce neříká nic, Google to vyhodnotí podobně jako chybějící stránku a pozici nepředá.

Test, který si udělejte u každého přesměrování. Otevřete cílovou stránku a zeptejte se: kdyby tohle byl jediný výsledek na původní dotaz, byl by hledající spokojený? Když ne, přesměrování je technicky správně a obsahově k ničemu.

To ale neznamená ho mazat, tím byste přišli i o zpětné odkazy. Buď na cílovou stránku doplňte obsah, který téma pokrývá, nebo původní stránku obnovte.

Nám z toho vyšlo obecnější zjištění. Přestavba nezrušila jenom adresy, zrušila témata. Statický web, rychlost, cena. To byly dotazy, na které jsme odpovídali, a nová struktura na ně neodpovídala vůbec.

Chyba číslo tři: ceny nebyly v HTML

Ceník jsme vkládali vlastním pluginem, který cenu doplňoval až v prohlížeči. Dělali jsme to schválně, protože ceny se mění podle akčních oken a stránka jde z cache, takže by se v ní zasekla stará cena.

Cena se tedy do serverové odpovědi vůbec nedostala. A přišli jsme na to takhle:

  • cena webu wordpress — pozice 10,45, 2 908 zobrazení, 1 proklik

Skoro tři tisíce lidí nás vidělo na konci první stránky. Klikl jeden.

Pro vyhledávače je to nepříjemné. Pro AI je to fatální. ChatGPT, Perplexity a podobné nástroje ve většině případů nespouštějí JavaScript. Co není v serverové odpovědi, pro ně neexistuje. Na otázku „kolik stojí web u téhle firmy“ neuměly odpovědět, i když ta cena byla na stránce půl vteřiny po načtení.

curl -s https://vas-web.cz/cenik/ | grep -c "Kč"

Když to vrátí nulu, váš ceník nemá ceny. Aspoň ne pro nikoho, kdo nepoužívá prohlížeč.

Řešení nebylo vrátit se k serverovému vykreslení a rezignovat na aktuálnost. Cenu teď vypisujeme serverově do HTML a JavaScript ji na pozadí tiše přepíše, jen pokud se mezitím změnila. Crawler vidí cenu, návštěvník vidí aktuální cenu, cache zůstává zapnutá.

Jedna věc se tím ale mění a je fér ji zmínit. Když akce skončí o půlnoci a cache servíruje stránku uloženou před půlnocí, návštěvník na zlomek vteřiny uvidí starou cenu, než se přepíše. Tomu se vyhnout nedá. Buď je cena v serverové odpovědi, a pak je cachovatelná, nebo tam není a nevidí ji crawlery.

Nálezy, které vypadaly hrozivě, ale o nic nešlo

Když člověk pustí technický audit, dostane seznam, kde vedle sebe leží skutečné závady a věci, které fungují přesně tak, jak mají.

Dva problémy, které naštěstí nebyly problémy:

  •  404 chyba s 286 odkazy. Cloudflare umí schovat e-mailové adresy před roboty, kteří sbírají kontakty na spam. Místo adresy vloží do stránky odkaz na svůj vlastní skript a ten ji zobrazí až návštěvníkovi. Crawler ten odkaz zkusí projít, dostane 404 a nahlásí chybu. Reálný návštěvník na ni nikdy nenarazí. Vypadá to jako nejhorší položka v celém reportu a ve skutečnosti o nic nejde.
  • 139 interních odkazů s rel=“nofollow“, tedy skoro na každé stránce. Chvíli jsme si mysleli, že si sami bráníme v prolinkování webu. Ukázalo se, že jde o past na roboty od bezpečnostního pluginu. Na každé stránce je skrytý odkaz, který návštěvník nevidí. Slušný vyhledávač na něj nesáhne, protože má značku nofollow. Škodlivý robot ji ignoruje, odkaz projde a tím se prozradí. Plugin ho pak zablokuje. Fungovalo to přesně tak, jak má.

Ponaučení: než začnete něco opravovat, zjistěte, jestli to opravdu je rozbité. Report je seznam podezřelých, ne seznam viníků.

Sirotčí stránky a jak je najít zadarmo

Sirotčí stránka je taková, na kterou nikde nevede odkaz. Crawler ji nenajde, protože prochází web po odkazech, a vy o ní nevíte. Google ji přitom v indexu mít může, buď ji našel v době, kdy odkazovaná ještě byla, nebo ji má ze sitemapy.

Postup, který nic nestojí:

  • Search Console → Stránky → klikněte na číslo u Indexováno → Exportovat. Dostanete seznam všeho, co Google reálně má.
  • Vedle toho si nechte projet web crawlerem a exportujte nalezené adresy.
  • Udělejte rozdíl. Co je v prvním seznamu a není v druhém, jsou vaši sirotci.

Nám z toho vypadlo 28 adres, ale 24 z nich byly články, které jsme právě smazali a Google to ještě nezpracoval. Skutečný sirotek byl jeden: stránka pod zrušeným prefixem s 3 127 zobrazeními, na kterou už rok nikdo neodkazoval.

Zajímavější než ten nález byl ten opak. Báli jsme se, že máme v indexu spoustu starých stránek, o kterých nevíme. Neměli jsme. Ta obava stála za deset minut práce a vyvrátit ji byla úleva.

Chyba číslo čtyři: publikovali jsme moc a málo

Tohle je nejméně technická a nejnepříjemnější část.

Měli jsme 124 článků. Šedesát čtyři z nich nemělo za šestnáct měsíců ani jeden proklik. Třicet čtyři článků dělalo veškerou návštěvnost.

Když si projdete názvy těch mrtvých, pochopíte proč:

  • Tvorba webu, klíč k úspěchu v digitálním světě
  • Moderní webové stránky, klíč k úspěchu v digitálním světě
  • Odhalujeme tajemství úspěšné tvorby webových stránek
  • Ovládněte umění tvorby webových stránek

Čtyři články, které říkají totéž, všechny o ničem. Vznikly z pravidla „aspoň něco měsíčně“, což zní jako disciplína a ve skutečnosti je to způsob, jak Googlu ukázat, jak vypadá průměrná stránka na téhle doméně.

Zajímavější je, co naopak fungovalo. Čtyři z pěti nejúspěšnějších článků byly o věcech, které se mění: nová legislativa o přístupnosti webu, povinnosti provozovatele webu, dopady AI na vyhledávání. Nula z nich byla o tom, co je responzivní web.

Smazali jsme jich 42 se stavovým kódem 410. Ne 301, protože nebylo co předat. Dalších sedmnáct má zobrazení a nulové prokliky, ty čeká přepis, protože tam poptávka je a my ji neobsluhujeme.

Jednu věc jsme přitom udělali dobře: nesmazali jsme články, které mají nula prokliků, ale drží pozici do desátého místa. To nejsou špatné články, to jsou dobré články o věcech, které nikdo nehledá. Ty neškodí.

Kontrolní seznam

Všechno níž se dá udělat zdarma a bez zvláštních nástrojů.

1. Má stránka kanonickou značku?
Otevřete si zdrojový kód libovolné podstránky a najděte v něm canonical. Pokud tam není, nemá smysl řešit cokoli dalšího, dokud nezjistíte proč.

2. Shoduje se vaše značka s tím, co si vybral Google?
V Search Console použijte Kontrolu URL u tří nejdůležitějších stránek. Porovnejte řádky „Uživatelem deklarovaná kanonická adresa“ a „Kanonická adresa vybraná Googlem“. Když se liší, Google vám nevěří.

3. Má kanonickou značku i homepage?
Kontrolujte ji zvlášť. WordPress ji na homepage nevkládá a většina lidí to netuší.

4. Co říká přehled stránek v Search Console?
Podívejte se na kategorie „Alternativní stránka se správnou kanonickou značkou“, „Nenalezeno (404)“ a „Chyba přesměrování“. Když některé číslo po přestavbě webu vyskočilo, máte odpověď, kde hledat.

5. Odpovídá cíl přesměrování na původní dotaz?
Nestačí, aby přesměrování technicky fungovalo. Otevřete cílovou stránku a zeptejte se, jestli by na ní hledající našel to, kvůli čemu klikal.

6. Vidí robot vaše ceny?
Zobrazte si zdrojový kód ceníku a najděte v něm cenu. Když tam není, znamená to, že ji doplňuje až JavaScript. Vyhledávače s tím mají potíže a nástroje typu ChatGPT ji neuvidí vůbec.

7. Nemáte v indexu stránky, o kterých nevíte?
Vyexportujte si ze Search Console seznam indexovaných stránek a porovnejte ho s tím, co najde crawler. Rozdíl jsou vaše sirotčí stránky.

8. Které články vám něco přinášejí?
Vyexportujte si výkon jednotlivých stránek za celé dostupné období a seřaďte podle prokliků. U článků, které za tu dobu nemají ani jeden, si položte otázku, proč na webu jsou.

Body 1, 4 a 7 zvládnete rychleji, když si stáhnete Screaming Frog SEO Spider. Bezplatná verze projde až 500 adres a neshody mezi adresou a kanonickou značkou vypíše najednou.

Kde jsme teď

Opravili jsme kanonické značky na celém webu, nasadili jejich automatické generování, přesměrování jsme prošli jedno po druhém, ceny jsou v serverové odpovědi a ze 124 článků jich 42 zmizelo.

V Search Console je kategorie „Alternativní stránka se správnou kanonickou značkou“ na nule. To je jediné, co zatím můžeme prohlásit za potvrzené.

Pozice se nevrátí ze dne na den. Google potřebuje web znovu projít, přepočítat a rozhodnout se. Odhadujeme týdny až měsíce a budeme o tom psát dál, včetně čísel, i kdyby vypadala blbě.

A jednu věc chceme říct narovinu. To, co jsme opravili, zastavilo krvácení. Nevrátí nás to výš, než jsme byli před přestavbou. Ten pomalý sešup od února 2026, o kterém jsme psali na začátku, technika neřeší. Na ten je potřeba něco jiného a je to práce na měsíce, ne na odpoledne.

Pokud si nejste jistí, jestli váš web nemá stejný problém, ozvěte se nám. Kontrolu podle seznamu výše ale zvládnete i sami a budeme rádi, když si ji uděláte.

Další aktuality ze světa webů

Prohlédněte si naše další články o tvorbě webových stránek, optimalizaci WordPressu, SEO a správě webu. Najdete zde praktické návody, zkušenosti z praxe i tipy, jak mít rychlý, bezpečný a úspěšný web, který přivádí zákazníky.

Secret Link