Kompletní SEO checklist pro rok 2025
Kompletní SEO checklist pro rok 2025
Praktický, extrémně podrobný checklist pokrývající technické SEO, on-page a obsah, Core Web Vitals, JavaScript SEO, indexaci, E-E-A-T, schema.org, mezinárodní a lokální SEO, off-page & digitální PR, migrace, analytiku, monitoring a governance. Políčka se ukládají automaticky do prohlížeče.
doporučení s vysokým dopadem střední priorita riziko/chyba
1) Technické SEO & infrastruktura
1.1 Základy (HTTP, indexace, sitemap)
1.2 Core Web Vitals & performance
1.3 JavaScript SEO
2) On-page, obsah, IA
2.1 Základy on-page
2.2 Informační architektura & clustery
2.3 Obsah & záměr vyhledávání
3) Crawl & indexace
3.1 Řízení procházení
3.2 Logy & stavové kódy
4) Obrázky, video a další média
4.1 Obrázky
4.2 Video
5) E-E-A-T, schema.org a přístupnost
5.1 E-E-A-T
5.2 Strukturovaná data
5.3 Přístupnost (a11y)
6) Mezinárodní a lokální SEO
6.1 International
6.2 Local SEO
7) Analytika, GSC & monitoring
7.1 Měření
7.2 Google Search Console
7.3 Alerty a SLA
8) E-commerce specifika
8.1 Katalog & produktové stránky
8.2 Interní vyhledávání
9) Migrace, redesign, domény
9.1 Před migrací
9.2 Po spuštění
10) Off-page, linkbuilding & digitální PR
10.1 Získávání odkazů
10.2 PR & obsahové kampaně
11) Governance, bezpečnost a soukromí
11.1 Bezpečnost & právní
11.2 Procesy a odpovědnosti
Celkový progres
Tip: Kliknutím na nadpis skupiny ji rozbalíš/sbalíš. V horní liště můžeš filtrovat jen „to-do“ položky, vyhledávat a exportovat stav jako JSON.
Nápověda
Co to znamená: Všechny požadavky na http jsou přesměrovány 301 na https a je zapnutý HSTS.
Jak na to:
- Nastav 301 z http → https na úrovni webserveru (Apache/Nginx/Cloudflare).
- Povol HSTS (např.
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload). - Otestuj směrování a certifikát v nástroji Security Headers a SSL Labs.
Co to znamená: Soubor neblokuje indexaci důležitých částí a obsahuje odkaz na sitemapu.
Jak na to:
- Zkontroluj, že neobsahuje
Disallow: /pro produkci. - Přidej
Sitemap: https://domena.cz/sitemap.xml. - Ověř v Google Search Console > Robots.txt tester.
Co to znamená: Sitemap obsahuje jen kanonické adresy vracející 200 a není přebujelá parametry.
Jak na to: Generuj sitemap dynamicky, validuj v GSC a sleduj stav „Success“.
` }, lcp: { title: 'LCP < 2.5s (75. percentil)', body: `Co to znamená: Největší viditelný prvek se načte rychle pro většinu uživatelů.
Jak na to: Optimalizuj hero obrázek/video, preload fontů a critical CSS, použij fetchpriority.
Co to znamená: Každá stránka má jedinečný title do ~60 znaků s klíčovým slovem na začátku.
Jak na to: Zkontroluj duplicity, dodej USP a CTA pro vyšší CTR.
` }, meta: { title: 'Meta description – lákavé CTA', body: `Co to znamená: Stručný popis do ~155 znaků podporující proklik.
Jak na to: Vlož benefity, čísla a výzvu k akci; neplést si s klíčovými slovy.
` }, h1: { title: 'H1 + hierarchie nadpisů', body: `Co to znamená: Na stránce je právě jeden H1, pod ním logicky H2/H3.
Jak na to: Zkontroluj šablony a komponenty, oprav vícečetné H1.
` }, url: { title: 'URL – krátké a bez diakritiky', body: `Co to znamená: Čitelné URL bez parametrů a diakritiky, oddělené pomlčkami.
Jak na to: Nastav transliteraci a canonical pro alternativy.
` }, alt: { title: 'ALT texty obrázků', body: `Co to znamená: Popisují význam obrázku, necpou klíčová slova.
Jak na to: Použij srozumitelný popis kontextu obrázku; dekorativní mají prázdný ALT.
` }, breadcrumbs: { title: 'Breadcrumbs + schema', body: `Co to znamená: Ukazují hierarchii a jsou značeny BreadcrumbList.
Jak na to: Implementuj navigaci v šablonách a přidej JSON-LD schema.
` }, hreflang: { title: 'hreflang – párované jazykové verze', body: `Co to znamená: Vzájemné odkazy mezi jazykovými variantami v hlavičce/sitemapě.
Jak na to: Použij konzistentní kódy (např. cs-CZ) a x-default pro výchozí.
Co to znamená
Stejný web může být dostupný na www.domena.cz i na domena.cz. Pro vyhledávače a link‑signály je však důležité mít jednu kanonickou host variantu a všechny ostatní vést 301 na tu preferovanou. Tím konsolidujete crawl, signály a zamezíte duplicitám.
Postup
- Zvolte preferovanou variantu (www nebo bez www) – držte se firemního standardu a existujících odkazů.
- Nastavte 301 přesměrování na úrovni webserveru/CDN/DNS proxy (Apache/Nginx/Cloudflare) pro všechny cesty.
- Ověřte, že 301 je jednosměrná, bez řetězení a platí i pro subcesty a assety.
- V GSC mějte „Domain property“ a sledujte jen kanonickou variantu v reportech.
Validace
- Ruční kontrola: http→https a www↔non‑www varianty vrací 301 na cílovou host variantu a tu samou cestu.
- Crawler: žádná smyčka, žádné 302/307/308 pro trvalé směry.
Tipy
- Řešte současně s vynucením https a HSTS – přesměrování slaďte do jedné 301.
- U subdomén (app, cdn) nastavujte pravidla odděleně, ať neovlivníte interní routy.
Časté chyby
- 301 jen na domovské URL (musí platit pro všechny cesty).
- Řetězení 301 (např. http→https→www) místo jedné cílené 301.
Kroky
- Na produkčním serveru/CF/CDN nastav 301 přesměrování z http → https pro všechny cesty a hosty.
- Vynucuj https i aplikačně (např. v Next.js/NGINX/Apache, v .htaccess nebo server blocku).
- Povol HSTS na 12+ měsíců:
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload. - Požádej o preload na
hstspreload.org(po otestování, že vše běží na https). - Zkontroluj smyčky řetězení 3xx a smíšený obsah (mixed content) ve stránkách a šablonách.
Validace
- SSL Labs: hodnocení A/A+ bez slabých protokolů.
- Security Headers: HSTS přítomné, žádný mixed content v DevTools Console.
- Ruční kontrola 5–10 URL (domovská, kategorie, detail, 404, sitemap) → http varianta vrací 301 na https.
Časté chyby
- 301 jen na domovské URL (musí platit pro všechny cesty a hosty).
- Zapomenuté subdomény bez https nebo bez HSTS.
Co to znamená
robots.txt řídí, co mohou boti procházet. Není to nástroj pro „noindex“, ale pro řízení crawl budgetu a ochranu interních cest/assetů. Kritické CSS/JS nesmí být blokovány, jinak Google nepochopí layout.
Postup
- Vytvoř/zkontroluj
/robots.txtna kořeni domény. - Odstraň globální blokace (
Disallow: /) pro produkci. - Přidej odkaz na sitemapu:
Sitemap: https://domena.cz/sitemap.xml. - Blokuj pouze skutečně zbytečné cesty (interní admin, technické endpoints) – neblokuj CSS/JS.
Validace
- Ověř v GSC > robots tester (URL Inspection).
- Crawler (Screaming Frog/ahrefs) nehlásí blokované klíčové zdroje.
Kroky
- Generuj pouze kanonické URL s HTTP 200; vynech parametrické, filtr, vyhledávání a 3xx/4xx/5xx.
- Rozděl sitemapy po 50k URL/50 MB; vytvoř index sitemap.
- Odešli v GSC a kontroluj stav „Success“ + počty Discovered/Indexed.
Validace
- Náhodný vzorek 50 URL vrací 200 a obsah se shoduje s kanonickou verzí.
- Žádné duplicitní/paginated/parametrické URL.
Co to znamená
Kanonický tag rel="canonical" říká vyhledávačům, která URL je „hlavní“ pro daný obsah. Slouží k konsolidaci duplicit (parametry, varianty, stránkování) a k přenosu signálů.
Kroky
- Na každé stránce generuj
<link rel="canonical" href="...">na preferovanou URL. - U variant (parametry, filtry, stránkování) odkazuj na hlavní kanonickou URL.
- Zajisti shodu mezi kanonickou URL, interními odkazy a sitemapou.
Validace
- Žádný self‑referencing canonical na URL, které se přesměrovávají.
- V nástroji Inspect URL (GSC) vidíš stejnou kanonickou jako ve zdrojáku.
Kroky
- Na interních/košík/admin stránkách přidej
<meta name="robots" content="noindex,follow">. - Nepoužívej blokaci v
robots.txtpro stránky, které mají být noindex – jinak se meta neprojeví. - Ujisti se, že indexovatelné šablony nemají noindex.
Validace
- GSC > Pages: nevyskytují se důležité stránky v „Excluded by noindex“.
Kroky
- Zřiď monitoring 5xx (uptime) a logování chyb v aplikaci.
- Vytvoř přívětivou 404 se vyhledáváním a odkazy na klíčové sekce.
- Staré URL přesměruj 301 na nástupnické, jinak používej 410 pro zaniklé.
Validace
- Crawler nehlásí masivní 404/5xx; 404 šablona má navigaci a je indexovatelná jako 404 (status 404).
Kroky
- Stránky 2+ nech self‑canonical (každá na sebe), první stránka je kanonická pro kolekci.
- Přidej navigaci „další/předchozí“ odkazy v HTML (rel=prev/next je již legacy, ale interní odkazy jsou nutné).
- Vyvaruj se indexace nekonečné paginace; omez počet stránek nebo nabídni přechod na filtrování.
Optimalizace
- Identifikuj LCP prvek (většinou hero obrázek/heading) pomocí CrUX/Pagespeed/Lighthouse.
- Preloaduj LCP asset (
<link rel="preload" as="image" href="..." imagesrcset="..." imagesizes="...">). - Critical CSS inlinuj; odlož neklíčové styly (
media,loadCSSpattern). - Self‑host fonty,
display: swap, preconnect na CDN.
Validace
- Field data (CrUX) – 75. percentil < 2.5s na hlavních stránkách.
- Rozděl velké bundly (code-splitting), odlož těžké event handlery, používej pasivní posluchače.
- Vynech synchronní práce v hlavním vlákně, optimalizuj třetí strany (tagy, chaty, analytika).
- Pro těžké výpočty použij Web Workers.
- Vždy definuj šířku/výšku pro obrázky a sloty reklam.
- Nezasahuj do layoutu nad fold po načtení (lazy obsah pod fold).
- Použij
font-display: swapa metriky kompatibilní fonty.
- Pro každý obrázek dodej
srcsetasizespodle layoutu; hero doplň ofetchpriority="high". - Exportuj WebP/AVIF, fallback JPEG/PNG jen kde je nutné.
- Lazy load pro offscreen (
loading="lazy"), u hero ne.
- Self‑host fonty, preconnect na hosta, preload hlavní řezy.
- Subsetting (jen potřebné glyfy),
font-display: swap.
- Audit závislostí (bundle analyzer): odeber nepoužívané balíky, nahraď těžké lehčími.
- Zapni tree‑shaking a lazy‑load částí UI; defer/async pro neblokující skripty.
- Minimalizuj CSS a kritické styly inlinuj.
- Pro klíčové šablony použij SSR/SSG: obsah a odkazy musí být ve výsledném HTML bez JS.
- Hydration načítej až po interakci (islands/on‑demand).
- Ověř pomocí „View Source“ a GSC URL Inspection (Rendered HTML).
- Každá stránka má vlastní route bez hash; server vrací 200 s HTML (ne jen shell).
- Nastav fallback pro SPA na serveru, aby boti dostali HTML.
- Title/description/OG/Twitter generuj na serveru pro každou route; žádné klientské přepisování.
- Ověř pro 5–10 typů stránek přes „View Source“ a URL Inspection.
- Získej hlavní klíčové slovo a USP; sestav 50–60 znaků s klíčem na začátku.
- Odlišení pro stránky (šablona s proměnnými), kontrola duplicit v crawleru.
- Napiš 130–155 znaků se silným benefitem a CTA; přizpůsob podle typu stránky.
- Neopakuj title, nepřeplňuj klíčová slova.
- Jeden H1 na stránku, H2/H3 logicky pod ním; nekonfliktní se značkou loga.
- Šablony: zkontroluj, že kategorie/články nevytváří více H1 bloků.
- Malá písmena, pomlčky, bez diakritiky; krátké a stálé.
- Parametry jen pro filtry/sledování, nikoli pro základní obsah.
- Popiš význam v kontextu (např. „Detail černých běžeckých bot…“), ne cpát klíčová slova.
- Dekorativní obrázky nech s prázdným
alt="".
- Vlož breadcrumbs do UI (odkazováno nahoru v hierarchii).
- Přidej JSON‑LD
BreadcrumbLists pořadím a URL.
Co to znamená
hreflang říká vyhledávačům, že více URL představuje týž obsah v různých jazykových/regionálních variantách (např. cs-CZ, en-GB). Pomáhá doručit uživateli správnou verzi výsledku a konsoliduje signály mezi ekvivalenty.
Kdy použít
- Máte samostatné URL pro jazyky/regiony (subfoldery, subdomény, ccTLD).
- Obsah je významově ekvivalentní (ne odlišná témata).
Struktura tagů
<link rel="alternate" hreflang="cs-CZ" href="https://example.com/cs/..." />
<link rel="alternate" hreflang="en-GB" href="https://example.com/en-gb/..." />
<link rel="alternate" hreflang="x-default" href="https://example.com/" />
Postup
- Nakresli mapu ekvivalentů: pro každou stránku vyjmenuj všechny jazykové/regionální verze. Zapiš přesné ISO kódy (např.
cs-CZ,en-GB, nikoli volné zkratky). - Implementuj: buď v <head> všech ekvivalentů, nebo v jazykových sitemapech. Vždy uveď kompletní sadu všech jazyků +
x-default. - Zajisti obousměrnost: každý ekvivalent musí odkazovat na všechny ostatní včetně sebe (symetrické páry).
- Kanonika + URL: kanonické tagy směřují v rámci jazyka na sebe; hreflang nikdy neukazuje na nekanonickou nebo 3xx URL.
Validace
- Crawlerem zkontroluj, že pro každý jazyk VRACÍŠ celou sadu hreflang tagů a že href existují a vrací 200.
- V GSC (Search Console) sleduj „Jazykové verze“ – chyby typu „no return tag“ nebo „neplatný kód“ oprav.
Tipy
- Pro verzi „výchozí“ použij
x-default– typicky homepage nebo směrovací landing. - Regionální varianty angličtiny rozlišuj (
en-US,en-GB), ne jenen, pokud máš rozdíly v měně/ceně/dopravě. - Preferuj absolutní URL, ne relativní.
Časté chyby
- Chybějící obousměrnost (A odkazuje na B, ale B nevrací A).
- Nesprávné kódy (např.
czmístocs-CZ), odkazy na 3xx/404 a mix s kanonikami. - Hreflang na úplně odlišný obsah (není ekvivalent, ale jiná stránka).
- Generuj výhradně 200 kanonické URL; odstraň 3xx/4xx/parametry.
- Automatické čištění při změně kanoniky.
- V robots.txt neblokuj složky s CSS/JS; jinak Google nevyhodnotí layout a může snížit indexaci.
- Ověř Inspekcí URL (Rendered HTML) a Coverage v GSC.
Co to znamená: Web je dostupný jen na jedné host variantě (www nebo bez www) a ostatní 301 přesměrovávají na tu kanonickou.
Jak na to: Nastav 301 na úrovni webserveru/CDN a ověř smyčky/řetězení. V GSC měj jen kanonickou variantu.
` }, canon: { title: 'Kanonické tagy', body: `Co to znamená: link rel="canonical" ukazuje na preferovanou URL u duplicit/variant.
Jak na to: Přidej canonical na kanonickou verzi, dbej na shodu s interními odkazy a sitemapou.
` }, noindex: { title: 'Noindex jen kde je to vhodné', body: `Co to znamená: Noindex brání indexaci stránkám, které nemají být ve výsledcích (admin, košík, interní).
Jak na to: Přidej <meta name="robots" content="noindex"> nebo HTTP hlavičku, neblokuj v robots.txt.
Co to znamená: 404/410/5xx jsou monitorované a 404 stránka pomáhá uživateli najít obsah.
Jak na to: Vytvoř užitečnou 404 s navigací/vyhledáváním, sleduj 5xx alerty a oprav příčiny.
` }, pag: { title: 'Paginace bez rel next/prev (legacy)', body: `Co to znamená: Paginované stránky jsou kanonizované a mají jasnou interní navigaci.
Jak na to: Nastav canonical na sebe sama, zajisti stránkování s odkazy a případně indexuj jen první stránku kolekce.
` }, inp: { title: 'INP < 200ms – rychlé interakce', body: `Co to znamená: Rychlá odezva na kliky/gesta u 75% návštěv.
Jak na to: Rozděl JS (code-splitting), odlož skripty, minimalizuj práci v hlavním vlákně.
` }, cls: { title: 'CLS < 0.1 – stabilní layout', body: `Co to znamená: Stránka se během načítání „neskáče“.
Jak na to: Rezervuj rozměry obrázků/ads, nepřidávej obsah nad již vykreslené prvky.
` }, cache: { title: 'HTTP cache & CDN', body: `Co to znamená: Správné cache hlavičky a doručování přes CDN.
Jak na to: Použij Cache-Control s dlouhými časy pro statická aktiva + fingerprinting, brotli a HTTP/2/3.
Co to znamená: WebP/AVIF, správné srcset/sizes, lazy-loading a fetchpriority pro hero.
Jak na to: Exportuj více rozlišení, definuj sizes, lazy pro offscreen a preload klíčových.
Co to znamená: Rychlé vykreslení textu bez FOIT/FOUT.
Jak na to: font-display: swap, subsetting, preconnect na CDN/font host, případně self-host.
Co to znamená: Méně kódu ke stažení/spuštění = lepší výkon.
Jak na to: Tree-shaking, code-splitting, defer/async, audit závislostí, minimalizace CSS.
Co to znamená: Základní obsah/odkazy jsou dostupné i bez spuštění JS.
Jak na to: Použij SSR nebo SSG pro kritické stránky, u interaktivity aplikuj on-demand hydration.
` }, routes: { title: 'Router s unikátní URL a 200 odpověďmi', body: `Co to znamená: Každá stránka má vlastní URL (ne hash-only) a server vrací 200 s obsahem.
Jak na to: Nastav server-side routy a fallback pro SPA, aby bot dostal HTML.
` }, 'meta-ssr': { title: 'Meta tagy generované na serveru', body: `Co to znamená: <title>, description, OG/Twitter se renderují na serveru.
Jak na to: Propaguj data do šablon/SSR, nečekej na klientský JS.
` }, links: { title: 'Interní prolinkování', body: `Co to znamená: Kontextové odkazy, breadcrumbs a související obsah zlepšují procházení.
Jak na to: Přidej odkazy z klíčových stránek na podpůrné a naopak, používej smysluplné anchor texty.
` }, ext: { title: 'Externí odkazy a rel atributy', body: `Co to znamená: Odkazuješ na kvalitní zdroje a správně používáš rel (nofollow/sponsored).
Jak na to: Dbej na důvěryhodnost zdrojů; komerční/uživatelské odkazy označ.
` }, clusters: { title: 'Topic clustery', body: `Co to znamená: Pilířové stránky a podpůrný obsah pokrývají téma do hloubky.
Jak na to: Navrhni pilíře, vytvoř obsahové clustery a prolinkuj je dohromady.
` }, thin: { title: 'Thin/duplicate kategorie/tagy', body: `Co to znamená: Odstranění slabých/duplicitních listingů.
Jak na to: Konsoliduj do silnějších stránek, převeď zbytek 301/410, sjednoť tagy.
` }, facets: { title: 'Fasetové filtrování a indexace', body: `Co to znamená: Indexují se jen hodnotné kombinace filtrů.
Jak na to: Whitelist hodnotných facetů, canonical/param rules pro ostatní, interní odkazy na ty důležité.
` }, intent: { title: 'Search intent', body: `Co to znamená: Obsah odpovídá záměru dotazu (informational, commercial…).
Jak na to: Analyzuj SERP, mapuj dotazy na typ stránek a doplň chybějící sekce.
` }, eeat: { title: 'E‑E‑A‑T signály', body: `Co to znamená: Důvěryhodnost autora/webu, citace a transparentnost.
Jak na to: Přidej bio autora, reference, zdroje, kontakty, informace o firmě.
` }, faq: { title: 'FAQ sekce', body: `Co to znamená: Zodpovídá časté dotazy v rámci stránky.
Jak na to: Vycházej z „People Also Ask“, přidej strukturovaná data FAQPage, kde dávají smysl.
Co to znamená: Pravidelně obnovuješ klíčové stránky.
Jak na to: Naplánuj čtvrtletní revize, aktualizuj data, příklady, odkazy a schema.
` }, cta: { title: 'CTA a mikro-konverze', body: `Co to znamená: Stránka má jasné výzvy k akci a měření.
Jak na to: Definuj cíle, přidej CTA v obsahu a měř události v analytice.
` }, crawlbudget: { title: 'Crawl budget', body: `Co to znamená: Boti netráví čas na zbytečných stránkách.
Jak na to: Omez nekonečné kalendáře, session parametry, duplicitní facet kombinace; využij robots.txt a noindex.
Co to znamená: Sitemap neobsahuje 3xx/4xx/5xx ani nekanonické adresy.
Jak na to: Generuj pouze 200 kanoniky, průběžně validuj a čistě loguj chyby.
` }, blocked: { title: 'Nezablokovat kritické JS/CSS', body: `Co to znamená: Boti mají přístup k assetům nutným pro pochopení layoutu/obsahu.
Jak na to: Nepoužívej Disallow na složky s CSS/JS, otestuj v GSC „URL inspection“.
Co to znamená: Sleduješ crawling botů a odhaluješ plýtvání.
Jak na to: Exportuj logy, segmentuj user-agenty, hledej 404/500 a nekonečné sekvence.
` }, redirects: { title: '301 mapy a bez řetězení', body: `Co to znamená: Přesměrování jsou krátká a bez smyček.
Jak na to: Udržuj redirect mapu, testuj 3xx řetězení, oprav cíle na kanoniky.
` }, '410': { title: '410 pro trvale odstraněné stránky', body: `Co to znamená: Zjevně zaniklé URL vrací 410 (Gone), ne 404.
Jak na to: Nastav pravidla na serveru, používej 301, pokud existuje nástupnická stránka.
` }, srcset: { title: 'srcset/sizes, rozměry a komprese', body: `Co to znamená: Obrázky se servírují v adekvátním rozlišení.
Jak na to: Definuj srcset a sizes, optimalizuj rozměry a kompresi, zapni loading="lazy".
Co to znamená: Automatická změna velikosti/formatu podle zařízení.
Jak na to: Využij Cloudinary/ImageKit/Cloudflare Images nebo vlastní proxy vrstvu.
` }, altdecor: { title: 'Dekorativní vs. významové obrázky', body: `Co to znamená: Dekorativní mají prázdný ALT, významové popisný.
Jak na to: Nastav alt="" pro dekorace, pro klíčové obrázky napiš sémantický ALT.
Co to znamená: Iframe/players se načtou až při interakci/viditelnosti.
Jak na to: Použij „lite-youtube-embed“, poster image a parametr „nocookie“.
` }, videoschema: { title: 'VideoObject + video sitemap', body: `Co to znamená: Strukturovaná data pro videa a jejich mapu.
Jak na to: Přidej JSON‑LD VideoObject, generuj video sitemap a odešli do GSC.
Co to znamená: Viditelní autoři s bio a kvalifikací.
Jak na to: Profil autora, odkazy na zdroje/práce, stránka O nás/Kontakt.
` }, reviews: { title: 'Recenze a citace', body: `Co to znamená: Důkazy spokojenosti/autority z externích zdrojů.
Jak na to: Zobraz recenze, odkazuj na zdroje, použij Review/AggregateRating kde relevantní.
Co to znamená: Transparentní GDPR, podmínky, reklamace, cookies.
Jak na to: Udržuj aktuální dokumenty a odkazy v patičce, měj kontaktní kanály.
` }, org: { title: 'Organization/LocalBusiness', body: `Co to znamená: Správné údaje o firmě v JSON‑LD.
Jak na to: Přidej logo, adresu, telefon, sameAs na profily; validuj v Rich Results Test.
Co to znamená: Články se značkou autora, datem a headline.
Jak na to: Přidej JSON‑LD, uveď autora, datum publikace/aktualizace.
` }, product: { title: 'Product + Offer + AggregateRating', body: `Co to znamená: Kompletní značka pro produktové stránky.
Jak na to: Přidej cenu, dostupnost, měnu v Offer, recenze a průměry v AggregateRating.
Co to znamená: Strukturovaná data pro FAQ/návody, kde dávají smysl.
Jak na to: Dbej na konzistenci s viditelným obsahem, validuj v Rich Results Test.
` }, contrast: { title: 'Přístupnost: kontrast a ovladatelnost', body: `Co to znamená: Splnění WCAG pro kontrast, velikost písma a focus.
Jak na to: Otestuj Lighthouse/axe, přidej focus styly a ARIA labely.
` }, kbd: { title: 'Ovládání z klávesnice', body: `Co to znamená: Web lze projít bez myši.
Jak na to: Zajisti tab index, „skip to content“, viditelný focus a správné role.
` }, ccTLD: { title: 'Struktura pro trhy (ccTLD/subdomain/subfolder)', body: `Co to znamená: Správná volba rozvržení pro lokalizaci.
Jak na to: Zvaž SEO/technické dopady; pro začátek často stačí subfoldery.
` }, currency: { title: 'Lokalizace měny, dopravy, daní a jazyka', body: `Co to znamená: Obsah a nabídky respektují region.
Jak na to: Implementuj skutečnou lokalizaci (ne strojový překlad), hlídej měnu a dopravce.
` }, hreflang2: { title: 'Konzistentní hreflang + sitemapy', body: `Co to znamená: Všechny jazykové verze se vzájemně odkazují.
Jak na to: Generuj jazykové sitemapy a páruj ekvivalenty včetně x-default.
Co to znamená: Plně vyplněný a spravovaný profil.
Jak na to: Doplň kategorie, fotky, příspěvky, Q&A, sbírej recenze.
` }, nap: { title: 'Konzistence NAP', body: `Co to znamená: Stejné jméno, adresa a telefon ve všech citacích.
Jak na to: Audituj citation zdroje a oprav nesrovnalosti.
` }, localpages: { title: 'Místní landing pages', body: `Co to znamená: Pro jednotlivá místa máš unikátní, hodnotný obsah.
Jak na to: Přidej lokální prvky (mapa, NAP, nabídka, recenze) a interní prolinkování.
` }, ga4: { title: 'GA4 / alternativy a značkování kampaní', body: `Co to znamená: Měříš čistě a konzistentně.
Jak na to: Nastav zdroje/medium/utm, vyluč interní traffic, definuj konverze.
` }, gtm: { title: 'Google Tag Manager governance', body: `Co to znamená: Řízené nasazování skriptů se správnými souhlasy.
Jak na to: Používej workspace, verzování, schvalování a vazbu na CMP/Consent Mode.
` }, events: { title: 'Události měření', body: `Co to znamená: Sledování interakcí (scroll, CTA, formuláře, hledání, video, 404).
Jak na to: Definuj eventy a parametry, implementuj přes GTM/SDK, validuj v Realtime/DebugView.
` }, goals: { title: 'Konverze a atribuční modely', body: `Co to znamená: Jasně definované cíle a vyhodnocování přínosu kanálů.
Jak na to: Nastav conversions v GA4, porovnej atribuční modely a asistované konverze.
` }, 'gsc-verify': { title: 'Ověření domény v GSC', body: `Co to znamená: Vlastníš všechny varianty (http/https, www/non-www, subdomény) přes DNS.
Jak na to: Přidej „Domain property“ a ověř přes TXT záznam.
` }, 'gsc-coverage': { title: 'Pokrytí indexu', body: `Co to znamená: Řešíš chyby, vyloučené URL a měkké 404.
Jak na to: Sleduj report Coverage/Pages v GSC a oprav příčiny po dávkách.
` }, 'gsc-queries': { title: 'Dotazy s nízkým CTR', body: `Co to znamená: Zlepšuješ title/description pro lepší proklik.
Jak na to: V reportu Performance filtruj nízké CTR a uprav meta prvky a obsah.
` }, 'gsc-sitemaps': { title: 'Sitemapy v GSC', body: `Co to znamená: Sitemapy mají stav „Success“ a neobsahují chyby.
Jak na to: Oprav 404/500, drž jen 200 kanoniky, přegeneruj a znovu odešli.
` }, alerts: { title: 'Alerty a SLA', body: `Co to znamená: Máš notifikace na kritické změny (traffic, 5xx, robots, sitemap, CWV).
Jak na to: Nastav alerting v GA4/GSC/uptime monitoringu a incident workflow.
` }, uptime: { title: 'Uptime monitoring a SSL expirace', body: `Co to znamená: Dostupnost webu a platné certifikáty.
Jak na to: Použij UptimeRobot/StatusCake a alerty na expirační datum SSL.
` }, plp: { title: 'Kategorie (PLP)', body: `Co to znamená: Kategorizace s unikátním textem a rozumnými filtry.
Jak na to: Přidej úvodní text, omez indexaci zbytečných filtrů, interně prolinkuj.
` }, pdp: { title: 'Produkt (PDP)', body: `Co to znamená: Detail produktu s parametry, variantami a FAQ.
Jak na to: Zahrň specifikace, dostupnost, recenze a strukturovaná data.
` }, reviewschema: { title: 'Recenze a AggregateRating pravidla', body: `Co to znamená: Správné použití schema pro recenze.
Jak na to: Dodrž zásady Google, neznačuj self‑serving recenze tam, kde jsou zakázány.
` }, 'canon-vari': { title: 'Varianty a kanonizace', body: `Co to znamená: Řešení duplicit mezi variantami (barva/velikost).
Jak na to: Zvaž samostatné URL pro významné varianty nebo canonical/param pro ostatní.
` }, searchindex: { title: 'Interní vyhledávání není indexované', body: `Co to znamená: Vyhledávací výsledky nejsou ve vyhledávačích.
Jak na to: Přidej noindex na výsledky vyhledávání a zamez jejich odkazování v sitemapě.
` }, zerostate: { title: 'Zero‑result stavy', body: `Co to znamená: Když nic nenajdeme, pomůžeme uživateli.
Jak na to: Doporuč kategorie/produkty nebo zobraz tipy pro vyhledávání.
` }, crawlold: { title: 'Plný crawl starého webu', body: `Co to znamená: Máš inventář URL/metadat před migrací.
Jak na to: Projeď Screaming Frog/ahoj crawler, ulož titles/H1/schema/odkazy.
` }, redirectmap: { title: 'Redirect mapa', body: `Co to znamená: Jasné mapování old → new bez smyček.
Jak na to: Připrav 301 pravidla, otestuj na stagingu, oprav kolize.
` }, parity: { title: 'Obsahová parita', body: `Co to znamená: Nový web zachovává klíčový obsah/meta/schema.
Jak na to: Porovnej titles, H1, schema, interní odkazy; doplň chybějící.
` }, 'gsc-change': { title: 'Change of address v GSC', body: `Co to znamená: Při změně domény informuješ Google.
Jak na to: Spusť Change of address v GSC pro původní doménu po nasazení 301.
` }, 'redirects-live': { title: 'Kontrola 301 v produkci', body: `Co to znamená: Po spuštění ověříš přesměrování bez řetězení.
Jak na to: Projeď vzorek v crawleru, oprav vícenásobné 3xx a dead ends.
` }, monitoring: { title: 'Monitoring po migraci', body: `Co to znamená: Sleduješ 404/5xx, indexaci, CWV a pozice.
Jak na to: Nastav dashboard/alerty, kontroluj GSC reporty.
` }, prospecting: { title: 'Prospecting na odkazy', body: `Co to znamená: Vyhledáváš relevantní stránky pro získání odkazů.
Jak na to: Broken link building, unlinked mentions, tematické katalogy a média.
` }, anchors: { title: 'Profil anchor textů', body: `Co to znamená: Vyvážený mix brand/URL/partial/exact match.
Jak na to: Audituj odkazový profil, omez rizikové exact anchory.
` }, dr: { title: 'Kvalita domén', body: `Co to znamená: Priorita kvalitních a tematicky relevantních webů.
Jak na to: Posuzuj autoritu, návštěvnost, topical relevance a historii domény.
` }, studies: { title: 'PR: studie a kampaně', body: `Co to znamená: Tvoříš linkable assets (data, průzkumy, interaktivní obsah).
Jak na to: Př bere PR pitch, originální data, vizualizace a distribuce do médií.
` }, newsjacking: { title: 'Newsjacking a komentáře expertů', body: `Co to znamená: Reaguješ na aktuální témata s odborným komentářem.
Jak na to: Sleduj trendové dotazy, připrav rychlé citace a outreach do médií.
` }, csp: { title: 'Bezpečnostní hlavičky', body: `Co to znamená: CSP, X-Frame-Options, HSTS a bezpečné cookies.
Jak na to: Nastav CSP s whitelistem, HSTS a Secure; HttpOnly; SameSite cookies.
Co to znamená: Zpracování měření v souladu s GDPR.
Jak na to: Implementuj CMP, mapuj souhlasy do GTM/Consent Mode v2.
` }, backups: { title: 'Zálohy a verzování', body: `Co to znamená: Obnova při incidentu je reálně možná.
Jak na to: Pravidelné zálohy, test restore, verzování infra i obsahu.
` }, owners: { title: 'Vlastnictví a SLA', body: `Co to znamená: Každá sekce má vlastníka a dohody o reakčních časech.
Jak na to: Definuj RACI, backlog a reporting.
` }, retro: { title: 'Měsíční retro a prioritizace', body: `Co to znamená: Pravidelné vyhodnocení a plán další práce.
Jak na to: Sleduj dopad × náročnost, aktualizuj roadmapu a backlog.
` } }; for(const [k,v] of Object.entries(HELP_FALLBACK)){ if(!helpContentById[k]) helpContentById[k] = v; } // statické help buttony: posluchače kliknutí const HELP_SVG = ''; const helpModal = document.getElementById('helpModal'); const helpModalTitle = document.getElementById('helpModalTitle'); const helpModalBody = document.getElementById('helpModalBody'); const helpCloseBtn = document.getElementById('helpCloseBtn'); let elementFocusedBeforeOpen = null; function buildFallbackHelp(itemId, fallbackTitle){ const cb = document.getElementById(itemId); const item = cb?.closest('.item'); const labelEl = item ? item.querySelector('label') : null; const labelText = (labelEl?.innerText || fallbackTitle || '').trim(); const tags = item ? $$('.tag', item).map(t=>t.textContent.trim()).join(', ') : ''; const hint = item ? ($('.hint', item)?.innerText || '') : ''; const specific = buildKeywordSpecificGuide(labelText.toLowerCase(), itemId); return `Co to znamená
${labelText}. V praxi jde o konkrétní pravidla/konfiguraci, která mají zajistit správnou indexaci, pochopení obsahu a bezchybnou uživatelskou zkušenost. Štítky (např. priority/risk/tema) u položky: ${tags || '—'}.
${hint ? `Kontext z checklistu: ${hint}
` : ''} ${specific}Proč na tom záleží
- Zlepšení zjistitelnosti (discovery) a správné indexace ve vyhledávačích.
- Snížení duplicit a chyb (soft 404/5xx, zbytečné procházení, ztráty signálů).
- Lepší výkon/UX (Core Web Vitals), vyšší CTR a konverze.
Kroky implementace
- Zjištění stavu: Zkontrolujte aktuální chování/konfiguraci pro tento bod (prohlížeč, DevTools, crawler, GSC/GA4, serverové logy).
- Návrh řešení: Upřesněte cílový výsledek v šablonách/konfiguraci (CMS, server, CDN) a připravte konkrétní změny.
- Implementace: Upravte šablony, metadata, směrování, performance nastavení nebo infrastrukturní pravidla dle potřeby.
- Test na stagingu: Ověřte funkcionalitu, SEO signály a neexistenci regresí (CWV, indexace, odkazy).
- Nasazení + kontrola: Po release proveďte znovu měření a krátkodobý monitoring chyb/alertů.
Validace
- Ruční kontrola 5–10 typových URL, kontrola zdrojového HTML a síťových odpovědí.
- Crawler (Screaming Frog, Ahrefs/SEMrush) – výpis relevantních polí k tomuto bodu.
- GSC/GA4/DevTools – metriky, chybové stavy a pokrytí.
Tipy
- Připravte checklist pro reviews a rollback; změny dělejte iterativně.
- Dokumentujte důvody nastavení, ať je jasné „proč“ i za půl roku.
Časté chyby
- Provedení změn jen v jedné šabloně – ostatní typy stránek zůstanou nekonzistentní.
- Chybějící validace po nasazení nebo ignorovaná varování v nástrojích.
Co to znamená
Title je viditelný název stránky ve výsledcích vyhledávání. Ovlivňuje proklik (CTR) i pochopení tématu.
Postup
- Vytvoř seznam šablon pro typy stránek (home, kategorie, článek, produkt).
- Sestav formát:
{Hlavní klíč} – {USP/brand}(50–60 znaků). Omez oddělovače a zbytečná slova. - Implementuj v šablonách/SSR. Pro PDP přidej klíčové parametry (značka, model, hlavní vlastnost).
- Audit duplicit crawlerem a oprav kolize. Měj fallback pro prázdná pole.
Tipy
- Testuj variace na dotazech s nízkým CTR (GSC).
- Neopakuj doménu, pokud je na konci v šabloně.
Co to znamená
Meta description je stručný popis zobrazený pod title. Přímé hodnocení SEO nemá, ale zásadně ovlivňuje CTR.
Postup
- Napiš 130–155 znaků s benefitem a výzvou k akci. Přizpůsob každému typu stránky.
- Generuj programově ze strukturovaných dat (atributy produktu, shrnutí článku).
- Vyhýbej se opakování title a umělému shlukování klíčových slov.
Tipy
- Průběžně sleduj GSC – nízké CTR = kandidát na přepis.
Co to znamená
H1 je hlavní nadpis na stránce; má vyjadřovat téma obsahu.
Postup
- Na stránce právě jeden H1.
- Komponenty/šablony nesmí generovat další H1.
- H2/H3 tvoří logickou strukturu obsahu.
Co to znamená
URL by měla být krátká, čitelná a stabilní. Slouží jako identifikátor i signál relevance.
Postup
- Malá písmena, pomlčky, bez diakritiky a parametrů.
- Nastav 301 mapy při změně struktury a canonical konzistenci.
Co to znamená
ALT zpřístupňuje význam obrázku (a11y) a pomáhá vyhledávačům pochopit kontext.
Postup
- Popiš význam v kontextu scény, ne „klíčová slova“.
- Dekorativní obrázky mají
alt="".
Co to znamená
Navigace drobečků ukazuje uživateli i robotům umístění stránky v hierarchii.
Postup
- Implementuj do UI a přidej JSON‑LD
BreadcrumbList. - Poslední prvek bez odkazu; ostatní klikatelné.
Specifický postup pro hreflang
- Mapuj ekvivalenty URL.
- Vlož tagy pro všechny jazyky + x‑default.
- Validuj páry (obousměrnost).
Specifický postup pro robots.txt
- Ne blokovat CSS/JS, přidej Sitemap.
- Odstraň Disallow: / v produkci.
Co to znamená
Sitemapy jsou strojové seznamy URL, kterými navádíte vyhledávače na preferované (kanonické) stránky. Neslouží k vynucení indexace, ale k efektivnímu procházení a validaci stavu.
Postup
- Vygenerujte pouze URL s HTTP 200, bez parametrů a duplicit; vše musí odpovídat kanonické verzi.
- Pro velké weby rozdělte do více souborů a používejte sitemap index; aktualizujte po změnách.
- Odešlete v GSC a používejte jako referenci při auditech pokrytí (Coverage/Pages).
Tipy
- Zachovejte stabilní pořadí a velikost; změny diffujte při deployi.
- Neindexovatelné stránky do sitemap nepatří.
Specifický postup pro Canonical
- Self‑canonical pro paginaci, hlavní canonical pro kolekce.
- Shoda se sitemapou a interními odkazy.
Co to znamená
LCP měří, jak rychle se načte největší prvek viewportu (často hero obrázek).
Postup
- Preload LCP assetu + správné rozměry a komprese.
- Critical CSS inline, self‑host fonty a preconnect.
Co to znamená
INP hodnotí odezvu UI na akce uživatele (klik, vstup, interakce).
Postup
- Rozdělení bundlů, lazy handlery, odstranění synchronních blokací.
- Workers pro těžké výpočty, optimalizace třetích stran.
Co to znamená
CLS měří míru poskakování layoutu. Cílem je stabilní rozvržení.
Postup
- Rezervace rozměrů obrázků/reklam.
- Žádný dodatečný obsah nad fold po načtení.
font-display: swap.
Specifický postup pro Video
- Lite embed, poster, nocookie.
- JSON‑LD VideoObject + video sitemap.
Specifický postup pro GA4
- Definice měřených událostí a konverzí.
- Ověření přes DebugView a Realtime.
Specifický postup pro GSC
- Ověření domény přes DNS.
- Monitoring Coverage a Queries (CTR).
Specifický postup pro e‑shop stránky
- PLP: unikátní text, prolinkování, řízení indexace filtrů.
- PDP: parametry v title, skladovost, FAQ/recenze + schema.
Specifický postup pro přesměrování
- Bez řetězení, mapy old→new.
- 410 pro definitivně zaniklé.