JSONBeeby Candorbees

JSON to CSV converter

JSON to CSV, after you've seen what's in it.

Most converters flatten your JSON blind and hand you a file. JSONBee shows each array as a table first, so you can filter, sort and check it, then download exactly those rows as CSV.

Drop a JSON file here

or ·

Free at any file size · No sign-up · Your data stays in your browser

harbor-point-offices.json · one of its arrays
"llm_calls": [
  { "call_index": 1, "purpose": "completeness_check",
    "model": "claude-haiku-5-5", "input_tokens": 764,
    "files_sent": [], "estimated_cost_usd": 0.001694 },
  …
llm-calls.csv · as downloaded
Call index,Timestamp,Purpose,Section ID,Model,Input tokens,…,Estimated cost USD
1,2026-10-14T09:42:05.318204+00:00,completeness_check,DP-07,claude-haiku-5-5,764,…,0.001694
2,2026-10-14T09:42:06.588204+00:00,language_detect,DP-07,claude-haiku-5-5,861,…,0.000881
Real output from the sample. The file's two arrays become two tables, each with its own CSV. "Files sent", an array inside each call, opens as a child table instead of a cell full of brackets.
I
How it converts

How JSON becomes CSV rows and columns

CSV is flat and JSON isn't. The useful question is where to cut, and the answer depends on your data, so you see the cut before you download it.

  • One table per array. Every array of objects becomes a table, named after its key. A file with orders and customers gives you two CSVs, not one tangled one.
  • Nested objects become columns. {"usage": {"input_tokens": 764}} becomes a column called "Usage · Input tokens".
  • Nested arrays become child tables. They aren't crammed into a cell as text; you drill into them row by row.
  • A top-level array works too. A file that is just [{…}, {…}] is one table, and so is a JSON Lines file.
II
Before you download

Filter and sort, then export only what you need

The CSV is the table as you left it: every page of it, with your filters and sort order applied.

  • Filter by any field. Search every value, pick categories, set number ranges or dates, or click a chart bar to filter the rest.
  • Sort by any column. The download keeps the order.
  • Check the data first. Automatic insights point out duplicate rows, outliers and totals that don't add up, before they reach your spreadsheet.
  • Chart data too. Any chart's numbers download as CSV, and the chart itself as PNG.
III
In the spreadsheet

A CSV that opens cleanly in Excel and Google Sheets

Small details decide whether a CSV opens as a table or as a mess.

  • Raw values. 0.001694 stays 0.001694, not "$0.00". Dates stay in their original form.
  • Proper quoting. Commas, quotes and line breaks inside values are quoted the standard way (RFC 4180).
  • Formula-safe. Text starting with =, +, - or @ gets an apostrophe in front, so a spreadsheet shows it instead of running it.
  • Readable headers. Column names are written for people: "Estimated cost USD", not estimated_cost_usd.
?
Questions

JSON to CSV FAQ

How do I convert JSON to CSV?
Drop your JSON file on this page or open it in the app. Every array of objects in it becomes a table. Filter or sort the table if you want only some rows, then click "Download CSV" above it.
What happens to nested JSON?
Objects nested inside each row become columns, named by their path, like "Usage · Input tokens". Arrays nested inside each row are not squeezed into one cell: they open as child tables you can drill into, because one row with many sub-rows doesn't fit a flat CSV.
My JSON has several arrays. Which one is exported?
Each top-level array of objects gets its own table with its own download, so you get one CSV per table, named after it. A chart's data can be downloaded as CSV too.
Will Excel or Google Sheets open the CSV correctly?
Yes. The file has a header row, quotes where needed, and raw values rather than display formatting, so numbers stay numbers. Text that starts with =, +, - or @ is prefixed with an apostrophe so a spreadsheet doesn't run it as a formula.
Can I convert JSON Lines or NDJSON to CSV?
Yes. Each line becomes a row of the table, and the table downloads as CSV the same way.
Is my JSON uploaded anywhere?
No. The conversion runs in your browser, and the CSV is created on your machine.
Is it free?
Yes, at any file size and with no account.

See the table, keep the rows you need, take them to the spreadsheet.