JSON ↔ CSV Converter
Turn arrays of objects into CSV and CSV back into JSON, with header and delimiter options.
Paste JSON or CSV, choose options, then pick a direction. Ctrl/⌘ + Enter converts the pane you are typing in.
What this tool does
Convert between JSON and CSV in either direction. For JSON → CSV, paste an array of objects (or a single object): each object becomes a row and every key a column. Nested objects are flattened to dot-notation headers such as address.city, and arrays are stored as JSON text in one cell so nothing is lost. For CSV → JSON, paste any delimited text: the tool detects the delimiter, reads the first row as headers and, if you ask, converts numbers and booleans. The output is pretty-printed JSON you can copy or download, and the status line shows row and column counts.
Notes and common questions
- Objects with different keys are fine: the header is the union of all keys in first-seen order, and missing values become empty cells.
- Tick "Quote all fields" if the receiving program expects every value in quotes; otherwise only values containing the delimiter, quotes or line breaks are quoted (RFC 4180).
- Excel on Windows shows Chinese text in a UTF-8 CSV correctly only when the file starts with a BOM: keep that option on for Excel, off for programming tools.
- Converting numbers turns "007" into 7 and "1e3" into 1000. Turn it off to keep IDs, phone numbers and postal codes as text.
- Without a header row, CSV → JSON produces an array of arrays; "Expand dotted keys" rebuilds nested objects from headers like address.city.
Privacy
Files are converted inside your browser; nothing is uploaded. Download links are generated locally from the output text.