UtilitiesTools

JSON to CSV Converter

Paste a JSON array, get a clean CSV table you can download or copy in one second — and convert it back the other way too. Choose comma, semicolon, or tab, with an Excel-ready UTF-8 download. Nothing ever leaves your browser.

Private by design: converted in your browser, never uploaded or stored.

What is the JSON to CSV converter?

The JSON to CSV converter turns a JSON array of objects into a clean, spreadsheet-ready CSV table — and converts CSV back into JSON when you need to go the other way. JSON is the format APIs and config files speak in, but spreadsheets, databases, and analysts speak CSV. This tool bridges that gap in one second: paste your JSON, choose comma, semicolon, or tab, and get a result you can download or copy. Everything runs in your browser, so even private or company data stays on your machine.

How to use it

  1. Choose a direction and select comma, semicolon, or tab as the delimiter.
  2. Paste your JSON array (or your CSV table) into the input box.
  3. Review the output plus its live row, column, delimiter, and array summary.
  4. For JSON to CSV, keep Excel UTF-8 download enabled when your file contains accents or non-Latin text.
  5. Click Download to save the file, or Copy to grab the BOM-free result.
  6. Switch the direction toggle anytime to convert back — no reload and no re-paste of settings.

The method behind it

The conversion is plain and predictable: each object in the array becomes one row and each key becomes a column. First the tool scans every object and builds the header as the union of all keys it finds, so records with different or missing fields still line up correctly. Nested objects are flattened — a key like address.city becomes its own dotted column header instead of being dropped. Values that contain commas, quotes, or line breaks are wrapped in quotes and escaped per the standard CSV rules (RFC 4180). Choose comma, semicolon, or tab to match the spreadsheet or import pipeline that will open the file. For non-ASCII text in Excel, keep Excel UTF-8 download enabled; it adds the marker Excel uses to recognize UTF-8 to the downloaded file only, never to copied text. Going the other way, CSV to JSON, the first row is read as the keys and every following row becomes one object.

Examples

JSON to CSV

Input:

[{"name":"Ada","role":"dev"},{"name":"Lin","role":"qa"}]

Output:

name,role
Ada,dev
Lin,qa

Nested JSON to CSV

Input:

[{"name":"Ada","address":{"city":"Berlin"}}]

Output:

name,address.city
Ada,Berlin

CSV to JSON turns name,role / Ada,dev back into a JSON array of objects, using the header row as the keys.

Common use cases

Why use this one

Most converters only go one way, run on a server (so your data is uploaded), or quietly break when JSON contains nested objects. This one does all of it in a single page: two-way JSON to CSV and back, nested-object flattening into dotted headers, download and copy built in, and 100% client-side processing so your JSON never leaves the browser. Before download, the result summary confirms rows, columns, delimiter, Excel compatibility, and any arrays kept safely as JSON cells. No signup, no upload, no paywall. It pairs naturally with the JSON Formatter to tidy your JSON first, the Text Diff Checker to compare two exports, and the Base64 Encode / Decode tool when your data arrives wrapped for transport.

Frequently asked questions

Is my JSON uploaded to a server?

No. The entire conversion runs locally in your browser using JavaScript. Your JSON and CSV never leave your device, which makes it safe for private or company data.

Can it convert CSV back to JSON?

Yes. This is a two-way tool. Switch the direction and paste a CSV table to get a JSON array of objects, using the first row as the keys.

How does it handle nested JSON objects?

Nested objects are flattened into dotted column headers. For example, the key address.city becomes its own CSV column, so you do not lose nested data the way many basic converters do.

What happens to nested arrays inside an object?

Arrays inside a record are serialized into one cell as compact JSON instead of being silently exploded into extra rows. The live summary reports how many arrays were kept this way.

Do all my JSON objects need the same keys?

No. The tool scans every object and builds a union of all keys as the CSV header. Missing values are left as empty cells, so mixed or partial records still convert cleanly.

Which delimiter and Excel setting should I use?

Use comma for standard CSV, semicolon for spreadsheet locales that reserve commas for decimals, or tab for TSV imports. Keep Excel UTF-8 download enabled when the CSV contains accents or non-Latin characters; it adds a UTF-8 marker to the downloaded file only, not to copied text.