Free tool
XML Sitemap Checker & Finder
Enter a website. We find every sitemap it exposes, validate each against Google’s rules, and live-test the URLs for 404s, redirects, noindex and canonical tags pointing somewhere else. The problems a structure-only validator never sees. No signup.
Enter a bare domain and we'll find every sitemap in robots.txt and the common locations, then validate it and live-check the URLs for 404s, redirects, noindex and canonical tags. No signup, no credit card.
A 200 status does not mean a page can be indexed
Most free sitemap checkers do one of two things: validate the XML structure, or fetch each URL and report its HTTP status. Both will tell you a page is fine when it cannot be indexed at all.
A page carrying <meta name="robots" content="noindex"> returns a clean 200. A page whose rel=canonical points at a different URL also returns a clean 200. In both cases Google will decline to index the URL you listed, and a status-only check reports it as healthy. Those directives live inside the HTML, so the only way to catch them is to read the page.
This checker reads them. It is the difference between knowing your sitemap is readable and knowing the pages in it are actually indexable.
What this sitemap checker does
Five checks, in the order that matters, with the exact limits stated so you know what the result covers.
1. Finds every sitemap
Enter a bare domain. We read robots.txt and probe seven common paths (/sitemap.xml, /sitemap_index.xml and others) in parallel, then list every sitemap we confirm. Tools that stop at the first hit hide the rest. We also flag sitemaps robots.txt declares that fail to load.
2. Validates the structure
Well-formed XML, the sitemaps.org namespace, absolute URLs, valid lastmod dates, and Google’s 50,000-URL and 50 MB limits. Duplicates, relative paths and cross-host URLs are counted. A sitemap index is expanded so its children are validated too.
3. Live-checks the URLs
Fetches the first 25 URLs the sitemap lists and reports each one: 200, redirect, 404, 5xx, or blocked by robots.txt. Twenty-five is the cap that fits inside the request budget, and the result tells you which 25 they were.
4. Reads the noindex
Both kinds. An X-Robots-Tag noindex in the response header, and a meta name="robots" noindex inside the page. The result names which one fired, because they are fixed in different places.
5. Catches the wrong canonical
Flags any sitemap URL that returns 200 but declares a rel=canonical pointing at a different page, and shows you the URL it points to. You are asking Google to crawl a page you have already told it to fold into another one, so the URL in your sitemap is not the URL that gets indexed. Almost every free checker skips this, because finding it means reading each page rather than its status line.
What makes an XML sitemap valid
A sitemap has to satisfy the sitemaps.org protocol and Google’s own limits. These are the rules the checker enforces.
Well-formed XML
The file must parse. The most common break is an unescaped & in a URL, which must be written as &.
sitemaps.org namespace
The root element declares xmlns="http://www.sitemaps.org/schemas/sitemap/0.9". Google is lenient, but strict validators reject a sitemap without it.
Absolute URLs only
Every <loc> must be a full URL starting with https://. Relative paths are ignored by Google.
50,000 URLs and 50 MB per file
A single sitemap tops out at 50,000 URLs and 50 MB uncompressed. Beyond that, split into multiple files and use a sitemap index.
Valid lastmod dates
Dates use W3C format (YYYY-MM-DD or full ISO 8601). An invalid lastmod is ignored, so it stops helping Google schedule recrawls.
One host per sitemap
URLs should be on the same domain as the sitemap, unless the sitemap is declared in each host's robots.txt.
Common sitemap errors and how to fix them
The last column says what each error takes to find. Five of the eight are invisible to a structure-only validator, and two of those five are invisible to a status-only check as well.
| Error | Why it matters | Fix | Needs |
|---|---|---|---|
| URLs return 404 or 5xx | Dead URLs waste crawl budget and erode Google’s trust in the whole file. | Remove them, or fix the pages. | A live fetch |
| URLs redirect | A sitemap should list the final URL. A redirect adds a hop and muddies the canonical signal. | Replace the redirecting URL with its destination. | A live fetch |
| Blocked by robots.txt | You are asking Google to crawl a URL you have told it not to fetch. | Keep it out of the sitemap, or remove the Disallow. | robots.txt |
| Meta robots noindex | The page returns 200 and looks healthy, but Google will not index it. The most commonly missed sitemap error. | Remove the noindex, or drop the URL from the sitemap. | Reading the HTML |
| Canonical points elsewhere | Google indexes the canonical instead, so the URL you listed is not the one that ranks. | List the canonical URL in the sitemap instead. | Reading the HTML |
| Unescaped ampersand | A raw & makes the XML malformed, so Google fails to read the sitemap at all. | Write every & as & in the URL. | Structure only |
| Over 50,000 URLs or 50 MB | Google rejects sitemaps past either limit. | Split into multiple sitemaps behind a sitemap index. | Structure only |
| Invalid lastmod date | A non-W3C date is ignored, so it no longer helps recrawl timing. | Use real dates in YYYY-MM-DD or full ISO 8601. | Structure only |
A valid sitemap is not an indexed sitemap
Passing validation only means Google can read your sitemap. It says nothing about whether the URLs in it are in the index. A page can sit in a perfectly valid sitemap for months, crawled and quietly dropped, while the green checkmark says everything is fine.
We measured that gap on our own site. Search Console reports our sitemap as valid with zero errors, and when we inspected all 79 URLs in it, seven were not in Google’s index. Six had never been crawled at all.
The checker above tells you the truth about this moment. It cannot tell you when a URL you fixed today silently falls back out next month.
Monitor the URLs, not just the file
SearchOptimo takes the URLs from your sitemap, checks which ones Google has actually indexed, keeps a history per URL, and alerts you the day one drops out. You find out when it happens, not when you next remember to look.
Frequently asked questions
- How do I find a website's sitemap?
- Enter the bare domain in the tool above. It reads the site's robots.txt and probes the seven common sitemap paths in parallel, then lists every sitemap it confirms, not just the first one it hits. That matters because most sites have more than one: a WordPress install with Yoast typically serves /sitemap_index.xml while /sitemap.xml also resolves. By hand, you would check robots.txt for a Sitemap: line, then try /sitemap.xml and /sitemap_index.xml yourself.
- How do I check my XML sitemap?
- Paste your domain or sitemap URL above. The checker confirms the XML is well-formed, validates it against the sitemaps.org protocol and Google's 50,000-URL and 50 MB limits, and then live-fetches the first 25 URLs it lists to report their HTTP status, robots.txt blocks, noindex directives and canonical tags. Most free checkers stop after the structure check, which tells you the file is readable but nothing about whether the pages in it can actually be indexed.
- How do I check a sitemap manually?
- Open the sitemap URL in a browser and read the XML directly. Confirm the root element is <urlset> or <sitemapindex> with the sitemaps.org namespace, that every <loc> is a full absolute URL, and that <lastmod> dates use YYYY-MM-DD. Then spot-check the URLs: open a few, and use View Source to look for <meta name="robots" content="noindex"> and the <link rel="canonical"> href in the head. That last step is the one people skip, and it is where the real problems hide. The tool above automates exactly this sequence.
- What is an XML sitemap?
- An XML sitemap is a file listing the URLs on your site that you want search engines to crawl, along with optional metadata such as when each page was last modified. It is a discovery aid: it helps Google find pages that are poorly linked internally, or that are new. It is not a ranking factor and it does not force indexing. Google treats a sitemap as a hint about what exists, then makes its own decision about what to crawl and index.
- Is sitemap.xml still relevant?
- Yes, though its role is narrower than people assume. On a small, well-linked site Google will usually find everything through internal links, and the sitemap adds little. It earns its place on large sites, on new sites with few backlinks, on pages that are deep in the structure or poorly linked, and for surfacing accurate lastmod dates so Google can prioritise recrawls. What a sitemap has never done is guarantee indexing, which is why validating the file is only half the job.
- What are the most common sitemap errors?
- The ones that actually hurt indexing are: listing URLs that return 404 or 5xx, listing URLs that redirect instead of their final destination, listing URLs blocked in robots.txt or carrying a noindex, listing URLs whose canonical tag points at a different page, using relative instead of absolute URLs, unescaped ampersands that break the XML, invalid lastmod dates, and exceeding the 50,000-URL limit. The checker above flags each of these, and catches the noindex and canonical problems by reading each page, not just its status code.
- Is there a limit to how many URLs a sitemap can have?
- Yes. A single sitemap file can contain at most 50,000 URLs and must be no larger than 50 MB uncompressed. If you have more URLs than that, split them across multiple sitemap files and list those files in a sitemap index. The checker warns you when a file is over either limit, and expands a sitemap index to validate its child sitemaps.
- Why are the pages in my sitemap not getting indexed?
- A sitemap is a request to crawl, not a guarantee of indexing. The common reasons sitemap URLs stay unindexed are that the URLs error or redirect, are blocked by robots.txt, carry a noindex, are treated as duplicates of a canonical elsewhere, or are judged thin or low value. This tool catches the first four by live-checking the URLs. To see which sitemap URLs Google has actually indexed, and get alerted when one drops out, use SearchOptimo's index monitoring.
Related free tools: robots.txt checker, noindex checker, canonical tag checker and the bulk index checker.
Validate it once. Then watch it get indexed.
A checker confirms today’s sitemap is clean. Monitoring confirms the URLs actually reach Google, and warns you when one leaves. Free forever plan, no credit card.