Soft 404: Stránka vrací kód 200, ale vypadá prázdně

Soft 404: Stránka, ktorá vracia 200, no vyzerá prázdne

Soft 404: co to je a proč škodí SEO/AEO

Soft 404 je stav, kdy stránka vypadá jako „nenalezená“ nebo „prázdná“, server přesto vrací kód 200 OK. Vyhledávače takovou URL považují za bezcennou (nebo neexistující), plýtvají crawl budgetem a mohou ji dlouhodobě omezovat ve výsledcích. U AIO/AEO (Answer/AI Experience Optimization) navíc vzniká riziko, že asistenční systémy dostanou nejednoznačný signál o dostupnosti a kvalitě obsahu.

Typické scénáře, které vedou k Soft 404

  • Prázdné kategorie, filtry a vyhledávání (0 produktů/0 výsledků) s textem „Nic jsme nenašli“, ale s kódem 200.
  • Expirované produkty, články nebo inzeráty zobrazené bez obsahu, případně jen s oznámením „Tento produkt už neprodáváme“ a kódem 200.
  • Chybové šablony (404/410) implementované vizuálně, ale bez správného HTTP kódu.
  • Hromadné přesměrování na domovskou stránku (např. z neexistujících URL) přes kód 200 s odlišným obsahem/šablonou – vyhledávač to vyhodnotí jako Soft 404.
  • Nechtěné vykreslení pomocí JS, kdy klientský kód nevrátí obsah (chyba API, blokované skripty), dokument ale dostane kód 200.
  • Vlastní chybové stránky CDN vracející kód 200 při chybách na edge vrstvě (např. „Sorry, something went wrong“ s kódem 200).

Negativní dopady na indexaci a výkon

  • Plýtvání crawl budgetem: robot tráví čas na URL, které nemají hodnotu, a ignoruje důležitější stránky.
  • Narušení interní autority: interní odkazy vedou na „prázdný“ obsah s kódem 200, což zhoršuje tok signálů.
  • Kolísání viditelnosti: vyhledávač může URL střídavě indexovat a vyřazovat, což vede k nestabilitě pozic.
  • Hreflang a kanonikalizace: Soft 404 narušuje klastry hreflang a zvyšuje riziko nesprávné kanonikalizace.

Jak vyhledávače rozpoznávají Soft 404

  • Nesoulad mezi obsahem a záměrem: stránka deklaruje 200 OK, ale text, struktura nebo šablona signalizují „nenalezeno/bez obsahu“.
  • Extrémně nízký poměr unikátního obsahu k šabloně: výrazně převažuje navigace, textu je minimum.
  • Sémantické signály: fráze typu „nenalezeno“, „žádné výsledky“, „stránka neexistuje“ bez nabídky alternativní hodnoty.
  • Výrazné změny obsahu (např. expirace produktu) bez správného kódu 404/410 nebo bez nabídky alternativ.

Diagnostika: postup krok za krokem

  1. Zkontrolujte přehledy indexace (např. hlášení o Soft 404 a „Alternativní stránky se správným kanonickým tagem“). Identifikujte vzorce URL (kategorie, parametry, jazykové mutace).
  2. Ověřte HTTP kódy pomocí vlastních nástrojů (crawl, logy) – hledejte stránky, které vizuálně signalizují chybu/prázdný obsah, ale vracejí kód 200.
  3. Simulujte podmínky (blokovaný JS, pomalé API, mobilní user-agent), abyste odhalili chyby na straně klienta vedoucí k prázdnému DOM.
  4. Porovnejte šablony: Soft 404 často používají stejnou „thin“ šablonu. Vytvořte fingerprint (velikost HTML, počet slov, selektory) a vyhledejte shodné stránky.
  5. Analyzujte interní odkazy: z které části webu vedou na problémové URL? Opravte navigaci, odkazy ve filtrech a stránkování.

Rozhodování: 200 vs. 404 vs. 410 vs. přesměrování

