Developer

How to Convert JSON to CSV

4 min read Updated 30 June 2026

You've got a chunk of JSON — an API response, an export, a config dump — and you need it as CSV so you can open it in a spreadsheet or hand it to someone who lives in Excel. Converting JSON to CSV by hand is tedious and easy to get wrong, especially once values contain commas, quotes, or line breaks.

The JSON to CSV Converter on Tooldrop does it for you instantly. Paste your JSON array of objects, and clean, spreadsheet-ready CSV appears right away — properly quoted and escaped to the RFC-4180 standard. It runs entirely in your browser, so nothing is uploaded, there's no sign-up, and there are no limits. This guide walks you through it step by step.

Step by step

  1. 1Open the JSON to CSV Converter at /dev/json-to-csv. There's nothing to install or sign up for — the tool is ready the moment the page loads.
  2. 2Check the Direction toggle at the top. Leave it on 'JSON to CSV' to turn JSON into a spreadsheet, or switch it to 'CSV to JSON' if you need the reverse conversion.
  3. 3Paste your data into the input box. For JSON to CSV, paste a JSON array of objects, for example [{ "name": "Ada", "city": "London" }]. Each object becomes a row and each key becomes a column header.
  4. 4Watch the CSV appear in the Result panel below as soon as your input is valid — there's no separate convert button to press, the output updates live as you type or paste.
  5. 5Click the Copy button under the result to put the CSV on your clipboard, then paste it straight into a spreadsheet, a .csv file, or wherever you need it.
  6. 6If you see a red error message instead of output, fix the JSON it points to (most often a missing bracket, a trailing comma, or a value that isn't an array of objects) and the result will refresh automatically.
Try it now — it's free
Runs in your browser. No upload, no sign-up.
Open JSON to CSV Converter

When and why you'd convert JSON to CSV

JSON is great for code and APIs, but CSV is the language spreadsheets speak. You'll reach for this conversion whenever you want to open structured data in Excel, Google Sheets, or Numbers — to filter it, chart it, or share it with someone non-technical.

Common cases: turning an API response into a report, exporting records from a tool that only gives you JSON, prepping a list for a bulk upload that expects CSV, or simply eyeballing nested data in a flat grid. Because the converter also goes the other way, it's just as handy for pulling a CSV export back into JSON for a script.

Tips for the cleanest results

Give the tool a JSON array of objects, like [{...}, {...}], not a single object or a bare value. Each object is one row.

Your objects don't all need identical keys. The converter collects every key it sees across all rows and uses that union as the header, so missing fields simply come out as empty cells. Values that are themselves arrays or objects are written back as JSON text inside the cell, so nothing is silently dropped.

Don't worry about commas, quotation marks, or line breaks inside your values — the tool wraps and escapes those fields automatically following RFC 4180, so your CSV opens correctly in any spreadsheet. For the reverse direction, make sure your CSV's first row is the header, since those names become the JSON keys.

Is it safe and private?

Yes. The conversion runs entirely in your browser using local JavaScript — your JSON or CSV is never uploaded to a server, and nothing is logged or stored. The on-page hint says it plainly: everything runs privately in your browser, nothing is uploaded.

That makes it safe for data you can't paste into random websites, like customer records, internal exports, or anything with personal information. There's no account to create and no usage cap, so you can convert as much as you want, as often as you want. Once the page has loaded, it even keeps working if your connection drops.

Common problems and quick fixes

'Invalid JSON' — there's a syntax slip somewhere. The usual culprits are a trailing comma after the last item, a missing bracket or brace, or single quotes where JSON needs double quotes. Paste the JSON into a formatter first if you're unsure.

'JSON must be an array of objects' or 'Every item in the array must be an object' — you've pasted a single object or a list of plain values. Wrap your objects in square brackets so the top level is an array, e.g. [{ "a": 1 }].

Empty result — an empty array ([]) produces no CSV, which is expected. Add at least one object to see output.

Going CSV to JSON and getting odd keys? Check that the very first line of your CSV holds the column names, because that row is treated as the header.

Frequently asked questions

How do I convert JSON to CSV without uploading my file?
Open the JSON to CSV Converter at /dev/json-to-csv and paste your JSON array of objects into the input box. The CSV appears live in the Result panel and you copy it with one click. The whole conversion happens locally in your browser, so your data is never uploaded to any server.
Does my JSON data get sent to a server?
No. The tool processes everything in your browser using local JavaScript — your JSON and the resulting CSV never leave your device. That makes it safe for sensitive or work data, and it even keeps working offline once the page has loaded.
How does the tool handle commas, quotes, and line breaks in my values?
It quotes and escapes them automatically following the RFC-4180 standard. Any field containing a comma, double quote, or newline is wrapped in double quotes, and embedded quotes are doubled, so the CSV opens correctly in Excel, Google Sheets, and other spreadsheet apps.
Can I convert CSV back to JSON too?
Yes. Flip the Direction toggle at the top to 'CSV to JSON', paste CSV with a header row in the first line, and the tool returns a pretty-printed JSON array of objects. It's free and has no usage limits in either direction.

Tools used in this guide

Related guides