XML to CSV
Paste XML with repeated row elements. Converts to CSV with a header row.
Want the full picture? Read: XML to CSV: Flattening a Hierarchy into a Grid
Related reading: Read: Flattening Nested and Repeated XML Elements to CSV
How it works
This tool reads XML with repeated row-style elements — a root element containing repeated children (like <row>), each holding simple field elements — and flattens each one into a CSV row, with each field becoming a column.
When you’d use this
- Turning a SOAP API response or enterprise XML export into something Excel or Google Sheets can open
- Converting a legacy system's XML export into a flat report for analysis
- Getting tabular data out of XML without hand-writing a parser
Common questions
What XML structure does this expect?+
A root element with repeated row-style child elements, each containing simple field elements — for example <root><row><name>Alice</name></row></root>. This tool reads element content, not XML attributes.
What happens to the column order in the resulting CSV?+
Columns follow the order fields appear within each XML row element, based on the first row's structure. If later rows have different fields, they'll still map to the correct columns where field names match.
Why am I getting a 'no row elements found' error?+
This means the root element has no child elements, or your XML doesn't follow the root → repeated-children pattern this tool expects. Confirm your XML has at least one level of nested elements under the root.
Is my XML data sent to a server for conversion?+
No — parsing uses the browser's built-in DOMParser and runs entirely client-side. Nothing you paste ever leaves your browser.