JSON to CSV Converter

Convert JSON to CSV and back. 100% in your browser.

  • Free
  • No signup
  • Files never leave your browser

How to use the converter

  1. Paste or upload your JSON — drop a file onto the left panel, click Upload, or paste JSON text directly.
  2. Pick a delimiter — comma works for most spreadsheets. Use tab if you plan to paste into Excel or Google Sheets without an import step.
  3. Choose a nested separator — the dot (.) is the default. The flattener turns {"a": {"b": 1}} into a column a.b.
  4. Copy or download — the CSV updates as you type. Hit Copy to send it to your clipboard, or Download for a .csv file.

Examples

Flat array of objects

Input:

[
  { "id": 1, "name": "Ada" },
  { "id": 2, "name": "Linus" }
]

Output:

id,name
1,Ada
2,Linus

Nested objects (flattened with .)

Input:

[
  { "id": 1, "meta": { "role": "admin", "city": "Berlin" } }
]

Output:

id,meta.role,meta.city
1,admin,Berlin

Arrays inside objects

Input:

[
  { "id": 1, "tags": ["alpha", "beta"] }
]

Output:

id,tags.0,tags.1
1,alpha,beta

CSV with semicolon delimiter (Europe)

Input:

id;name;city
1;Ada;Berlin
2;Linus;Helsinki

Switch the Delimiter dropdown to Semicolon (;). Output:

[
  { "id": 1, "name": "Ada", "city": "Berlin" },
  { "id": 2, "name": "Linus", "city": "Helsinki" }
]

Round-trip nested structure

CSV input:

id,meta.k
1,v

With Unflatten nested on (default) and dot separator, the JSON output reconstructs the nested shape:

[
  { "id": 1, "meta": { "k": "v" } }
]

Privacy and security

This converter runs entirely in your browser. There is no upload step, no API call, and no telemetry on your data. You can disable your network connection and the tool still works — try it. The source code is available on the project repository.

More tools coming soon: regex tester, QR code generator, image compressor. Bookmark this page or check back.

Frequently asked questions

How do I convert JSON to CSV?

Paste your JSON into the input box on the left. The CSV output appears on the right instantly. You can also drag and drop a .json file or upload one. Click Download to save the .csv file.

Does it handle nested JSON?

Yes. Nested objects are flattened using a separator you choose (default is a dot). For example, {"meta": {"k": "v"}} becomes a column named "meta.k". Arrays are flattened to indexed columns like "tags.0", "tags.1".

Is my data sent to a server?

No. All conversion happens locally in your browser using JavaScript. Your data never leaves your device. You can verify this by opening DevTools and watching the network tab while you convert.

What is the maximum file size?

There is no hard limit, but browsers slow down on inputs over about 50 MB. For very large files we recommend splitting them or using a command-line tool.

Can I convert CSV back to JSON?

Yes. Click the "CSV → JSON" tab. The converter also reverses the nested flattening: if your CSV has a column like "meta.k", it will be reconstructed into a nested object in the JSON output.

Which CSV delimiters are supported?

Comma, semicolon, tab, pipe, and any custom single character. Use the Delimiter dropdown to switch. The CSV → JSON parser also handles quoted fields, escaped quotes, BOM markers, and CRLF line endings.

Does the converter coerce types?

When converting CSV to JSON, by default we coerce "true"/"false" to booleans, integers and decimals to numbers, and the string "null" to null. Untick "Coerce types" to keep everything as strings.

Is it really free?

Yes. No signup, no account, no ads. Files never upload. Use it as much as you like.