Toolman 100% local

JSON to CSV Converter

Convert JSON arrays to CSV and CSV back to JSON, with nested key flattening.

Runs on your devicenothing is uploadedHow to check

Guide & FAQHow the conversion works · Things that break CSV files · When not to use CSV · Frequently asked questions

How the conversion works

A CSV file is a flat grid; JSON is a tree. Converting between them means deciding how nesting maps onto columns.

  • Columns are collected from every object in the array, so records with different keys still line up — missing values become empty cells.
  • Nested objects are flattened with dotted paths: {"user":{"name":"Ada"}} becomes a column called user.name.
  • Arrays inside a record are serialised back to JSON inside the cell, since a single cell cannot hold multiple values.
  • Escaping follows RFC 4180 — any value containing the delimiter, a quote or a newline is wrapped in double quotes, and internal quotes are doubled.

Things that break CSV files

ProblemWhat happensFix
Commas inside valuesColumns shift right from that row onQuote the field — this tool does it automatically
Leading zeros (007)Excel strips them and shows 7Import as text rather than double-clicking the file
Long numbers (IDs, phone numbers)Converted to scientific notationSame — set the column type to text on import
Non-ASCII charactersMojibake in Excel on WindowsSave as UTF-8 with a byte-order mark, or use the import wizard
Semicolon localesEverything lands in one columnSwitch the delimiter above to semicolon

When not to use CSV

CSV has no types, no schema and no standard for nesting. If the consumer is another program rather than a spreadsheet, JSON, NDJSON or Parquet will save everyone time. CSV earns its place when a human needs to open the file in Excel, Numbers or Google Sheets.

Frequently asked questions

What JSON shape does this expect?

An array of objects — [{...}, {...}]. A single object is treated as a one-row array, and an object whose only value is an array is unwrapped automatically.

How are nested objects handled?

Nested objects are flattened into dotted column names by default. Turn the checkbox off to keep the nested structure serialised as JSON inside a single cell instead.

Is my data uploaded?

No. Parsing and conversion happen in your browser, so customer exports and internal data stay on your machine.

Why does Excel show my CSV in a single column?

Excel follows your regional list separator. In many European locales that is a semicolon, not a comma. Switch the delimiter above to semicolon and re-export.

Can it handle large files?

Files up to a few tens of megabytes convert fine. Beyond that, a streaming command-line tool such as jq or miller is a better fit.

Related tools