Practical guideUpdated 2026-09-15

How to check a sitemap for errors

Check a sitemap in four passes: it fetches with a 200 and valid XML, it obeys the limits of 50,000 URLs and 50 MB uncompressed, every URL is absolute, canonical, indexable, and returns 200, and lastmod values are truthful. Then submit it in Search Console and Bing Webmaster Tools and read their reports, which flag parse errors and URLs the engines could not use.

Sitemaps fail quietly. The file validates, Search Console accepts it, and months later half its entries are redirects, noindexed pages, or URLs that no longer exist. This guide gives a four-pass method for checking a sitemap, explains the limits and format rules, lists the hygiene problems that matter most on programmatic sites, and decodes what Search Console and Bing report.

01

Pass one: can the sitemap be fetched and parsed

Request the sitemap URL and confirm a 200 status with an XML content type, no redirect chain, and no authentication. Parse it as XML: a single urlset root with url children, each containing loc and optionally lastmod, changefreq, and priority, all in the sitemaps.org namespace. For a sitemap index, a sitemapindex root with sitemap children each containing loc. Compressed sitemaps must be valid gzip. A byte-order mark, an unescaped ampersand in a URL, or a stray character before the XML declaration will all break parsing.

02

Pass two: limits and structure

Each sitemap file may contain at most 50,000 URLs and be at most 50 MB uncompressed. Larger sites use a sitemap index pointing at multiple files. URLs must be absolute, use the same scheme and host as the sitemap location, and be percent-encoded correctly. A sitemap can only include URLs on the host it is served from, or on hosts that reference it from their robots.txt.

Sitemap rules and limits
RuleLimit or requirementCommon violation
URLs per file50,000Single huge file on large sites
File size50 MB uncompressedBloated lastmod and priority on every entry
URL formAbsolute, same host, escapedRelative paths or raw & in query strings
Namespacehttp://www.sitemaps.org/schemas/sitemap/0.9Missing or misspelt namespace
Index depthIndex files point only to sitemaps, not to other indexesNested indexes
03

Pass three: URL hygiene

Fetch every URL in the sitemap, or a large sample on big sites, and check three things. Status must be 200; redirects and 404s should be removed or replaced with the final URL. The page's canonical must point to itself; a URL whose canonical points elsewhere is telling the engine to index a different page and should not be listed. The page must be indexable; a noindex tag or header contradicts the sitemap. Programmatic sites should also confirm that draft, preview, paused, and deleted pages never appear, which is why SerionFlow keeps only live pages in its generated sitemap and removes paused or deleted pages immediately.

  • Every listed URL returns 200.
  • Every listed URL is self-canonical.
  • No listed URL is noindexed.
  • No drafts, previews, or removed pages.
04

Pass four: lastmod accuracy

Google uses lastmod to decide what to recrawl, and it ignores lastmod on sites where the values are obviously untrue, such as every URL sharing today's date on every fetch. Set lastmod only when the page content actually changed, in W3C datetime format. changefreq and priority are ignored by Google and can be omitted to save bytes.

05

Reading the Search Console and Bing reports

After submitting, Search Console's sitemap report shows Success, Has errors, or Couldn't fetch, with the number of discovered URLs. Errors include parse failures, invalid URLs, and unsupported formats. "Discovered" is how many URLs were read, not how many were indexed; compare with the Pages report to see how many are actually indexed and why the rest are not. Bing Webmaster Tools shows a similar report and additionally lists individual URLs it could not process. Neither report checks canonical or noindex conflicts, which is why pass three is done by you.

06

A recurring check

Run the four passes monthly and after any deploy that changes routing or page status. A free sitemap checker handles the fetch, parse, and structure passes in one go; SerionFlow's free sitemap checker does this for any URL without an account. For URL hygiene at scale, a crawler pointed at the sitemap URLs is the practical tool.

Step by step

  1. 01

    Fetch and parse

    Request the sitemap, confirm 200 and an XML content type, and parse it against the sitemaps.org schema to catch encoding and structure errors.

  2. 02

    Check limits

    Confirm no file exceeds 50,000 URLs or 50 MB and that a sitemap index is used when needed.

  3. 03

    Test every URL

    Fetch listed URLs and remove any that redirect, return 404, carry a canonical to another page, or are noindexed.

  4. 04

    Verify lastmod

    Ensure lastmod reflects real content changes and drop changefreq and priority if they add nothing.

  5. 05

    Submit and read reports

    Submit in Search Console and Bing Webmaster Tools, then compare discovered versus indexed counts and resolve reported errors.

  6. 06

    Schedule

    Repeat monthly and after routing or status changes, using a free sitemap checker for the format passes and a crawler for URL hygiene.

Clear answers

Frequently asked questions

What are the most common sitemap errors?

+

Listed URLs that redirect or return 404, URLs whose canonical points elsewhere, noindexed pages in the sitemap, unescaped characters that break parsing, and lastmod values set to the current date on every fetch. Most validate as XML and only show up when you fetch the URLs themselves.

Does a sitemap error stop my site being indexed?

+

Rarely. Engines still discover pages through links. A broken sitemap mainly wastes crawl budget and delays discovery of new pages, which matters most for large or fast-growing programmatic sites. Fix it, but do not expect a sudden ranking change.

Why does Search Console say "discovered" but pages are not indexed?

+

Discovered counts URLs read from the sitemap. Indexing is a separate decision based on page quality, canonicals, and crawl priority. Check the Pages report for reasons such as "Crawled, currently not indexed", which usually points at thin content rather than at the sitemap.

Should I include lastmod, changefreq, and priority?

+

Include lastmod when it is accurate; Google uses it to prioritise recrawls and ignores it when values are clearly untrue. changefreq and priority are ignored by Google and can be omitted. Bing reads lastmod as well.

How does SerionFlow handle sitemaps?

+

SerionFlow maintains a generated XML sitemap containing only its live pages on your domain. Draft, review, paused, deleted, preview, error, and fallback pages are excluded, and pausing or deleting a page removes it immediately. You submit that sitemap in Search Console alongside your main one.

Continue exploring

Related SerionFlow resources

More in Guides

All guides

Make the next move obvious

Let SerionFlow turn your market evidence into momentum.

Confirm the market, rank the opportunities that matter, create brand matched pages on your domain, and keep moving with controlled weekly intelligence.

Choose how SerionFlow uses cookies.

Essential cookies keep the site secure and working. Product analytics helps us improve reliability. Optional cookies help us remember preferences and improve campaigns. You can change optional cookies anytime in Cookie Settings.