Řízení SEO incidentů: proč potřebujeme runbook a postmortemy
Programmatic SEO a automatizace přinášejí rozsah a rychlost, zároveň však zvyšují riziko chyb s dopadem na organickou návštěvnost a tržby. „Řízení SEO incidentů“ je disciplína, která propojuje monitorování, procesní řízení, technickou diagnostiku a kulturu bez obviňování. Cílem je incidenty rychle detekovat, zabránit jejich eskalaci, obnovit původní stav a poučit se z nich prostřednictvím postmortemů. Tento článek představuje praktický runbook, metriky, role, nástroje a strukturu postmortemů pro týmy zaměřené na měření, automatizaci a programmatic SEO.
Definice SEO incidentu a taxonomie
- SEO incident je neplánovaná změna nebo událost, která negativně ovlivňuje indexaci, viditelnost, kvalitu výsledků nebo organickou výkonnost.
- Konfigurační incidenty:
robots.txt,noindex,canonical,hreflang,meta robots, HTTP hlavičky. - Obsahové incidenty: hromadné přepsání titulků, duplicitní šablony, vynechaná schémata, chyby v produktových datech.
- Infrastrukturní incidenty: 5xx, latence, chybná konfigurace CDN/edge, vykreslování JavaScriptu, blokování pomocí CSP, chybějící fonty/sady ikon.
- Indexační incidenty: pokles počtu indexovaných stránek, nefunkční sitemapy, chybné odkazy v paginaci, zastavení „objevování“ nových URL.
- Výkonnostní incidenty: náhlé zhoršení Core Web Vitals, „posun layoutu“ po nasazení, dopady služeb třetích stran (tagy, experimenty).
Kategorie závažnosti a odezva
| Závažnost | Popis | Max. čas do detekce | Max. čas do obnovy | Příklady |
|---|---|---|---|---|
| S1 (kritická) | Riziko plošné deindexace nebo významný výpadek procházení/indexace | 15 min | 2 h (hotfix) | Disallow: / v robots.txt, globální noindex |
| S2 (vysoká) | Částečné dopady, výrazný pokles kvality nebo počtu indexovaných stránek | 1 h | 24 h | Špatný canonical v šabloně, záměna hreflang |
| S3 (střední) | Lokální nebo segmentové problémy | 24 h | 72 h | Chybějící schémata, zhoršení CWV v jedné sekci |
| S4 (nízká) | Menší regrese bez okamžitého dopadu na podnikání | 72 h | Plánované nasazení | Konvence pro nadpisy, drobné strukturální chyby |
Role, odpovědnosti a komunikační kanály
- Incident Commander (IC): řídí odezvu, stanovuje priority kroků, spravuje čas a rozhodnutí.
- SEO Tech Lead: diagnostikuje signály související s indexací, vykreslováním a prolinkováním.
- Release Engineer: zajišťuje rollback/rollforward, feature flagy a pipeline pro hotfixy.
- Data Steward: odpovídá za kvalitu feedů, sitemap a schémat a monitoruje aktuálnost dat.
- Comms Owner: zajišťuje interní komunikaci a informování zainteresovaných stran, status page a případnou komunikaci se zákazníky.
Monitorování: metriky pro včasnou detekci
- Procházení a indexace: poměr odpovědí 2xx/4xx/5xx, počet procházených a indexovaných URL, doba odezvy crawleru, počet platných a vyloučených stránek.
- Sitemapy: dostupnost, počet URL, procento změn atributu „lastmod“, korelace s novými URL ve feedu.
- Vykreslování: rozdíl mezi textovým DOM a předvykresleným DOM (shoda klíčového obsahu), míra chyb JavaScriptu.
- Signály metadat: hromadné změny v
meta robots, odchylky vcanonical, validace hreflang, odkazyalternate. - Výkonnost: LCP, INP, CLS podle šablon a segmentů, 75. percentil.
- Odkazy a navigace: ztráty interních odkazů, nefunkční navigace, paginace (náhrady rel prev/next, parametry stránky).
- Podnikání: organická návštěvnost a konverze ve srovnání se sezónně očištěnou základní hodnotou (CUPED).
Upozornění: prahové hodnoty, korelace a potlačování šumu
- Prahové hodnoty: určete procentuální i absolutní změny (např. 5xx ≥ 2 % po dobu 10 min, pokles počtu indexovaných stránek ≥ 5 % za den).
- Korelace: nastavte složená upozornění (např. nárůst 5xx + pokles rychlosti procházení + nárůst počtu „Submitted URL marked ‘noindex’“).
- Potlačování šumu: zohledněte časové okno a den v týdnu a oddělte období nasazování a svátků.
- Směrování upozornění: S1 přímo na pager IC a Release; S2 do incidentního kanálu; S3 do kanálu backlogu.
Runbook: principy a struktura
- Jasný rozhodovací strom pro typy incidentů (konfigurace, infrastruktura, obsah, data).
- Předpřipravené úkony: ověření přístupů, skripty pro porovnání verzí
robots.txt, export kanonických URL, audit hreflang, validátor sitemapy. - Bezpečný rollback: definované verze, automatické testy kompatibility, feature flagy a kill switch.
- Ověření: kontrolní seznam po zásahu (kontrola shody DOM, stavové kódy, indexační signály, regresní testy CWV).
Prvních 15 minut incidentu
- Vyhlášení: určit závažnost, otevřít incidentní kanál, IC přebírá velení.
- Zmrazení změn: pozastavit nasazování a experimenty v dotčené oblasti.
- Stabilizace: hrozí-li plošný dopad, okamžitě provést rollback nebo aktivovat příznak.
- Rychlá diagnostika: provést triage prostřednictvím dashboardů (procházení/indexace/vykreslování/výkonnost/podnikání), shromáždit rychlá porovnání změn.
- Komunikace: poskytnout zainteresovaným stranám stručnou informaci (co víme, co děláme, kdy bude další aktualizace).
Diagnostika: rozhodovací strom
- Plošný pokles počtu indexovaných stránek: zkontrolovat
robots.txt,X-Robots-Tag, globální šablony metadat, canonical na kořenovou URL/doménu a odpovědi 5xx. - Zhoršení vykreslování: změny v bundlu, CSP, opožděná hydratace; porovnat snímek předvykreslené stránky s živým DOM.
- Sitemapy: stavové kódy HTTP, velikost,
lastmod, korelace s počtem nových URL, pokrytí indexací. - Hreflang: duplicity, chybějící
return tags, zaměněné jazykové kódy, regionální konflikty. - Interní odkazy: ztráta sekcí v navigaci/zápatí, změněné slugy, neaktualizované mapy přesměrování.
Náprava: bezpečné zásahy a řízené změny
- Rollback na poslední stabilní verzi, pokud není známa příčina nebo je vysoké riziko eskalace.
- Hotfix s úzce vymezeným rozsahem a kontrolou kolegou; zákaz „naslepo“ pokračovat v dalších nasazeních.
- Feature flagy: vypnutí problematických šablon/sekcí bez opětovného nasazení celku.
- Pravidla na edge: dočasná úprava hlaviček, cachování či přesměrování na CDN za účelem zmírnění dopadů.
Ověření po zásahu
- Technická kontrola: poměry odpovědí 2xx/4xx/5xx, doby odezvy, shoda DOM, míra chyb JavaScriptu.
- Indexační signály: náhodně vybrané načtení stránek, kontrola metadat/hlaviček, validace sitemapy, konzistence canonical.
- Metriky výkonnosti: LCP/INP/CLS na dotčených šablonách.
- Podnikání: částečná obnova návštěvnosti/konverzí ve srovnání se základní hodnotou.
Šablona komunikačních zpráv
- Úvodní zpráva: „Zjistili jsme SEO incident S2, který ovlivňuje sekci Kategorie. Probíhá rollback, další aktualizace za 30 min.“
- Průběžná aktualizace: „Rollback byl nasazen, ověřujeme sitemapy a canonical. Předběžná příčina: změna šablony bez aktualizace mapy přesměrování.“
- Vyřešení: „Incident je vyřešen, metriky se vracejí k základní hodnotě. Do 72 hodin bude následovat postmortem.“
Runbook pro nejčastější incidenty
- Robots.txt Disallow
- Krok 1: okamžitě zkontrolovat verzi v repozitáři a na edge; pokud došlo ke změně, provést rollback.
- Krok 2: zneplatnit cache CDN pro
/robots.txt. - Krok 3: ověřit výsledek na více PoP a prostřednictvím náhodně vybraného načtení stránky.
- Krok 4: v postmortemu zjistit příčinu generování souboru (šablona, pipeline, cron).
- Globální noindex
- Krok 1: vypnout příznak/šablonu, která vkládá
noindexnebo hlavičkuX-Robots-Tag. - Krok 2: ověřit nastavení na reprezentativním vzorku a v kritických sekcích.
- Krok 3: sledovat trend opětovné indexace a posílit interní odkazy na klíčové vstupní stránky.
- Krok 1: vypnout příznak/šablonu, která vkládá
- Chybný canonical
- Krok 1: exportovat odchylky (self vs. not-self) a určit dotčené šablony.
- Krok 2: nasadit hotfix šablony a znovu ji vydat s testy konzistence canonical.
- Krok 3: zkontrolovat kanibalizaci a zmapování přesměrování.
- Nefunkční hreflang
- Krok 1: ověřit vzájemnou provázanost a regionální kódy.
- Krok 2: vrátit zpět poslední změny i18n a opravit feedy a atributy alternates.
- Krok 3: náhodně zkontrolovat výsledky podle zemí a jazyků.
- Nárůst 5xx/latence
- Krok 1: navýšit kapacitu infrastruktury, snížit TTL, přesměrovat provoz a dočasně vypnout náročné skripty.
- Krok 2: chránit crawl budget pomocí
Retry-Aftera pokynů v robots.txt pro problematické sekce.
Automatizace a „config as code“
- Kontrolní pravidla: testy, které zakážou nasazení obsahující
noindexmimo prostředí dev/stage. - Testy schémat: validátor pro
Product,Article,FAQPagepřed nasazením. - Kontrola rozpočtu odkazů: testy minimální hustoty interních odkazů v navigaci.
- Sitemapa jako artefakt: generuje se v CI s kontrolou počtu URL, kontrolním součtem a
lastmod. - Příznaky: centrálně spravované, s auditním záznamem a vlastníky.
Měření dopadů a cílové úrovně služeb
- SLO pro indexaci: „≥ 98 % kritických URL musí být možné indexovat (bez blokujících signálů).“
- SLO pro vykreslování: „Shoda předvykresleného a živého DOM ≥ 95 % u klíčových elementů.“
- Error budget: měsíční limit incidentů S1/S2; po jeho vyčerpání se pozastaví rozšiřování funkcionality.
Postmortem: zásady a struktura
- Bez obviňování: cílem je zlepšit systém, nikoli najít viníka.
- Časový rámec: S1 do 72 h, S2 do 5 pracovních dnů.
- Obsah:
- Přehled: název, data, závažnost, dopad na metriky.
- Časová osa: detekce → rozhodnutí → zásahy → ověření.
- RCA: metoda 5 Whys, příčiny a přispívající faktory (technické, procesní, lidské).
- Omezení: proč selhala kontrolní pravidla/monitorování.
- Akční body: konkrétní úkoly s vlastníky a termíny (preventivní, detekční, nápravné).
- Poučení: co začleníme do standardů, šablon a testů.
Příklad akčních bodů po postmortemu
- Přidat unit test, který zakáže
noindexv produkčním profilu sestavení. - Rozšířit monitorování: upozornění na změnu velikosti
sitemap.xmlo ±10 % během 24 h. - Zavést dvojí schvalování změn
robots.txta logiky canonical. - Vytvořit „canary“ sekci s nízkým podílem provozu pro včasné zjišťování regresí.
Školení, cvičení a simulace
- Game days: řízené simulace incidentů (falešný
Disallow: /, nefunkční sitemapa). - Nácviky práce s runbookem: ověřit, že každý člen týmu umí spustit audit a provést rollback.
- Rotace pohotovosti: sdílená odpovědnost a znalosti mezi SEO, vývojem a infrastrukturou.
Řízení závislostí a rizik třetích stran
- Správce tagů: verzování a schvalování, sandbox pro experimenty.
- CDN a edge funkce: změny pouze prostřednictvím procesu kontroly, auditní stopa, rychlý návrat ke starší verzi.
- Datové feedy schémat: ověřování konzistence (počet, povinná pole, jednotky), monitorování stáří dat.
Vizualizace a reporting
- Dashboard incidentů: otevřené incidenty, závažnost, čas do detekce/obnovy, trend.
- Mapa dopadů: teplotní mapa podle šablon/sekcí/domén.
- Časová osa nasazení a metrik: korelace událostí s poklesy/špičkami.
Řízení a životní cyklus dokumentace
- Runbook jako živý dokument: revize po každém postmortemu, verzování.
- Šablony postmortemů a kontrolních seznamů: centrálně spravované, snadno dostupné, doplněné příklady.
- Měření vyspělosti: skóre připravenosti (pokrytí monitorováním, testy, příznaky, cvičeními).
Kontrolní seznam připravenosti na incident
- Jsou jasně definovány úrovně závažnosti a postupy eskalace?
- Pokrývají dashboardy a upozornění procházení, indexaci, vykreslování, výkonnost a podnikání?
- Fungují rollbacky, feature flagy a canary nasazení?
- Existuje postup pro zmrazení změn a komunikační plán?
- Jsou runbooky pro 5 nejčastějších incidentů aktuální a otestované?
- Jsou dohodnuty šablona postmortemu, termíny a odpovědnost?
Dobré „řízení SEO incidentů“ není jen soubor technických triků, ale systém prevence, včasné detekce, organizované odezvy a poučení. Runbook zkracuje dobu do obnovy, postmortemy zvyšují odolnost a kultura bez obviňování buduje důvěru mezi SEO, vývojem a podnikáním. V prostředí měření, automatizace a programmatic SEO jde o strategickou výhodu, která chrání organický kanál a umožňuje růst bez obav, že změny povedou k paralýze.
