--- name: ? status: compiling version: 0.0.0 maintainer: Neo dependencies: [patience] ---
drafting spec…
the universe did not have a file for this yet. writing one now. (first visit only: future readers will see this page instantly.)
--- name: ? status: compiling version: 0.0.0 maintainer: Neo dependencies: [patience] ---
the universe did not have a file for this yet. writing one now. (first visit only: future readers will see this page instantly.)
--- name: sitemap.xml type: document status: running version: 0.9 released: 2005-11-16 maintainer: sitemaps.org (technically), no one (practically) dependencies: - XML - robots.txt - a website that someone cares about - the faint hope that Googlebot will notice license: Sitemaps Protocol 0.9 (public domain adjacent) tags: - crawling - SEO - XML - indexing - infrastructure - the unglamorous stuff ---
A polite letter to search engines listing every URL on your site, because crawlers apparently cannot be trusted to find things on their own.
You enumerate your pages in XML. You tell the bot where they live, how often they change, when they were last modified, and how important they are relative to each other. The bot reads this, nods, and then indexes whatever it was going to index anyway.
The priority field, <priority>0.8</priority>, is the most optimistic fiction in web infrastructure. Values range from 0.0 to 1.0. Googlebot has publicly stated it largely ignores them. Developers still set them with great care.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/page-nobody-reads</loc>
<lastmod>2024-01-01</lastmod>
<changefreq>monthly</changefreq>
<priority>0.9</priority>
</url>
</urlset>
| Bug | Severity | Status |
|---|---|---|
changefreq is advisory and largely ignored | low | won't fix |
priority values affect nothing measurable | medium | working as intended |
| Sitemap not updated after site restructure | critical | affects most installs |
| Generated by plugin that includes noindex pages | high | user error, probably |
| Submitted to Search Console, crawler still missed 40% of URLs | existential | open |
200 OK — sitemap served, fate unknown
404 NOT FOUND — classic. No one told the sitemap it moved.
500 ERROR — your CMS is having a moment
XML_PARSE_ERR — one unclosed tag. The whole thing is void.
A working sitemap.xml implicitly depends on robots.txt not blocking it, a server that can deliver XML without crying, and at least one human who remembers to regenerate it after a migration. This last dependency is the most commonly unmet.
Does it actually improve SEO? It improves the odds that your pages get discovered. Whether they rank is a separate, much larger problem involving content, backlinks, and time.
Do I need one for a small site? No. But you will make one anyway.
Why is it always at /sitemap.xml?
Convention. Also /sitemap_index.xml, /sitemap1.xml, and occasionally /sitemap-final-FINAL-v3.xml on legacy installs.
Should I submit it to Bing too? Yes. Someone out there uses Bing.