JSON to CSV Converter

Paste a JSON array — CSV table appears instantly

Delimiter:
JSON Input
Ctrl+Enter to convert
CSV Output

CSV table will appear here
Paste a JSON array on the left

Rows: -
Columns: -
CSV size: -

Free Online JSON to CSV Converter

Paste any JSON array of objects and the CSV table appears instantly as you type. Columns are detected automatically from your JSON keys. Nested objects are flattened using dot notation (e.g. address.city). When you're done, copy to clipboard or download a .csv file with one click.

How it works

  1. Paste a JSON array of objects into the input panel on the left
  2. The CSV table appears instantly on the right with auto-detected column headers
  3. Switch between Table view (readable preview) and Raw CSV view (plain text)
  4. Click Copy CSV to copy to clipboard, or Download .csv to save the file

Features

What is JSON to CSV conversion?

JSON (JavaScript Object Notation) and CSV (Comma-Separated Values) are the two most common data interchange formats. JSON is ideal for hierarchical, nested data. CSV is ideal for flat tabular data that opens directly in spreadsheets like Excel, Google Sheets, or Numbers.

Converting between them is a routine task in data engineering, analytics, and API integration work. Our converter handles the main complexity: detecting the full set of columns from a heterogeneous array (where different rows may have different keys), and flattening nested structures into readable column names.

Example

Input JSON array:

[
  {"name": "Alice", "age": 30, "address": {"city": "New York"}},
  {"name": "Bob",   "age": 25, "address": {"city": "London"}}
]

Output CSV (nested object flattened):

name,age,address.city
Alice,30,New York
Bob,25,London

Frequently Asked Questions

What JSON format does this converter accept?
It accepts a JSON array of objects: [{"key": "value"}, ...]. If you paste a single object, it's automatically wrapped in an array and treated as a one-row table. Arrays of primitives (strings, numbers) are also handled — they get a single "value" column.
What happens to nested objects?
Nested objects are flattened using dot notation. For example, {"user": {"name": "Alice"}} becomes a column named user.name. Arrays nested inside objects are serialized as JSON strings in the cell.
What if some rows are missing keys?
The converter builds a union of all keys across every row. Rows that don't have a particular key will have an empty cell for that column. The CSV structure is always consistent.
Is my data safe?
Completely. The conversion runs entirely in your browser using JavaScript. Your data is never sent to any server. This tool works offline once the page is loaded.
How do I open the downloaded CSV in Excel?
Open Excel, go to Data → From Text/CSV, and select the downloaded file. Excel will auto-detect the delimiter. If using semicolons (common in European locales), select "Semicolon" as the delimiter in Excel's import wizard.
Can I convert large JSON files?
Yes. There's no enforced limit. The table preview caps at 500 rows for performance, but the full data is always included in the CSV copy and download. Files up to several megabytes process smoothly.