JSON to CSV Converter

Turn a JSON array into a spreadsheet, with nested fields flattened sensibly.

JSON input
CSV output

About this tool

Convert a JSON array of objects into a CSV table. Nested objects are flattened into dotted columns — user.address.city becomes one column — and arrays are indexed, so no value is ever dropped to make the shape fit.

Cells are quoted per RFC 4180 only when they need it: a value containing the delimiter, a quote or a line break gets wrapped, everything else stays readable. Excel and every spreadsheet open the result directly.

Integers larger than 2⁵³−1 keep every digit. Most converters round-trip numbers through a JavaScript float and silently turn 1234567890123456789 into …7800; that never happens here.

How to use it

  1. Paste your JSON array, or drop a .json file onto the input pane.
  2. Pick the delimiter — comma, semicolon (common in European exports), or tab — and whether the first row is a header.
  3. Copy or download the CSV. The notes under the output say exactly what the flattening did.

Worked example

The sample above converts to a table with columns user.name, user.city and score — one row per object, nothing nested dropped.

Nested fields, flattened

Frequently asked questions

What happens to nested objects and arrays?
Nested objects become dotted columns (a.b.c); arrays become indexed columns (tags.0, tags.1). Columns are the union across all rows in first-seen order, so a field missing from one row is an empty cell rather than a lost one.
Can it convert a single object, not an array?
Yes — it becomes a one-row table, and the notes say so. A scalar document (a bare number or string) has no columns to build, and is refused with guidance rather than a mangled table.
Does it handle values containing commas or quotes?
Correctly. A value containing the delimiter, a double quote or a line break is quoted, and inner quotes are doubled — the exact rules of RFC 4180, which is what Excel expects.
Why does my CSV open as one column in Excel?
Your data probably uses semicolons or tabs where your Excel locale expects commas. Switch the delimiter control and re-download; the file carries the separator you chose.
Is my data uploaded anywhere?
No. The conversion runs in your browser; a file you drop is read locally and never leaves the tab.