FlipMyFormat

JSON to CSV Converter

Turn a JSON array into a spreadsheet. Nested objects are flattened into dotted columns, arrays are handled sensibly, and the output opens correctly in Excel.

Your data never leaves this page

JSON input

CSV output

People Also Use

How to Convert JSON to CSV

JSON is a tree; CSV is a grid. Converting between them means answering a question the data cannot answer for itself: what should happen to the nesting? A record with a nested address object and an array of tags has no natural row-and-column shape. This tool makes those decisions explicit rather than guessing, so you get a spreadsheet that actually reflects your data instead of a column full of [object Object].

1

Paste or load your JSON

An array of objects works best. If your JSON wraps the array in a data or results property, that is found automatically.

2

Decide how nesting is handled

Flatten nested objects into dotted columns, and choose whether arrays become one cell or several.

3

Convert and open in Excel

A preview table shows the first few rows. Download the file and it opens correctly, accents and all.

What Happens to Nested Data

Nested objects become dotted columns. A record containing role: { title, team } produces two columns named role.title and role.team. This is the convention most tools use, and it round-trips cleanly — our CSV to JSON converter can rebuild the nesting from those same dotted names.

Arrays are genuinely ambiguous, so you choose. Joining them into one cell separated by semicolons keeps the table narrow and is usually right for tags or categories. Splitting them into indexed columns gives you one column per item, which suits fixed-length arrays but produces a very wide table if the lengths vary. Keeping the raw JSON in a single cell preserves the data exactly, at the cost of readability.

One more thing worth knowing: records in a JSON array often have different shapes. This tool collects every key it finds across every record, so no field is lost just because the first record happened not to have it. Rows missing a field simply get an empty cell, and you are told how many were affected.

Getting It to Open Properly in Excel

Keep Excel-friendly encoding on

It adds a byte order mark, which tells Excel the file is UTF-8. Without it, accented characters and non-Latin scripts appear as mojibake.

Use semicolons for European Excel

In locales where the comma is the decimal separator, Excel expects semicolon-delimited CSV and will otherwise put every row in one column.

Long numbers may still be reformatted

Excel converts long digit strings to scientific notation on import. That is Excel's behaviour, not the file's - import as text if the IDs matter.

Check the preview before downloading

The table above the output shows the first few rows exactly as they will appear, which catches shape problems before you open anything.

Frequently Asked Questions

How do I convert JSON to CSV for free?

Paste your JSON or drop a file, choose how nesting should be handled, and click Convert. Free, no signup, nothing uploaded.

Is my data uploaded to a server?

No. The conversion runs entirely inside your browser, which matters when the JSON contains API responses or customer records.

What happens to nested objects?

They are flattened into dotted column names, so role.title and role.team become separate columns. Turn flattening off and they become raw JSON in one cell.

How are arrays handled?

You choose: joined into one cell with semicolons, split into indexed columns, or kept as raw JSON text. Joining suits tags, indexing suits fixed-length arrays.

Why does my CSV look wrong in Excel?

Usually the delimiter. European Excel expects semicolons rather than commas. Switch the delimiter and it will open into proper columns.

Why are accented characters broken?

Excel needs a byte order mark to recognise UTF-8. Keep the Excel-friendly encoding option on and it displays correctly.

What if my records have different fields?

Every key found across every record becomes a column. Rows missing a field get an empty cell, and you are told how many were affected.

My JSON is not a plain array - will it work?

Yes. If the array is wrapped in a property such as data, items or results, it is found automatically. A single object becomes a one-row CSV.

Can I convert the CSV back to JSON?

Yes, with our CSV to JSON tool. Tick Nest dotted columns there and the nesting is rebuilt from the dotted column names.

Is there a file size limit?

Files above about 20 MB are rejected because browser processing becomes very slow. Use an extract or a command-line tool for larger data.

Does it escape quotes and commas correctly?

Yes. Fields containing the delimiter, quotes or line breaks are quoted and escaped per RFC 4180, so nothing breaks on import.

Is this JSON to CSV converter really free?

Completely free, with no limits, no signup and no premium wall. Everything runs in your browser.

Last updated: July 21, 2026 · FlipMyFormat JSON to CSV
Written and maintained by the FlipMyFormat team