About JSON to CSV
JSON to CSV is a free, browser-based converter that turns JSON arrays, single objects, and NDJSON into spreadsheet-ready CSV. This page covers what it does, how the conversion works technically, and exactly what happens — and does not happen — to your data.
What it does
Paste JSON or drop up to 20 files, and the tool turns each record into a CSV row and each key into a column. You control the delimiter (comma, semicolon, tab, or pipe), whether a header row is written, how null is rendered, and how nested objects and arrays collapse into a flat grid. The result previews as a table and downloads as UTF-8 CSV — with an optional byte-order mark so Microsoft Excel reads accented characters correctly.
How it works technically
Conversion happens entirely inside your browser tab, in three steps:
- Parse. Your input is read with the browser's native
JSON.parse. If that fails, the tool retries the input as NDJSON (one JSON value per line) before reporting the exact line and column of a syntax error. - Flatten. Each record is walked recursively. Nested objects become dot-notation keys (
a.b.c), and arrays either expand into indexed keys, join into one cell, or stay as JSON — your choice. The union of every key across every record becomes the column set, so records with different shapes still line up. - Encode. Cells are quoted per the RFC 4180 CSV standard: any value containing the delimiter, a quote, or a line break is wrapped in double quotes with embedded quotes doubled. The rows are joined with your chosen line ending and handed back through the Blob API as a downloadable file.
None of this involves a server. The whole parse-flatten-encode pipeline uses standard browser APIs, and batch downloads are packed into a ZIP in the browser too.
Privacy: what happens to your data
Your JSON is never uploaded. The parse, flatten, and encode steps all happen locally on your device — no record, key, or value is sent to a server, logged, or stored by JSON to CSV.
Because nothing is uploaded, the tool keeps working even if you disconnect from the internet after the page has finished loading — there is no server round-trip to wait on in the first place. When you close the tab, navigate away, or clear the input, the in-memory copies of your data are released; nothing about them persists between visits.
This privacy stance covers the data you convert. It does not change what a browser extension, network proxy, or the device itself might otherwise see — only what JSON to CSV itself does with your data, which is nothing beyond converting it for you to download.
Ready to convert your JSON?
Use the JSON to CSV converter — paste your data and download the CSV in seconds. Have a spreadsheet export that needs to become JSON? Use the CSV to JSON converter.