Tutorial · technical-seo · Published 2026-08-16 · 3 min read
Sitemap index files and splitting large sitemaps
Split large sitemaps at the 50,000 URL or 50 MB limit and reference them with a sitemap index file, also capped at 50,000 entries and 50 MB.
When a sitemap needs splitting
A single sitemap is limited to 50,000 URLs and 50 MB uncompressed. Both limits come from the sitemaps protocol and apply equally to XML sitemaps and to plain text sitemaps (one URL per line). If your site exceeds either figure, you must break the list into multiple files instead of emitting one giant sitemap. A 51,000 page site is well past the URL cap even though its file size is tiny, just as an image-heavy file can exceed 50 MB at well under 50,000 URLs. The XML sitemap guide covers the single-file format; this article covers when and how to split it.
Large sites should also split along meaningful lines even before hitting the cap, because Search Console tracks each submitted sitemap separately, which makes "sitemap report" debugging much easier. A split by content type (products, articles, images) turns a vague "one giant sitemap has errors" into "which grouping is broken".
Build the index file
A sitemap index file is a small XML document that lists the other sitemaps and lets you submit them all at once. Its structure mirrors a sitemap:
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://example.com/sitemap-products.xml</loc>
<lastmod>2026-08-01</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/sitemap-articles.xml</loc>
<lastmod>2026-08-02</lastmod>
</sitemap>
</sitemapindex>
The rules for the index mirror the rules for a sitemap: it must be UTF-8, may not list more than 50,000 sitemaps, may not exceed 50 MB uncompressed, and you can gzip it to save bandwidth as long as the uncompressed size is within limits. The loc of each entry must be the fully qualified URL of the child sitemap, and every child sitemap itself stays within its own 50,000 URL and 50 MB limits.
Keep related hints honest
Each child sitemap still signals recency with its own lastmod, and you still only include the change frequency guidance where it adds value. Keep the references exact: a typo in a child loc makes that sitemap silently unread. Because an index file can only reference sitemaps on the same verified site, do not use it to list URLs on another domain (see the multisite considerations). If you publish images too, keep image sitemaps inside their own children so their metadata does not distort the URL counting of the index.
Submit and maintain
Submit the index file rather than every child, which lets Search Console track the whole tree under one entry (the submit flow covers the mechanics). You can submit up to 500 sitemap index files per site. When a child changes, update its lastmod and let the index reference it unchanged rather than regenerating the whole index unless the set of children changes.
Verification checklist
- Count URLs per child: stay at or below 50,000.
- Measure uncompressed size per file: stay at or below 50 MB.
- Confirm the index lists 50,000 or fewer children and is itself under 50 MB.
- Confirm the
locin index and children use absolutehttps://URLs that match the canonical, and that every child exists on your verified property.
Splitting on content boundaries, not just at the cap, gives you the observability that makes the Search Console sitemap diagnostics actionable, which is the real reason most large sites bother.