A sitemap is the one file a site writes for crawlers and never reads itself. The generator runs at
build time, the file lands at /sitemap.xml, and nobody opens it again. Then a page moves, the
host changes from www to the bare domain, or the build starts stamping every URL with the same
date, and the crawler quietly trusts the file a little less each week.
IndieSitemap opens it. Enter a domain, or the address of a sitemap. The tool reads robots.txt
for a Sitemap line, falls back to /sitemap.xml, reads the file, and reads up to three child
sitemaps when the file is an index. Then it grades six things: whether the sitemap was found and
how, whether it is well formed, how many URLs it lists, whether every URL sits on the host the
sitemap is served from, whether lastmod is present, well formed, and varied, and whether ten
pages spread across the list answer 200 without a redirect. Each row says what it found, what the
rule is for, and the fix.
Two choices make the answer more honest than a validator badge. The tool never runs an XML parser. A sitemap carries no DOCTYPE and needs no entity, so IndieSitemap reads the entries with a plain scan that expands nothing, and reports a DOCTYPE as a finding. And it reads at most one megabyte of each file. When a file is larger, the answer says it counted the URLs in the part it read, and never claims a total it did not see.
The rules come from the sitemaps.org protocol and Google’s sitemap documentation, and every row
links the page it rests on with the day it was read. The ten sampled pages are requested once each
from Cloudflare’s network with a plain user agent and redirects disabled. IndieSitemap does not
crawl the site, does not know what any search engine has indexed, and cannot tell whether a
lastmod date is true. It can tell when every URL carries the same date, which is usually the
build time, and it says so.
The first thing IndieSitemap checked was its own family. Every sister site had a sitemap named in
robots.txt and served at the conventional path, well formed, on the right host, and every sampled
page answered 200. Not one URL carried a lastmod. That is the kind of gap this tool exists to
find, and the fix is one change to the shared template.
The core stays free. There is no account, no card, no premium plan, and no public list of checked sites. IndieSitemap stores no lookup history and loads no analytics or third-party script.