What an XML Sitemap Does
A sitemap is an XML file that lists every URL on your site along with metadata that helps search engines crawl and prioritise them. It is not required for indexing — Google can find pages by following links — but it dramatically improves discovery for large sites, deep hierarchies, and freshly published content.
Schema Reference
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/page</loc>
<lastmod>2026-10-20</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
</urlset>
The Fields, Honestly
<loc>— the only required element. Must be an absolute HTTPS URL. Never include URLs that redirect, 404 or are canonicalised elsewhere.<lastmod>— the date the page content last changed. Google uses this heavily. Don't fake it — if you set lastmod to today on every deploy, Google will ignore the field entirely.<changefreq>— ignored by Google, honoured loosely by Bing. Harmless to include.<priority>— ignored by Google. Some other engines still use it. Safe to omit.
Limits and Files
- Maximum 50,000 URLs per sitemap file
- Maximum 50 MB uncompressed per file
- For larger sites, split into multiple sitemap files and reference them in a sitemap index file
Best Practices
- Only include URLs that return 200 OK and are indexable.
- Never include URLs that are
noindexor canonicalise to another URL — sitemaps should only contain canonical URLs. - Keep lastmod accurate. Set it from your CMS's real modified date, not from the deploy timestamp.
- Submit the sitemap URL in Google Search Console → Sitemaps.
- Reference the sitemap in robots.txt:
Sitemap: https://example.com/sitemap.xml
What Will Break Your Sitemap
Pasting URLs from a spreadsheet that includes trailing whitespace. Including http:// URLs on an HTTPS-only site. Including URLs with # fragments (sitemaps do not support fragments). Including URLs that 301 to somewhere else. All of these are flagged by this tool.