Build line

Sitemap splitter and index generator

Paste or upload any number of URLs. They are split at 50,000 per file or 50 MB, whichever comes first, a sitemap index is written for you, and everything downloads as one zip.

Try a template:
More options: cleaning, file names, legacy tags
0URLs in sitemap
0files
0removed
✓valid

Paste URLs, drop a CSV or pick a template. The sitemap builds as you type and is checked against the sitemaps.org protocol line by line.

How many sitemap files do you need?

Two limits apply to every file, and whichever you hit first decides how many files you need. Move the sliders: bare URL lists hit the 50,000 cap, while image-heavy or multilingual sitemaps hit the 50 MB cap much sooner.

~120 for a bare URL, ~180 with lastmod, 1,000+ with several images, 3,000+ with hreflang for 20 languages.

3sitemap files
40,000URLs per file
6.9 MBper file, approx.
1sitemap index
sitemap-1.xml40,000 URLssitemap-2.xml40,000 URLssitemap-3.xml40,000 URLs
sitemap-index.xml is the interchange: submit it once and crawlers transfer to every line.

The 50,000-URL cap is what forces the split here. Each file stays well under 50 MB.

Anatomy of a sitemap index

The index is a directory of directories. It carries no page URLs itself, just the location of each child file and, optionally, when that file last changed:

Only <loc> and <lastmod> are allowed inside <sitemap>. Updating a child file's lastmod when its contents change tells crawlers which file to re-read, so a 2-million-URL site doesn't need all 40 files re-downloaded every day.

After you split

  1. Upload every file (including the index) to the location you entered.
  2. Reference only the index in robots.txt: Sitemap: https://example.com/sitemap-index.xml.
  3. Submit the index in Search Console. Each child then gets its own row in the report.
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://example.com/sitemap-1.xml</loc>
    <lastmod>2026-09-27</lastmod>
  </sitemap>
  <sitemap>
    <loc>https://example.com/sitemap-2.xml</loc>
    <lastmod>2026-09-21</lastmod>
  </sitemap>
</sitemapindex>

Questions people ask

How many URLs can one sitemap contain?
At most 50,000 URLs, and the file may be no larger than 50 MB (52,428,800 bytes) uncompressed. Whichever limit you reach first applies. Both limits come from the sitemaps.org protocol and Google follows them.
What is a sitemap index?
A small XML file with a <sitemapindex> root that lists other sitemap files, each in a <sitemap><loc> entry with an optional lastmod. You submit the index once and search engines find every child sitemap from it.
Can a sitemap index point to another index?
No. Google’s documentation says nested sitemap indexes are not supported: an index lists sitemaps, not other indexes. If you need more than 50,000 child sitemaps, create several indexes and submit each one.
Does gzip compression raise the limit?
No. The 50 MB limit applies to the uncompressed file. Gzip (sitemap-1.xml.gz) saves bandwidth, but a gzipped file over 50 MB once unzipped is still too big.
Is it better to split sitemaps by section?
Often, yes, even below the limit. Separate files for products, categories and articles let you see indexing per section in Search Console’s sitemap report, which is a cheap way to spot which template has problems. Set a lower “URLs per file” or generate each section separately.
Where must the child sitemaps live?
Google allows the index and child files to be on the same site. The child URLs listed inside each sitemap must be on the host the sitemap lives on (or a host you have verified in Search Console). Set “Where the files will live” so the index points at the right absolute URLs.