How it works
Give the converter a JSON array where each element is an object, and each object becomes one CSV row. Columns are the union of every key that appears, in the order they are first seen, so records with missing fields simply get empty cells instead of shifting columns.
Nested objects are flattened into dot-separated column names — {"address": {"city": "London"}} becomes a column called address.city. Arrays and objects that cannot be flattened are written as compact JSON inside the cell, so no information is lost. Values containing the delimiter, quotes or line breaks are wrapped in double quotes, with inner quotes doubled, following RFC 4180.
Choose semicolons if your spreadsheet uses a comma as the decimal separator (common in Europe), or tabs to paste straight into a sheet. Conversion runs entirely in your browser; your data is not uploaded.
Frequently asked questions
How do I open the CSV in Excel?
Copy the output into a text file saved with a .csv extension, then open it. If accented characters look wrong, use Data → From Text/CSV and choose UTF-8 encoding.
What if my JSON is a single object?
A single object is treated as a one-row table. A list of plain values becomes a single "value" column, and an array of arrays is written row by row without a header.