Sitemap Validator
Paste your sitemap XML to validate its structure and identify issues that may affect search engine indexing.
Updated July 11, 2026
100% Private & Secure
This tool runs in your browser.
Your data is never uploaded or stored.
Click "Validate" to check your sitemap...
How to use
- 1
Paste your sitemap XML.
- 2
Click Validate to check the structure.
- 3
Review any errors or warnings.
When to use it
Catching errors before submitting to Search Console
A typo in a <loc> tag or a missing closing element causes Google Search Console to reject the whole file. Validating locally first surfaces XML well-formedness errors and protocol violations before they cost you indexing time.
Splitting sitemaps past the 50,000-URL ceiling
Once a single sitemap exceeds 50,000 URLs or 50 MB, it must be split into child files referenced by a sitemap index. The validator flags oversized files and confirms index files reference valid child sitemaps.
Verifying lastmod accuracy on a large crawl
Google uses lastmod as a crawl-scheduling hint — the only optional tag it genuinely respects. Stale or fabricated lastmod values erode trust in your sitemap and degrade crawl efficiency over time.
Auditing a sitemap-index file referencing child sitemaps
Sitemap index files list up to 50,000 child sitemaps. The validator walks the index, checks each child exists, and reports broken references or unreachable URLs so you fix them before crawlers hit 404s.
How it works
The sitemap.xml structure
A sitemap is an XML document rooted in a <urlset> element, with one <url> child per page. Inside each <url>, only <loc> is required — the full canonical URL of the page. Three optional tags (<lastmod>, <changefreq>, <priority>) carry metadata, though Google largely ignores the latter two.
URLs must be absolute, must include the protocol (http or https), and must be escaped per XML rules — ampersands become &, and non-ASCII characters should be percent-encoded.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/about</loc>
<lastmod>2026-07-11</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
</urlset> Sitemap versus sitemap index
For sites beyond a few thousand URLs, you split into multiple sitemaps and reference them from a sitemap index. The index uses a <sitemapindex> root and one <sitemap> child per file, each containing a <loc> (and optional <lastmod>).
This is the standard pattern for e-commerce and news sites: one sitemap per product category, per locale, or per content type, all enumerated by a single index you submit to Google.
- Per-file hard limit: 50,000 URLs OR 50 MB (52,428,800 bytes) uncompressed, whichever is hit first
- Index files may reference up to 50,000 child sitemaps — a theoretical ceiling of 2.5 billion URLs
- Gzip compression is allowed for transfer, but the uncompressed size must still be under 50 MB
Why lastmod matters and changefreq/priority do not
Google has been explicit: lastmod is the only optional tag it consistently uses, treating it as a hint to schedule re-crawls. changefreq and priority were useful in 2005 but are now largely ignored by Google — they remain in the sitemaps.org protocol for backward compatibility and for other crawlers.
The practical implication: invest effort in accurate lastmod values (ideally the genuine last-modified timestamp from your CMS or file system), and stop agonizing over priority decimals. A fabricated lastmod is worse than none — Google stops trusting the field if it is consistently wrong.
Common mistakes & edge cases
Search Console reports "Parsing error" or "Invalid URL"
Usually an XML well-formedness issue — an unescaped ampersand in a query string (& should be &) or a relative URL in <loc>. Every <loc> must be absolute and fully escaped.
Sitemap rejected because it exceeds 50 MB or 50,000 URLs
Split into multiple files under both limits and reference them from a sitemap index file. Gzip the files for transfer, but keep the uncompressed size under 50 MB.
URLs in the sitemap return 404 or redirect
Every URL in a sitemap must return a 200 at the exact canonical location. Redirect chains and 404s waste crawl budget and signal poor quality — remove or fix them before submitting.
Google appears to ignore <changefreq> and <priority>
That is expected. Google publicly states it largely ignores both tags. Focus on accurate <lastmod> values, which it does use as a crawl-scheduling hint.
Frequently Asked Questions
What sitemap formats are supported?
References & further reading
Related reading
Sitemap strategy: what to include and what to leave out
A sitemap is a hint, not a dump. Which URLs belong in it, which actively hurt, and how to keep lastmod honest.
Robots.txt vs noindex: The Right Way to Hide a Page From Google
robots.txt blocks crawling but not indexing; noindex drops a page from the index entirely. Mixing them is the most common SEO mistake on the web.
Reading a Sitemap: What lastmod, changefreq and priority Actually Do
A practical guide to sitemap.xml: the urlset structure, the 50,000-URL and 50MB limits, sitemap-index files, and which optional tags Google actually uses.