JSON to CSV Converter

Convert JSON to CSV online for Excel or Google Sheets. Flattens nested objects and detects headers automatically. Free, and your data stays in your browser.

Rate this tool
Formatted CSV will appear here...

About this tool

Turn JSON — an API response, a database export, a log dump — into CSV that opens straight in Excel or Google Sheets, with nested objects flattened and headers detected automatically. It's the bridge between developer-shaped data and the spreadsheet the rest of the team actually wants.

How to Convert JSON to CSV

  1. 1

    Paste your JSON — typically an array of objects, the shape most APIs and exports produce.

  2. 2

    The converter detects the columns across all records, flattens nested structures into dotted column names, and handles objects whose keys differ from record to record.

  3. 3

    Download or copy the CSV and open it in any spreadsheet application for sorting, filtering, and sharing.

Why Convert with Wrklyst

Business Data Stays Internal
Conversion executes in your browser, so the customer records or metrics you're transforming never appear on an external server.
Handles Real-World JSON
Actual API data is messy — missing keys, nested objects, inconsistent records. The flattening logic absorbs that instead of erroring on it.
No Script Needed
Replaces the ten-line Python script you'd otherwise write, without needing Python, for free, immediately.

JSON-to-Spreadsheet Tips

  • Validate the JSON first (our JSON Formatter) — a syntax error explains most failed conversions.
  • Grab the array from inside API wrappers like {"data": [...]} for the cleanest table.
  • Numeric IDs over 15 digits lose precision in Excel — import those columns as text.
  • Spot-check a few rows against the source JSON before sending the sheet onward.

Frequently asked questions

How are nested JSON objects represented in CSV?

CSV is flat, so nesting is flattened into compound column names: {"user": {"name": "Kim"}} becomes a column called user.name. This preserves every value while producing a genuinely tabular file. Deeply nested structures yield long column names — informative, if occasionally unwieldy.

What happens when records have different fields?

The converter unions all keys found across every record into the header row; records lacking a given field simply have an empty cell there. This mirrors how real API data behaves — optional fields present on some objects only — and produces a spreadsheet where every value lands in its correct column.

What JSON shape converts best?

An array of objects — [{...}, {...}] — maps perfectly: each object becomes a row, each key a column. A single object converts to a one-row table. JSON whose top level is a deeply irregular tree rather than a list doesn't have a natural tabular form; extract the array portion you care about first.

Why does Excel mangle my converted data?

Excel aggressively reinterprets values on open: long numbers become scientific notation, leading zeros vanish from ZIP codes, and date-like strings get reformatted. The CSV itself is correct — use Excel's import wizard with columns set to Text, or open in Google Sheets, to keep values verbatim.

Guides for JSON to CSV