jarvisbox

XML to CSV Converter — Large File Streaming

Stream-parse XML files up to 1 GB entirely in your browser. No upload, no 10 MB limit. Nested elements flatten to dot-notation columns — no signup required.

100% client-side · no upload. XML is stream-parsed inside your browser. Nothing is sent to a server.
Download .csv

Select an XML file above to begin.

How to use

  1. Drop or select an XML file. Works with database exports, RSS feeds, and any record-list XML format.
  2. Click Convert to CSV — the file is stream-parsed in 1 MB chunks so large files stay responsive.
  3. Click Download .csv to save, or Copy CSV to paste into Excel or Google Sheets.

Related data tools

Common use cases

Frequently Asked Questions

How does streaming XML parsing work?
Instead of loading the entire XML file into memory as a DOM tree, this tool reads your file in 1 MB chunks and feeds each chunk through a state-machine SAX-style parser. As each row element closes, the row is emitted immediately — so even a 1 GB XML file never requires 1 GB of browser memory for the parse phase. The parser runs entirely inside your browser tab; nothing is uploaded.
What XML structures does this converter support?
The tool expects a root element whose direct children represent the rows — for example <catalog><book>…</book><book>…</book></catalog>. Nested child elements are flattened with dot notation (title, author.firstname, author.lastname). Element attributes appear as @attribute columns (e.g. @id). XML namespaces are stripped so ns:element becomes element.
How are nested elements and attributes handled?
Nested child elements are flattened using dot notation: <address><city>London</city></address> becomes the column address.city. Attributes on row elements or their children are prefixed with @: <item id="42"> produces a column @id. This matches the behaviour of jq and most ETL pipelines, so the output imports cleanly into Excel, Google Sheets, or pandas.
Does my data leave my device?
No. All parsing and conversion happens entirely inside your browser tab. Your XML file is read directly from disk using the File API — it is never uploaded to any server, never stored in the cloud, and never logged. The tool works fully offline once the page has loaded.
Does it work on mobile?
Yes. The tool works in any modern browser — Safari on iPhone and iPad, Chrome on Android, Edge on Windows. Tap the upload zone to open your file picker and select an XML file. Drag-and-drop also works on iPadOS with an external keyboard or mouse. Very large files (hundreds of MB) may be slow on low-memory mobile devices.

Last updated:

Report a problem with this tool