Any file. Any shape.

JSON to CSV

Convert a JSON array of objects to CSV — free, unlimited, and entirely private.

🔒 Your files never leave your browser

How it works

This tool converts a JSON array of objects into a CSV file directly inside your browser tab — no server, no upload, no waiting. The conversion runs in a background Web Worker using papaparse, and numbers larger than 2^53-1 are preserved exactly rather than being silently rounded, using the same lossless JSON parser as our JSON formatter.

The first object in the array determines the column headers; every object should have the same shape. Enable "Add BOM" if you're opening the result in Excel and see garbled accented or non-Latin characters.

Limitations

Only flat objects are supported — nested objects or arrays as a field's value aren't automatically flattened into separate columns. If your JSON has nested structure, flatten it first (or convert only the top-level fields you need).

FAQ

Is this JSON to CSV converter really free?
Yes — completely free, with no size limits and no account required. Everything runs in your browser, so there's no server cost to recoup.
What JSON structure does this expect?
A flat array of objects — the most common shape for tabular data, like `[{"name":"Alice","age":30}]`. The first row of objects determines the CSV column headers.
Why is there a "BOM for Excel" checkbox?
Excel assumes CSV files are in a legacy encoding unless a UTF-8 byte-order mark (BOM) is present at the very start of the file — without it, non-Latin text like Cyrillic or emoji can show up as garbled characters when you open the file in Excel. Other tools (Google Sheets, most programming languages) don't need it.
Is my data uploaded anywhere?
No — conversion happens locally in your browser using a background Web Worker. Nothing you paste here is ever sent over the network, which makes it safe to use with production data.