Situace Doporučený kód Poznámky
Neexistující URL/překlep 404 Not Found Vraťte vlastní stránku 404 s navigací; nepřesměrovávejte na / (domovskou stránku).
Trvale odstraněný obsah 410 Gone Silnější signál „už nikdy nebude“. Vhodné pro expirované inzeráty/produkty bez náhrady.
Dočasná nedostupnost (údržba) 503 Service Unavailable Přidejte Retry-After. Nepoužívejte kód 200 s chybovým bannerem.
Obsah se přesunul se stejným záměrem 301 Moved Permanently Přesměrujte na nejbližší relevantní náhradu (ne na domovskou stránku).
Dočasné přemístění 302/307 Pouze pokud je přesun dočasný. Ověřte, že nevznikne smyčka.
Prázdná kategorie/0 výsledků 200 nebo 404/410 Pokud dokážete nabídnout hodnotu (alternativy, nejprodávanější produkty, rady), ponechte kód 200. Pokud ne, použijte 404/410.

Implementační antipatterny, kterým je třeba se vyhnout

  • Vizuální stránka 404 s kódem 200: pěkná grafika ještě neznamená správný HTTP signál.
  • Přesměrování všeho na domovskou stránku: obvykle je vyhodnoceno jako Soft 404 nebo měkké přesměrování.
  • „Noindex“ na stránce, která vrací kód 200, ale nemá žádnou hodnotu: noindex může být řešením, ale často je vhodnější 404/410.
  • Blokování v robots.txt místo 404/410: robot se k obsahu nedostane, ale URL může v indexu přetrvávat.

Správný návrh prázdných stavů (empty states) při kódu 200

Pokud chcete prázdnou stránku ponechat s kódem 200, musí nabízet hodnotu a nesmí vypadat jako chyba:

  • Alternativy a doporučení: související kategorie, bestsellery, oblíbené filtry, interní odkazy.
  • Jasné vysvětlení a možnost akce (změnit filtr, vymazat parametry, vrátit se do nadřazené kategorie).
  • Unikátní text: krátký obsah s doporučeními a interními odkazy (zvýší podíl unikátního obsahu).
  • Technická konzistence: canonical na vlastní stránku, správné hreflangy, žádná maskující přesměrování.

Specifika pro e-commerce: expirované produkty a produkty vyprodané

  • Dočasně vyprodané: ponechte produkt s kódem 200, availability „OutOfStock“, zobrazte alternativy a umožněte uživatelům nastavit upozornění.
  • Trvale ukončené: pokud existuje náhrada, přesměrujte kódem 301 na nástupnický produkt/kategorii. Pokud ne, použijte 410 a aktualizujte interní odkazy.
  • Varianty a filtry: stránky parametrů bez výsledků by neměly vypadat jako chyba; zvažte vyloučení zbytečných filtrů z indexace (noindex, interní pravidla pro odkazy).

Hreflang, kanonické adresy a Soft 404

  • Všechny ekvivalenty hreflang musí mít konzistentní stav (200/404/410). Pokud jedna jazyková mutace vrací 404 a jiná prázdný obsah s kódem 200, vzniká konflikt.
  • Canonical nesmí směřovat k nelogickým cílům (např. hromadná kanonikalizace na domovskou stránku), což je typickým signálem Soft 404.

CDN a edge vrstvy: skryté zdroje Soft 404

  • Vlastní chybové stránky na CDN musí vracet správné kódy 4xx/5xx – nikoli 200.
  • Origin vs. edge: ověřte, co vidí robot (bez cookies, bez JS). Edge někdy při timeoutu vrátí záložní HTML s kódem 200.
  • Klíče cache: zajistěte, aby se kód 404/410 nezapamatoval v cache jako 200.

Rozhodovací strom (textový) pro prázdné/nesmyslné URL

  1. Má URL legitimní záměr a dokážeme nabídnout alternativní hodnotu? → 200 s propracovaným „empty state“ + interní odkazy.
  2. Je obsah navždy odstraněn a nemá adekvátní náhradu? → 410.
  3. Existuje vysoce relevantní náhrada? → 301 na nejbližší ekvivalent.
  4. Jde o překlep/nesmysl? → 404 s navigací a vyhledáváním.

