Data Utility

JSON to CSV Converter

Paste your JSON array below to convert it into a flat, spreadsheet-ready CSV format instantly.

Why Flatten JSON?

JSON is the standard for web APIs, but it's hard to read in a spreadsheet. This tool takes your structured data and "flattens" it into rows and columns, making it compatible with Excel, Google Sheets, and data analysis software.

Privacy First

Your data security is paramount. The conversion happens in-memory during the request. No data is stored, logged, or saved to our databases. Your JSON never leaves the processing stream.

Turning JSON arrays into spreadsheet-ready CSV

JSON is the default shape of data coming out of an API, but almost nothing in the spreadsheet world reads it directly. This converter takes an array of JSON objects and flattens it into comma-separated rows, using the object keys as your header line.

What the input should look like

Paste an array of objects, such as [{"name": "Ada", "role": "engineer"}, {"name": "Linus", "role": "maintainer"}]. Each object becomes one row and each key becomes one column. A single object on its own also works and produces a one-row file.

Records do not all need identical keys. The converter collects the union of every key it finds across the array and leaves cells blank where a record does not supply a value, so partial data will not cause a failure.

Common conversion problems

An array of plain values such as [1, 2, 3] cannot become a table, because there are no field names to use as headers. Wrap each value in an object first.

Deeply nested objects are written as their raw representation rather than being expanded into extra columns. If your API returns nested structures, flatten the levels you care about before pasting, or handle the export in code.

Trailing commas are valid in JavaScript but not in JSON, and they are the single most common reason a paste is rejected. Removing the final comma before a closing bracket usually fixes it.

Excel and UTF-8

If accented characters look wrong in Excel, import the CSV rather than double-clicking it, and select UTF-8 encoding in the import dialog.

Check the key order

Columns follow the order keys first appear. Reorder keys in the first record to reorder the whole spreadsheet.

Validate first

If the paste is rejected, run the JSON through a formatter to find the exact syntax error before returning here.

Frequently asked questions

Can it handle nested JSON objects?

Nested values are output as-is rather than expanded into separate columns. For deeply nested API responses, flatten the structure to the fields you need before converting.

Is there a size limit?

Very large pastes may be slow because the whole document is parsed at once. For files in the megabytes, a scripted conversion will be more comfortable.

What happens to null values?

Nulls are written as empty cells, which is how most spreadsheet applications expect missing data to appear.

Why does my array of strings fail?

CSV needs column names, and a bare string has none. The converter expects an array of objects so it can use their keys as headers.