</> Format Swapper

JSON · XML · CSV · YAML — convert between any of them

XML to CSV Converter

Convert XML records into a CSV table you can open in a spreadsheet. Free, instant, and no signup required.

Input (XML)
Output (CSV)

About XML to CSV conversion

XML is still the standard for RSS/Atom feeds, SOAP APIs, and Office file formats under the hood — features like attributes and XSD schema validation go beyond what JSON's plain key-value model can express. CSV is what you get from a database export or a spreadsheet download — universally supported by analysis tools, but limited to flat, row-and-column data with no native nesting.

This conversion goes through the same JSON model the other converters use: elements and attributes become JSON keys first, then flatten to (or unflatten from) CSV columns. Deeply nested XML can produce wide, dot-notation-heavy CSV headers — flatten your XML schema first if you want a tidy spreadsheet.

How to convert XML to CSV

  1. Paste your XML into the left editor, or click sample above it to try example data.
  2. Click Convert. The CSV result appears on the right instantly.
  3. Click copy to copy the result, or download to save it as a file.

Example

Input (XML):

<person>
  <name>Ada Lovelace</name>
  <role>Mathematician</role>
  <active>true</active>
  <skills>math</skills>
  <skills>programming</skills>
</person>

Output (CSV):

person.name,person.role,person.active,person.skills
Ada Lovelace,Mathematician,true,math; programming

Frequently asked questions

Why does converting CSV to XML wrap each row in <item> tags? CSV rows are unnamed records, so this tool wraps each row in a generic <item> element under a <root>. If you want a specific element name instead, convert to JSON first, rename the array key, then convert that JSON to XML.
Do I need to create an account? No. There's no signup, login, or account required — paste your data and click Convert.
Is there a file size limit? There's no hard-coded limit, but very large inputs (multi-megabyte files) can slow down or briefly freeze the tab while converting. For big files, converting in smaller chunks works better.
Why did my conversion fail? Check the status line under the Convert button — it reports the exact line and column where the parser stopped, and the input editor highlights that line in red so you can jump straight to it.