Turn a CSV export into a YAML list of records
Runs in your browser. Nothing you type is sent anywhere. Updated on 24 Oct 2026.Every row becomes one item in a YAML list, keyed by the header row. It is the quickest way to get a spreadsheet of fixtures, users or settings into a file a person can read and edit. Codes such as 007 and long account numbers stay as text, because turning them into numbers is how a leading zero disappears and never comes back.
The page opens with CSV chosen in From and YAML in To.
Paste the CSV export, or drop the .csv file onto the panes.
Keep Header row on so the first row names the keys of every record.
Read the YAML list on the right, one item per row.
Press Download YAML to save the file, or Copy YAML to paste it elsewhere.
This converter moves structured data between JSON, YAML, XML, CSV, TSV, TOML and INI in every direction that makes sense: forty of the forty-two possible pairs. Paste the data or open the file and it works out which format it is from the content itself, not from the name on the end of it, then offers the conversion people usually want next. If the guess is wrong, one tap fixes it.
The difficult part is not parsing. It is being honest about shape. CSV and TSV are rows of columns; JSON, YAML, TOML and XML are values inside values; INI is one flat level of named sections. Moving between those shapes always decides something on your behalf, so every conversion prints one line saying what it decided: which list became the rows, which nested objects became dotted columns such as address.city, which keys were left out and why. A list inside a cell becomes JSON text rather than disappearing.
Anything a target format cannot hold is named rather than dropped quietly. TOML has no empty value, so each null is listed by the key it came from. XML has no types and no lists, so a repeated tag is the only list it can write, and attributes become keys marked with an at sign. Comments in YAML, TOML and INI go, because nothing else here has a place to keep them.
The rest of the article, and all 8 questions about Data Converter, are on the Data Converter page.
JSON, YAML, XML, CSV, TSV, TOML and INI, in forty of the forty-two possible directions. The two it refuses are CSV to INI and TSV to INI, because INI holds named sections and spreadsheet rows have no names, so every row would need an invented heading such as [row_1].
A spreadsheet needs rows, so the converter looks for the list that is the table. A JSON array of objects becomes one row per object. If the array sits inside an object, that array is used and the other top-level keys are named so you can see exactly what is not in the sheet. Nested objects become dotted columns such as address.city.
No, and the tool says so each time. YAML, TOML and INI allow comments; JSON, CSV and TSV have nowhere to put them, and nothing records which value a comment belonged to. XML comments go the same way. Everything else is kept, and anything that could not be written is named rather than quietly dropped.
Yes. Choose Excel in the To row and press Download Excel: the table is saved as an .xlsx with a bold header row, real numbers and dates, and codes like 007 kept as text. To go the other way, open an .xlsx of up to 10 MB; one sheet is read in your browser and shown as CSV, ready to become XML or JSON. Formulas come across as their saved results.
Still stuck? Ask about Data Converter and anybody who knows can answer. No account needed.
Same job, other tools: JSON to YAML – Turn JSON into clean, readable YAML for configs · YAML Validator – Check YAML syntax and see the exact line and column of each error · TSV to JSON – Convert tab-separated values, such as a paste from Excel, into JSON.
In the collections JSON Tools · Developer Converters.