Shiklo Tools
PDF40
Image20
Calculators & Converters25
Text & Writing13
Developer26
Video14
Audio14
Document14
Data & Spreadsheet12
Web & SEO9
OCR & Scanning5
Archive & File12
Security & Privacy23
Health & Medical29
QR & Barcode5

JSON to CSV

Convert JSON to CSV for Excel and Google Sheets. Nested objects become columns, arrays are handled your way, long numbers stay exact. Private.

Turn JSON from an API, a database export or a log file into a CSV table you can open in Excel, Google Sheets or Numbers. Paste an array of objects and each object becomes a row, each key a column. Nested objects are flattened into dot-path columns such as address.city, and you choose how arrays are written.

The converter keeps long numbers exactly (IDs like 12345678901234567890 are not rounded), quotes values correctly, and can add the UTF-8 marker Excel needs to show accents and non-Latin text. It all runs in your browser — your data is never uploaded.

How to use JSON to CSV

  1. Paste your JSON, open a .json file, or click Sample.
  2. Choose the separator (comma, semicolon or tab) and how arrays should appear.
  3. Check the preview table and the CSV on the right.
  4. Copy the CSV or click “Download .csv” (Excel-friendly by default).

Features

  • Array of objects → one row per object; also finds the list inside wrappers like { "data": [ … ] }.
  • Nested objects become columns: user.address.city.
  • Arrays as separate columns (tags.0, tags.1), joined into one cell (a; b) or kept as JSON.
  • Columns from all objects, even when some objects have extra keys.
  • Column picker: untick the columns you don't need in the CSV.
  • Comma, semicolon (European Excel) or tab separated.
  • Exact long numbers, correct quoting of commas, quotes and line breaks.
  • UTF-8 BOM option so Excel shows é, ü, हिन्दी and emoji correctly.
  • Preview table; private — nothing is uploaded.

How JSON becomes a table

CSV is flat: rows and columns. JSON can be nested. The converter makes every object one row and walks into nested objects, joining the keys with dots, so {"name": "Ann", "address": {"city": "Pune"}} becomes the columns name and address.city. If different objects have different keys, every key gets a column and missing values stay empty.

JSONCSV columnValue
{"id": 1}id1
{"address": {"city": "Pune"}}address.cityPune
{"tags": ["a", "b"]} (columns)tags.0, tags.1a, b
{"tags": ["a", "b"]} (join)tagsa; b
{"active": true}activetrue
{"note": null}note(empty)

Opening the CSV in Excel

Excel guesses the file's text encoding, and without a byte-order mark it often shows accented letters as gibberish such as é. The download adds the UTF-8 BOM by default to prevent that. In countries where the decimal separator is a comma (much of Europe and South America), Excel expects semicolons between columns — choose Semicolon. Google Sheets and Numbers handle both automatically.

Why long numbers stay exact

JavaScript can store whole numbers exactly only up to 9,007,199,254,740,991. Many converters read JSON with JSON.parse and silently change longer IDs (Twitter/X IDs, order numbers, database keys). This tool reads the JSON text itself and writes such numbers exactly as they appear. Note that Excel itself shows only 15 significant digits, so format very long ID columns as Text after opening the file.

Converting back

Need the other direction? CSV to JSON reads a CSV file and rebuilds nested objects from dot-path headers like address.city, so a file made here converts back into the same structure.

Typical uses

Developers use JSON to CSV to hand API results to colleagues who work in spreadsheets, to check a large export at a glance, or to load records into a tool that only imports CSV, such as a mailing list, a CRM or an accounting package. Analysts use it to turn the JSON download of a web service into a table they can sort, filter and chart. Because the conversion happens on your own computer, it is also suitable for customer lists and other personal data that should not be pasted into an online service that uploads files.

Frequently asked questions

Is the JSON to CSV converter free and private?

Yes. It is free with no usage limits, and the conversion happens in your browser — your JSON is never uploaded.

What JSON can be converted?

An array of objects works best. A single object becomes one row, and an object that wraps one list (like {"results": [...]}) is converted from that list automatically.

How are nested objects handled?

They are flattened into columns named with dot paths, e.g. address.city and address.zip. CSV to JSON can turn those columns back into nested objects.

My accents look wrong in Excel — what can I do?

Keep “Excel-friendly (UTF-8 BOM) download” ticked and use the downloaded file instead of pasting. The BOM tells Excel the file is UTF-8.

Excel puts everything in one column. Why?

Your Excel uses semicolons as the list separator (common in Europe). Choose Semicolon as the separator and download again.

How large can the JSON be?

Files of several megabytes convert in a second or two. The preview shows the first 50 rows; the CSV contains all rows.

Are commas and quotes inside values a problem?

No. Values containing the separator, quotes or line breaks are quoted correctly, following the CSV standard (RFC 4180).

Related tools