Sitemap Checker

Find and validate a site's XML sitemap — total URL count plus a sample crawl for broken (4xx/5xx) links.

We look for /sitemap.xml (and the sitemap index), then sample a few URLs for broken links.

Result

No result yet

Enter the inputs above and press Run. Results appear here in a moment.

Monitor this 24/7 — get alerts on the first failure.

Start free

Only run these tools against systems you own or are authorized to test. Using them to scan or probe systems without permission violates our Terms.

What is Sitemap Checker?

An XML sitemap is the list you hand to search engines: "here is every URL on my site worth crawling, and when each last changed." Get it right and Google discovers new pages in hours. Get it wrong — missing file, stale URLs, links that 404 — and you quietly lose crawl coverage, with no error anywhere except a slow decline in indexed pages weeks later.

This tool fetches a domain's sitemap (it looks for /sitemap.xml and follows a sitemap index to its child sitemaps), counts the URLs it declares, and then samples a few of them to check whether they actually load — so you catch the dead links a crawler would hit before the crawler does.

How it works

Each check runs the same path a search-engine crawler takes:

  1. 1Locate the sitemapNormalise the target to https:// and fetch /sitemap.xml. If the response is a <sitemapindex> (a sitemap of sitemaps), follow it to the child sitemaps rather than stopping at the index.
  2. 2Parse and countRead the <urlset> and tally every <loc> entry — the total number of URLs the site is asking search engines to crawl.
  3. 3Sample for broken linksRequest a handful of the listed URLs and record any that return 4xx or 5xx. A full site might list tens of thousands of URLs; the sample is a fast health signal, not an exhaustive crawl.

The result tells you three things at a glance: does a sitemap exist, how many URLs it claims, and whether the sampled URLs are alive. A sitemap that lists 8,000 URLs but whose sample is full of 404s is worse than no sitemap at all — it's actively telling Google to waste crawl budget on dead pages.

When you'd use it

Post-launch / post-migration

You just relaunched on a new platform. Confirm the sitemap exists at the expected path, lists the new URLs (not the old CMS's ?id= URLs), and that the sampled pages return 200 — before you submit it in Search Console and wonder why nothing indexes.

SEO health audit

Indexed-page count is drifting down. Check whether the sitemap still resolves, whether the URL count matches roughly what you expect, and whether sampled links are alive. A broken or shrinking sitemap is a frequent, invisible cause.

Catch the broken links crawlers see

Internal link checkers crawl from your homepage; search engines crawl from your sitemap. The two sets diverge. Sampling sitemap URLs surfaces dead pages that on-site crawlers miss because nothing links to them anymore.

Verify a sitemap index

Big sites split into a sitemap index pointing at many child sitemaps. Confirm the index is valid XML and that the children are reachable — a typo'd child URL silently drops a whole section of the site from discovery.

Pre-flight before submitting to Search Console

Google rejects sitemaps for subtle reasons (wrong content type, unescaped ampersands, URLs on a different host). A quick check that it parses and the URLs respond saves a frustrating round-trip through the Search Console error log.

Reading the result

Sitemap found (yes / no)

Yes means a valid <urlset> or <sitemapindex> was located and parsed. No means nothing parseable was at /sitemap.xml — the file may live elsewhere (declared only in robots.txt), be returned with the wrong content type, or simply not exist.

URL count

How many <loc> entries the sitemap declares. Compare it to the number of pages you think you have: far too few means pages are missing from discovery; far too many can mean stale or thin URLs are being advertised.

Sampled & broken

How many URLs we test-fetched and how many of those failed (4xx/5xx). Any broken count above zero is worth investigating — the listed URLs are the ones you're explicitly asking Google to crawl, so dead ones waste crawl budget and signal a low-quality sitemap.

Broken links list

When the detailed view is available, each failing URL is shown with its status code so you can fix or remove it from the sitemap directly.

Common pitfalls

The sitemap isn't at /sitemap.xml

Search engines also accept a Sitemap: directive in robots.txt pointing anywhere. If this tool reports not found but Google indexes you fine, your sitemap is probably declared in robots.txt at a non-standard path — check there.

Sitemap index vs. urlset

A <sitemapindex> contains no page URLs itself — only links to other sitemaps. If your top-level file is an index, the page URLs live one level down in the child sitemaps it references.

The sample is not a full crawl

We test a small sample of the listed URLs for speed. A clean sample doesn't guarantee every URL is alive — it's a fast confidence signal, not a guarantee. For an exhaustive crawl, use a dedicated crawler.

Stale sitemaps outlive the pages

Sitemaps are often generated once and forgotten. The most common failure isn't a missing file — it's a present file full of URLs for pages that were deleted or restructured months ago.

Size limits

A single sitemap is capped at 50,000 URLs / 50 MB uncompressed. Past that you must split into multiple sitemaps behind an index — a single giant sitemap will be partially ignored.

Run Sitemap Checker on every change, not just once.

Get alerts the moment something breaks — across HTTP, DNS, SSL, RDAP, ping, blacklist and more. Free forever for 10 monitors. No card.

Start free

Frequently asked questions

Where does it look for the sitemap?
It normalises the domain to https:// and fetches /sitemap.xml. If that returns a sitemap index (a list of other sitemaps), it follows the index to the child sitemaps. If your sitemap lives at a non-standard path declared only in robots.txt, point the tool at that URL directly.
Does it crawl every URL in the sitemap?
No — it counts every declared URL but only test-fetches a small sample to check for broken (4xx/5xx) links. That keeps the check fast even for sitemaps with tens of thousands of URLs. Use a dedicated crawler when you need every URL verified.
Does it support sitemap index files?
Yes. If the top-level file is a <sitemapindex>, it's recognised as an index rather than counted as zero URLs, and the child sitemaps it references are followed.
What counts as a broken URL?
Any sampled URL that returns a 4xx (e.g. 404 Not Found, 403 Forbidden) or 5xx (server error) status. Redirects (3xx) to a working page are not counted as broken, though a sitemap full of redirects is a separate hygiene issue worth cleaning up.
Why does it say no sitemap when I have one?
Usually one of: the file isn't at /sitemap.xml (it's declared in robots.txt elsewhere), it's served with the wrong content type, it's gzipped in a way the fetch didn't unwrap, or it's behind authentication. Verify the URL loads as XML in a browser first.
How many URLs can a sitemap contain?
50,000 per file, 50 MB uncompressed. Larger sites use a sitemap index that points to multiple child sitemaps, each under those limits.

Related web tools