Sitemap.xml Validator

Paste your sitemap.xml to validate it against the sitemaps.org protocol — checks the urlset namespace, required loc elements, lastmod/priority formatting, and Google's 50,000 URL limit.

What this sitemap.xml checker does

A sitemap.xml tells search engines which pages exist, but when the format is slightly off they simply skip it in silence and tell you nothing. A sitemap that was "submitted but never picked up" can turn out to have one wrong character in its namespace, or a lastmod in the wrong date format. Paste the contents here and this tool checks the file against the sitemaps.org protocol and lists everything it finds.

It checks whether the document is well-formed XML, whether a `` element is present, whether xmlns is exactly `http://www.sitemaps.org/schemas/sitemap/0.9`, whether every `` carries exactly one ``, whether `` follows W3C Datetime, whether `` is one of the seven permitted values, whether `` sits between 0.0 and 1.0, whether the file stays under 50,000 URLs, and whether it stays under 50 MB uncompressed. Findings are separated into errors (protocol violations) and warnings (valid but inadvisable). You can also fetch a live URL, though validation of pasted content runs entirely in your browser.

How to validate a sitemap

  1. Paste the contents or enter a URL Paste the sitemap.xml as it stands. For a sitemap that is already published, you can enter its URL and fetch it instead.
  2. Try a sample first A valid sample, one containing errors and one containing warnings are provided, so you can see what the findings look like before feeding in your own file.
  3. Fix the errors before the warnings Items marked as errors break the protocol and may stop a search engine reading the file correctly. Deal with those first.
  4. Check the URL count and file size The totals appear above the findings. If either is approaching its ceiling, it is worth preparing to split the file with a sitemap index.

Tips for getting more out of it

  • Keeping <lastmod> accurate helps crawlers prioritize re-fetching pages that actually changed. Stale or future-dated timestamps can hurt crawler trust rather than help.
  • <priority> is only a hint about relative importance between pages on your own site — Google has stated it does not use it for ranking. Treat it as supplementary, not a growth lever.
  • A single sitemap.xml can hold at most 50,000 URLs and must not exceed 50MB uncompressed. If you exceed either limit, split it into multiple files linked from a <sitemapindex>.
  • Adding one Sitemap: directive to your robots.txt lets search engines auto-discover your sitemap.xml. Pair it with our robots.txt checker for a quick end-to-end review.
  • If <loc> URLs contain non-ASCII characters (e.g. Japanese paths), they must be percent-encoded first. Pasting the address bar's decoded display URL as-is will be flagged as invalid.

When this check helps

When Search Console reports a fetch failure

It separates a server-side problem from a formatting problem, and when formatting is the cause it points to the element and position.

When you generate the sitemap yourself

Output produced by a template or a script is exactly where date formats and unescaped characters tend to creep in. Running it before deploying catches those.

When deciding whether a large site needs splitting

You can see in numbers how much headroom remains against the 50,000 URL and 50 MB uncompressed limits.

When taking over an existing site

A single pass tells you whether the sitemap you inherited still matches the current protocol.

Sitemap terms explained

urlset
The top-level element wrapping the whole sitemap. Without the correct namespace on it, the file is not recognised as a sitemap at all.
Namespace (xmlns)
The identifier saying which specification the XML follows. For sitemaps the correct value is `http://www.sitemaps.org/schemas/sitemap/0.9`, and **a different trailing version or a different scheme (http versus https) counts as a mismatch.**
loc
The page URL. Exactly one is required inside each ``, written as an absolute URL.
lastmod
The date the page last changed, written in W3C Datetime format (`2026-09-20`, or `2026-09-20T10:00:00+09:00`, for example).
changefreq
A hint about how often the page changes. Only seven values are valid: always, hourly, daily, weekly, monthly, yearly and never. **It is a hint, not a promise that crawling will follow that rhythm.**
priority
A value from 0.0 to 1.0 expressing relative importance within your own site. It is never used to compare one site against another.
Sitemap index
A higher-level file that groups several sitemaps. Use one to split content that exceeds the per-file limits of 50,000 URLs and 50 MB uncompressed.

FAQ

The convention is to place it at your domain root (e.g. https://example.com/sitemap.xml). If you place it in a subdirectory, it can only list URLs under that subdirectory, which is a real limitation to keep in mind.

It is not required, but manually submitting it via Google Search Console can speed up indexing. Alternatively, adding a Sitemap: directive to robots.txt lets crawlers discover it automatically without any manual submission.

Google has publicly stated since 2020 that it effectively ignores both values for ranking purposes. That said, other search engines and crawlers may still consider them, so including accurate values is not wasted effort.

No — you can add extension namespace tags like image:image or video:video inside the same standard urlset alongside your regular page entries. This tool does not validate those extension tags, but doing so does not affect the validation of standard fields (loc, lastmod, etc.).
Tool-kun

Side Note — The Day Search Engines Agreed on One Sitemap Format

Google introduced its own sitemap mechanism in June 2005. Just over a year later, in November 2006, Yahoo! and Microsoft (then MSN Search) announced support for the same format, and together they standardized it as sitemaps.org — a rare case of directly competing search engines agreeing on one shared format.

A sitemap.xml is a map telling crawlers "this URL exists" — it does not guarantee the page will actually be crawled or indexed. For large sites, crawl budget (the finite resources a search engine allocates to crawling one site) becomes a real constraint: stuffing the sitemap with low-value URLs can delay discovery of the pages that actually matter.

The 50,000-URL and 50MB limits exist mainly to keep server-side parsing of a single XML file manageable. Sites with huge URL counts, like large e-commerce catalogs, typically split their sitemap into multiple files and tie them together with a sitemap index file — a separate format whose root element is <sitemapindex> instead of <urlset>.