Online Tool Store Online Tool Store
🗺️ SEO & Web

· 4 min read

How to Split an Oversized Sitemap

Heshan Fernando

Co-founder & COO

Heshan Fernando is the Co-founder and Chief Operating Officer of Ceyentra Technologies, where he leads project management, engineering, and research and development strategy. With over nine years of industry experience, he is passionate about transforming complex customer challenges into practical, high-impact solutions. His customer-centric leadership has enabled multidisciplinary teams to consistently deliver secure, scalable, and industry-grade digital products that create lasting business value. View on LinkedIn

Share

How to Split an Oversized Sitemap

The sitemap has 128,400 URLs in one file. Search console reports far fewer discovered, and nobody can work out why.

The limit is 50,000 URLs per file. Everything past that is not being read, and nothing produces an error message saying so.

The limits, and what happens past them

The sitemaps protocol specifies two:

50,000 URLs per sitemap file.

50 MB uncompressed per file, whichever comes first.

Exceed either and the file may be rejected entirely or truncated at the limit. Truncation is the worse outcome because it looks like success — the sitemap is accepted, some URLs are discovered, and the ones past the cut-off are silently absent.

Gzip compression is supported and reduces transfer size. It does not raise the limits, which apply to the uncompressed content.

A sitemap index is the answer

An index is a file listing sitemap files rather than URLs. You submit the index, and search engines fetch each sitemap it references.

The index itself is limited to 50,000 sitemaps, which combined with 50,000 URLs each gives an effective ceiling of 2.5 billion URLs. Nobody reaches that.

Practically:

  1. Split URLs across multiple sitemap files, each under both limits
  2. Create an index listing all of them
  3. Submit the index, not the individual files
  4. Reference the index from robots.txt

Referencing the index from robots.txt is worth doing regardless of submission, because it means any crawler that reads robots.txt finds it.

FileContainsLimit
SitemapURLs50,000 / 50 MB
Sitemap indexSitemap files50,000
robots.txt entryIndex locationPoints to the index

Split by section, not arbitrarily

The splitting rule that matters, and it costs nothing to get right.

Splitting arbitrarily — the first 50,000 URLs, then the next — produces files with no meaning. When a coverage report shows that one sitemap has poor indexing, it tells you nothing, because that file is an arbitrary slice of the site.

Splitting by section — products, articles, categories, one per file — makes the report diagnostic. Poor indexing in the products sitemap and good indexing in the articles sitemap is a finding you can act on.

The same applies to sizing. Keeping sections in separate files even when they would fit together preserves that diagnostic value.

Lastmod is worth getting right

A sitemap can include a last-modified date per URL, and it is the field most often either omitted or wrong.

An accurate lastmod helps search engines prioritise recrawling of genuinely changed pages. A lastmod set to the build date for every URL — which many generators do by default — tells them everything changed, which means nothing changed.

Search engines treat lastmod as a hint and reportedly discount it from sites where it is unreliable. Setting it accurately or not at all is better than setting it wrongly.

Keep the sitemap honest

What you leave out matters as much as what you include.

A sitemap should list canonical, indexable URLs that return 200. Including anything else wastes crawl budget and reduces how much the sitemap is trusted:

Redirected URLs send crawlers on an extra hop to reach a page that should have been listed directly.

Noindexed pages send a contradictory signal — the sitemap says crawl this, the page says do not index it.

Non-canonical variants compete with the version you want indexed.

404s, which usually mean the sitemap is generated from a stale source.

A smaller sitemap of clean URLs outperforms a larger one padded with everything the CMS knows about.

Common mistakes to avoid

  • One oversized file, silently truncated.
  • Submitting individual sitemaps rather than the index.
  • Splitting arbitrarily, which makes coverage reports uninterpretable.
  • Setting lastmod to the build date for every URL.
  • Including non-canonical, redirected or noindexed URLs, which wastes crawl budget and reduces trust in the sitemap.

How to do it with Sitemap XML Splitter

The Sitemap XML Splitter splits and generates the index.

  1. Paste the oversized sitemap or a URL list.
  2. Split below both limits, by section where possible.
  3. Generate the index file.
  4. Submit the index and reference it from robots.txt.

The sitemaps protocol defines the limits and the index format. Other SEO tools are in the tools directory.

Frequently asked questions

What are the sitemap limits?

50,000 URLs and 50 MB uncompressed per file. Exceeding either means the file may be rejected or truncated, and truncation is silent.

What is a sitemap index?

A file listing your sitemap files rather than URLs. You submit the index and search engines fetch the sitemaps it references, which is how large sites stay within the limits.

How should a large site split its sitemaps?

By section — products, articles, categories — rather than arbitrarily. Section-based files make coverage reports diagnostic, which an arbitrary slice never is.

Final thought

Split by section even when you do not have to. The coverage report is the only feedback you get about indexing, and arbitrary files make it unreadable.

Try the free Sitemap XML Splitter

#sitemap-splitting#sitemap-index#large-site-seo#xml-sitemap#online-tools#free-tools