Monitoring a upozornění: co průběžně sledovat

  • Počet Soft 404 podle typů URL (kategorie, vyhledávání, produkty, štítky).
  • Podíl stránek s kódem 200 a malým množstvím obsahu (heuristiky: < X slov, < Y unikátních prvků DOM, velikost HTML).
  • Logy: požadavky na stránky s kódem 200 obsahující typické fráze „nenalezeno“, „žádný výsledek“.
  • Chyby klienta: výjimky JS, chyby 4xx/5xx z API, které vedou k prázdnému vykreslení.
  • Hreflang/kanonické adresy: narušení klastrů po nasazení nových šablon.

Kontrolní seznam pro vývojáře a SEO

  • Chybové a prázdné stavy vždy vracejí správný HTTP kód.
  • Vlastní stránky 404/410 jsou vhodné pro indexaci (navigace, vyhledávání, noindex není potřeba; kód však musí být 404/410).
  • Přesměrování jsou relevantní a netvoří řetězce.
  • „Empty state“ při kódu 200 je užitečný (alternativy, odkazy, rady) a unikátní.
  • CDN/edge vrací při chybách jednoznačný kód (nikoli 200).
  • URL s parametry mají pravidla pro indexaci (kanonické adresy, noindex, interní odkazy, pravidla pro „clean param“).

Minimalizace rizika při budoucích změnách

  • Kontrolní seznam před vydáním: před nasazením otestujte HTTP kódy pro chybové/prázdné stavy.
  • Automatizované testy: unit/e2e testy ověřující kódy 404/410/503 a obsah šablon.
  • Feature flagy a postupné nasazování: rychlý návrat k předchozí verzi při nárůstu Soft 404.
  • Observabilita: metriky vykreslování (Hydration/CSR), záložních řešení a timeoutů API.

Příklady vhodných textů a UI pro prázdnou kategorii (při kódu 200)

  • Úvodní věta: „V této kategorii momentálně nemáme žádné produkty, ale mohl by vás zaujmout:“
  • Automatické alternativy: 3–6 souvisejících kategorií a 6–12 nejprodávanějších produktů.
  • Akce: jasné CTA pro úpravu filtru, vymazání parametrů nebo návrat o úroveň výš.
  • Interní odkazy: tematické články/poradna pomáhají zvýšit hodnotu stránky.

Časté otázky (FAQ) k Soft 404

  • Mám u prázdných stránek použít noindex? Pokud dokážete nabídnout hodnotu, ponechte kód 200 a nechte stránku indexovat (může přinášet návštěvnost z long-tailových dotazů). Pokud hodnotu nenabízí, je vhodnější 404/410 než 200+noindex.
  • Je 410 lepší než 404? U trvale odstraněného obsahu ano – 410 je jednoznačnější signál. Rozdíl může být v praxi malý, klíčová je ale konzistence.
  • Co s interními odkazy na odstraněné URL? Opravte je; interní odkazy na 404/410 dlouhodobě zhoršují uživatelskou zkušenost i interní autoritu.
  • Co když stránka občas selže na straně klienta? Zajistěte SSR nebo robustní záložní řešení a zaznamenávejte chyby; prázdné vykreslení CSR s kódem 200 je častým spouštěčem Soft 404.

Shrnutí

Soft 404 vzniká, když jsou technický signál (HTTP 200) a obsahový signál („stránka bez hodnoty“) v rozporu. Prevencí je správné přiřazování stavů k HTTP kódům, promyšlené prázdné stavy se skutečnou hodnotou, disciplinovaná práce s přesměrováními, kanonikalizací a hreflangy a průběžný monitoring. Důsledné odstranění Soft 404 omezuje zbytečné procházení webu, stabilizuje indexaci a zlepšuje organickou návštěvnost i konverze.