XML sitemap validator
Check any XML sitemap against the official sitemaps.org protocol and Google's rules. Enter a URL, upload a file or paste the XML and get every error explained, with the fix.
Pasted and uploaded files are checked in your browser and never uploaded. URL checks fetch the file through our server and store nothing.
What gets checked
- XML well-formedness (syntax errors with line and column)
- Root element and the sitemaps.org namespace
- Required <loc> in every entry, absolute http(s) URLs under 2,048 characters
- Proper escaping of &, quotes and angle brackets in URLs
- The 50,000-URL and 50 MB uncompressed size limits
- <lastmod> dates in W3C format, with future dates flagged
- <changefreq> values and <priority> ranges
- Duplicate URLs and URLs on a different host than the sitemap
- Sitemap index files, with one-click validation of every child sitemap
Common sitemap errors and how to fix them
These are the failures we see most often, with the shortest path to green.
| Wrong or missing namespace | The <urlset> tag must declare xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" exactly. Copy it verbatim; a typo or an old 0.84 namespace makes parsers reject the whole file. |
| Unescaped ampersands in URLs | A raw & in a URL breaks XML parsing. Write & instead: /page?a=1&b=2. The same goes for < > " and '. |
| Relative or malformed URLs | Every <loc> must be a full absolute URL including the scheme, like https://example.com/page/. Relative paths such as /page/ are invalid. |
| Invalid lastmod dates | Use W3C datetime format: 2026-07-16 or 2026-07-16T09:30:00+00:00. Formats like 16/07/2026 or Unix timestamps are invalid, and dates in the future get ignored. |
| Over 50,000 URLs or 50 MB | Split the sitemap into several files and list them in a sitemap index. Most generators do this automatically once you pass the limit. |
| Sitemap returns an error or HTML | The sitemap URL must return HTTP 200 with XML content. A 404, a redirect chain to an error page, or an HTML error page dressed as sitemap.xml are all common. |
| URLs on the wrong host | URLs in a sitemap must live on the same host that serves the sitemap, including the same www or non-www form and the same scheme (https). |
| Blocked by robots.txt | If robots.txt disallows the URLs listed in your sitemap, crawlers receive contradictory signals. Align the two: the sitemap should list only pages you want crawled. |
From the blog
Schema Types That Actually Earn Rich Results in 2026
Nine types still earn a visual treatment. Two famous ones were retired. Here is the current list, from Google's own documentation.
Core Web VitalsCore Web Vitals in 2026: Thresholds and What Moved
The metrics did not change this year. Plenty of the tooling around them did. Here is what is actually true right now.
Meta descriptionsMeta Descriptions in the AI Answer Era: What Works
The description tag still has one job, and it is smaller than it used to be. Here is what to write, and what matters more.