xmltoolskit.org
XML utilities, in the browser
Say hi →

XML Splitter

updated 31 August 2026

split
Drop a .xml file here, or
ready

XML Splitter

Cutting an XML file into byte ranges gives you one document and a pile of fragments. Every part has to be a document on its own — same prolog, same root, same namespace declarations, and the channel-level metadata repeated rather than left behind in part one. That is the whole job, and it is why split is not the tool for this.

How it decides where to cut

It looks for the element that repeats: <item> in an RSS feed, <product> in a merchant feed, <row> in a database dump. Every repeating path in the document is listed in the Record picker with its count, deepest first, and the deepest one is selected for you — that is nearly always right, and when it is not, the count in the picker tells you at a glance which path is.

The cut then happens between whole records. A record is never split across two files, so no part can be half a product.

What every part keeps

Which is why the bytes out are more than the bytes in — the status line says by how much. The wrapper is paid for once per part.

The four ways to split

Getting the parts out

Every part is listed under the panes with its record count and size. Click one to preview it in the right pane; shift-click to download just that one. Download all packs them into a plain ZIP built here in the page — stored entries, no compression step, which every unzip tool reads.

Privacy

100% client-side. The file is parsed, split and zipped in your browser; nothing is uploaded. See the privacy policy.

Related

To go the other way, format or minify what comes back. To check a part before shipping it, use the validator, or the schema validator if you have the XSD. If the records are what you actually want rather than the XML, XML to CSV flattens the same repeating element into rows.