Everything runs in your browser: the data you paste or open is not uploaded anywhere.
About the JSON, CSV & YAML Converter
Turn an API response into a spreadsheet, a CSV export into JSON, or a JSON config into YAML. Paste text or drop a file, pick the direction, and the result appears as you type, with a table preview of the rows. The CSV side follows RFC 4180, the format Excel and Google Sheets use, and errors point to the exact line. Nothing is uploaded: the conversion runs in your browser.
How to use the JSON, CSV & YAML Converter
-
Choose the direction
Pick JSON → CSV, CSV → JSON, JSON → YAML or YAML → JSON. Opening a .csv, .tsv, .yaml or .yml file selects the matching direction for you.
-
Paste or open your data
Paste text into Input or drop a file of up to 10 MB. For CSV the delimiter is detected; change it, or untick "First row is the header" or "Detect numbers, true/false and null", if your file needs it.
-
Check, copy or download
Look at the table preview and fix any error at the line shown. Then copy or download the result; "Add BOM for Excel" makes Excel open accented characters correctly. Swap turns the result into the new input to convert it back.
When to use it
API data into a spreadsheet
Convert a JSON array from an API or a database export into CSV and open it in Excel, Google Sheets or Numbers, with nested fields in their own columns.
Spreadsheets into JSON
Turn a CSV exported from a spreadsheet into an array of JSON objects for test data, seed data or a quick import script, with numbers and booleans typed.
Config files between JSON and YAML
Rewrite a JSON config as YAML for Docker Compose, Kubernetes or GitHub Actions, or read a YAML file as JSON to see what it really contains once anchors and merge keys are resolved.
Frequently asked questions
How are nested objects and arrays written to CSV?
Nested objects become one column per field, named with dots: {"address": {"city": "London"}} gives an address.city column. Arrays stay in a single cell as JSON text, such as ["math","poetry"], so each object is still one row. The columns are every key found, in the order they first appear; a missing key leaves its cell empty.
Which JSON shapes can be converted to CSV?
An array of objects (one row each), a single object (one row), an object that holds one array of objects such as {"items": [...]} (the rows come from that array and the other properties are left out), an array of plain values (one "value" column) and an array of arrays (written as rows, with no header). A single string or number cannot become a table.
Why does Excel show strange characters or put everything in one column?
Excel needs a byte order mark to read UTF-8 accents: tick "Add BOM for Excel" before downloading. In countries where the decimal separator is a comma, Excel expects semicolons between fields, so pick Semicolon (;) as the delimiter.
What happens with several YAML documents, anchors and comments?
A file with several documents separated by --- becomes a JSON array with one item per document. Anchors, aliases and merge keys (<<) are resolved into plain values. Comments are dropped, because JSON has none. From JSON to YAML, strings such as yes, no, on or 2024-01-01 are quoted so YAML 1.1 parsers keep them as text.
Is my data uploaded?
No. Parsing and conversion run in your browser, and the files you open are read on your device. The input is autosaved in your browser's local storage (up to about 200,000 characters) so it is still there when you come back; Clear removes it.
Related tools
Browse all free online tools on Tooly — every one runs in your browser, with no account required.