Skip to main content

JSON to CSV

Convert JSON arrays of objects to CSV with automatic column detection and proper escaping.

Runs in your browser — your data never leaves your deviceFree, no sign-up
Options
CSV output

The CSV output will appear here.

How it works

Your JSON is parsed in the browser, then each object becomes a CSV row. The header row is built from the union of keys across all objects, in order of first appearance. Nested objects can be flattened (a user.name key becomes a user.name column), and arrays are serialized as JSON text within the cell.

Output follows RFC 4180: cells containing the delimiter, quotes or line breaks are quoted, and quotes are escaped by doubling.

Features

  • Array of objects, single object, or array of primitives
  • Nested objects flattened to dotted-path columns (optional)
  • Comma, semicolon, tab or pipe delimiter
  • Header row optional
  • RFC 4180 quoting and escaping — Excel-safe output
  • Copy, download, upload and clear actions

How to use

  1. Paste JSON or upload a .json file.
  2. Pick a delimiter and whether to flatten nested objects.
  3. Press Convert to CSV.
  4. Copy the CSV or download it as converted.csv.

Example

Input:

[
  { "name": "John", "age": 30 },
  { "name": "Sarah", "age": 25 }
]

Output:

name,age
John,30
Sarah,25

Frequently asked questions

What JSON shapes can be converted?
An array of objects (the typical case — keys become columns), a single object (one row), or an array of primitives (one value column). Nested objects can be flattened into dotted-path columns (e.g. address.city). Top-level numbers, strings and booleans cannot become a table and produce a clear error.
How are missing fields handled?
The columns are the union of all keys across rows. A row that is missing a key gets an empty cell — no error, no dropped data.
Is my data uploaded anywhere?
No. Conversion runs entirely in your browser. Your JSON and the resulting CSV never leave your device.
Which delimiter can I choose?
Comma (the CSV standard), semicolon (common in European locales), tab (TSV) and pipe. Quoting and escaping follow RFC 4180 regardless of delimiter.
What happens to values containing commas or quotes?
They are automatically wrapped in double quotes, and inner quotes are doubled (""), exactly as the CSV standard requires. Excel, Google Sheets and every CSV library will read them correctly.