sitemap.xml: jak ji správně vytvořit a používat
· 9 min čtení
Většina návodů na sitemapu končí u toho, jak ji vygenerovat. Plugin ji vytvoří, vy ji odešlete do Search Console a máte hotovo. Jenže právě tady vzniká problém, který vidím na klientských webech znovu a znovu: sitemapa je plná adres, které tam nemají co dělat. Redirecty, stránky s noindex, filtrované varianty katalogu, staré 404. Google si to přebere, ale bere to jako signál nepořádku.
Sitemapa není seznam všeho, co na webu máte. Je to seznam adres, které chcete mít v indexu. Rozdíl mezi těmito dvěma přístupy rozhoduje o tom, jestli vám sitemapa pomáhá, nebo škodí. V tomto článku projdeme, co do sitemapy patří, jak má vypadat, jak ji nasadit a čeho se vyvarovat.
Co sitemap.xml je a k čemu slouží
Sitemap.xml je soubor se seznamem URL adres vašeho webu. Vyhledávače jako Google a Seznam ho čtou, aby rychleji našly a pochopily, které stránky považujete za důležité. U velkých nebo špatně provázaných webů je to způsob, jak vyhledávači naservírovat kompletní seznam adres, aniž by je musel složitě dohledávat přes odkazy.
K čemu sitemapa naopak neslouží: negarantuje indexaci. To, že adresu vložíte do sitemapy, neznamená, že ji Google zaindexuje. Je to pozvánka ke crawlu, ne příkaz. Pokud stránka nemá kvalitní obsah nebo ji blokujete jinde, sitemapa to nezachrání.
Kdy sitemapu opravdu potřebujete
Malý web s dobrou vnitřní strukturou odkazů se obejde i bez ní. Google si projde web z odkazů a stránky najde. Sitemapa se stává klíčovou ve chvíli, kdy má web tisíce URL, hluboko zanořené stránky, nebo když publikujete často a chcete nový obsah dostat do indexu rychleji.
Souvislost s tím, jak vyhledávač web prochází a kolik zdrojů mu na to věnuje, rozebírám v článku o indexaci a crawl budgetu.
Zlaté pravidlo: do sitemapy patří jen indexovatelné URL
Tohle je nejdůležitější věta celého článku. Do sitemapy patří pouze adresy, které chcete mít v indexu a které jsou technicky indexovatelné. Nic jiného.
Konkrétně to znamená čtyři podmínky, které musí každá URL v sitemapě splňovat:
- vrací stavový kód 200 (žádné 404, žádné redirecty 301/302)
- nemá značku noindex
- není blokovaná v robots.txt
- je kanonická sama na sebe (canonical odkazuje na tutéž adresu)
Pokud adresa nesplňuje byť jen jednu z těchto podmínek, do sitemapy nepatří. Vkládat tam redirect nebo stránku s noindex je protimluv: jednou rukou říkáte "tuhle stránku chci v indexu" a druhou "tuhle nechci".
Proč balast v sitemapě škodí
Někdo namítne, že pár chybných adres nic nezkazí. Zkazí. Google si při čtení sitemapy dělá obrázek o tom, jak dobře svůj web znáte. Když najde v sitemapě stovky redirectů a nefunkčních stránek, bere sitemapu jako méně spolehlivý zdroj a méně jí důvěřuje.
U velkých webů se přidává druhý efekt: každou adresu ze sitemapy vyhledávač aspoň jednou navštíví. Když ho posíláte na tisíce stránek, které stejně nechcete indexovat, plýtváte crawl budgetem na místa, kde vám to nic nepřinese.
Struktura sitemapy a co do ní psát
Formát sitemapy je jednoduchý XML. Základní verze s jednou adresou vypadá takto:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://www.priklad.cz/</loc>
<lastmod>2026-07-15</lastmod>
</url>
<url>
<loc>https://www.priklad.cz/sluzby/</loc>
<lastmod>2026-06-30</lastmod>
</url>
</urlset>
Povinný je pouze element loc s absolutní URL adresou. Adresa musí být přesná, včetně protokolu (https), včetně nebo bez www podle toho, jak web reálně běží, a v přesném tvaru s lomítkem na konci nebo bez něj. Nejednotnost v těchto detailech je zdroj zbytečných problémů.
lastmod ano, priority a changefreq ne
Element lastmod uvádí datum poslední změny stránky. Google ho používá jako nápovědu, kdy stránku znovu projít, takže má smysl ho vyplňovat. Podmínka je, aby byl poctivý. Pokud do lastmod napíšete dnešní datum u všech stránek při každém generování, přestane mu Google věřit a bude ho ignorovat. Datum se stačí psát ve formátu RRRR-MM-DD.
Elementy priority a changefreq naopak vynechte. Google veřejně potvrdil, že je nepoužívá. Jsou to relikty, které nikomu nepomůžou a jen zvětšují soubor.
Velké weby: víc sitemap a index sitemapa
Jeden soubor sitemapy má dva limity: maximálně 50 000 URL a 50 MB v rozbaleném stavu. Jakmile se přes ně dostanete, musíte web rozdělit do více sitemap a propojit je takzvanou index sitemapou.
Index sitemapa je soubor, který místo adres stránek odkazuje na další sitemapy. Vypadá takto:
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://www.priklad.cz/sitemap-produkty.xml</loc>
<lastmod>2026-07-31</lastmod>
</sitemap>
<sitemap>
<loc>https://www.priklad.cz/sitemap-kategorie.xml</loc>
<lastmod>2026-07-28</lastmod>
</sitemap>
<sitemap>
<loc>https://www.priklad.cz/sitemap-blog.xml</loc>
<lastmod>2026-07-30</lastmod>
</sitemap>
</sitemapindex>
Rozdělení podle typu obsahu se vyplácí
Rozdělovat sitemapy nemusíte jen kvůli limitům. I menší web získá tím, že sitemapy rozdělíte logicky: zvlášť produkty, zvlášť kategorie, zvlášť články. Získáte tím přehled v Search Console, kde uvidíte míru indexace pro každý typ obsahu samostatně. Když se propadne indexace produktů, poznáte to hned, protože to nebude schované mezi tisíci ostatních adres.
Jak sitemapu nasadit
Vytvořit sitemapu je půlka práce. Druhá půlka je dát o ní vyhledávačům vědět. Slouží k tomu dvě cesty a doporučuji použít obě.
Odeslání v Google Search Console
V Search Console otevřete sekci Soubory Sitemap, vložte adresu sitemapy a odešlete. Google ji zařadí do fronty ke zpracování a za pár hodin uvidíte stav. "Úspěšně načteno" znamená, že je vše v pořádku a vidíte počet nalezených adres.
Sledujte poměr mezi počtem odeslaných a zaindexovaných adres. Velký rozdíl je signál, že něco není v pořádku, ať už v samotné sitemapě, nebo v kvalitě stránek.
Odkaz z robots.txt
Druhá cesta je uvést adresu sitemapy v souboru robots.txt. Tuto informaci čtou i další vyhledávače včetně Seznamu. Do robots.txt přidáte jednoduchý řádek:
Sitemap: https://www.priklad.cz/sitemap.xml
Sitemapa musí ležet v kořeni domény, tedy na adrese vasedomena.cz/sitemap.xml. Souvislost sitemapy s ostatními technickými prvky webu rozebírám v přehledovém článku o technickém SEO.
Dynamické vs statické generování
U malého statického webu můžete sitemapu vytvořit jednorázově a nahrát ji na server. Nevýhoda je, že ji musíte ručně aktualizovat při každé změně.
U webu, který se často mění, dává smysl generovat sitemapu dynamicky. CMS nebo e-shopová platforma ji vytváří automaticky a udržuje aktuální. Přesně tohle dělá většina pluginů. Podmínka je, aby generátor respektoval zlaté pravidlo a nevkládal do sitemapy adresy s noindex nebo redirecty. Ne všechny to dělají správně.
Nejčastější chyby v sitemapách
Při auditech narážím pořád na stejné chyby. Tady je jejich přehled seřazený podle toho, jak často je vidím.
- Redirecty a 404 v sitemapě. Nejčastější problém. Sitemapa má obsahovat cílové adresy se stavem 200, ne staré URL, které se přesměrovávají.
- Adresy s noindex. Stránka říká "neindexuj mě", sitemapa říká "indexuj mě". Google to hlásí jako konflikt.
- Konflikt s robots.txt. Adresa je v sitemapě, ale zároveň blokovaná v robots.txt. Buď ji chcete v indexu, nebo ne, obojí zároveň nejde.
- Nekanonické varianty. Do sitemapy patří jen kanonická adresa. Filtrované a parametrické verze katalogu tam nepatří.
- Falešný lastmod. Datum poslední změny u všech stránek stejné a stále aktuální. Google takový údaj ignoruje.
- Sitemapa neaktualizovaná. Statická sitemapa, kterou nikdo neudržuje, po půl roce neodpovídá realitě webu.
XML sitemapa versus HTML mapa webu
Ještě jedno časté nedorozumění. XML sitemapa a HTML mapa webu jsou dvě různé věci. XML sitemapa je pro vyhledávače, je to strojově čitelný seznam adres. HTML mapa webu je stránka pro návštěvníky, kde najdou přehled sekcí a proklikají se dál.
Pro SEO je podstatná XML verze. HTML mapu můžete mít jako doplněk pro uživatele a vnitřní prolinkování, ale nenahrazuje XML sitemapu a naopak.
Tip od SEO specialisty
Jednou za čtvrtletí si sitemapu projděte jako auditor, ne jako majitel webu. Vezměte adresy ze sitemapy a proženěte je nástrojem, který zkontroluje stavový kód, značku noindex a canonical u každé z nich (Screaming Frog to zvládne v režimu list). Hledáte tři věci: adresy, které nevrací 200, adresy s noindex a adresy, jejichž canonical míří jinam. Cokoli z toho ze sitemapy patří pryč.
U dynamicky generovaných sitemap tuhle kontrolu podceňujte nejmíň, protože se spoléháte, že to plugin dělá správně. Realita je, že po každé větší úpravě webu nebo migraci se do sitemapy nastěhuje balast, o kterém nevíte. Pravidelná kontrola ho odhalí dřív, než ho odhalí Google.
Nechte si prověřit technické SEOČasto kladené otázky (FAQ)
loc a poctivě vyplněný lastmod. Zbytek jen zvětšuje soubor bez užitku.