ConverterNew

JSON to CSV Converter with Headers from Every Key

Convert JSON arrays to CSV format

100% client-side — your data never leaves your browserNo data stored or uploadedFree for lifetime · No signup

What does the JSON to CSV converter do?

It flattens a JSON array of objects into CSV: the header row is the union of every key that appears in any object, and each object becomes one row. Objects don't all need the same keys — missing fields simply come out as empty cells rather than failing the conversion. Values containing commas, quotes, or newlines are quoted and escaped per the CSV convention (" doubled to ""), so the output opens cleanly in Excel and Google Sheets.

Everything runs locally in your browser. API responses containing user records or order data are never uploaded or logged — the conversion is safe for data you couldn't paste into a third-party service.

When to use it

The classic scenario is handing engineering data to non-engineers: an API returns JSON, but the person who asked for the report lives in spreadsheets. Convert, hit Download CSV, and send them a file that opens directly in Excel.

It's equally useful for eyeballing data yourself. A 200-element JSON array is hard to scan for outliers; the same data as CSV drops straight into a spreadsheet where you can sort and filter. And because the header row is the union of all keys, it doubles as a quick schema check — an unexpected column name in the output means some objects in your array have keys you didn't know about, which is often the bug you were hunting.

Example

Paste [{"name": "John", "age": 30}, {"name": "Jane", "age": 25, "city": "Oslo"}] and Convert produces:

name,age,city John,30, Jane,25,Oslo

Note how the city column exists because one object has it, and John's row just leaves it empty. Nested objects and arrays are stringified into a single cell, so flatten deeply nested data first if you need one column per nested field. Use "Copy link to this result" to share a permalink that restores your exact input, or the companion CSV to JSON tool to go the other way.

How to use the JSON to CSV Converter with Headers from Every Key tool

  1. 1

    Paste a JSON array

    The input must be an array of objects — an API response body or a database export works well.

  2. 2

    Convert

    Headers are built from the union of all keys; missing fields become empty cells.

  3. 3

    Copy or download

    Copy the CSV text, or use Download CSV to save a file that opens directly in Excel or Google Sheets.

  4. 4

    Share if needed

    Copy a permalink that restores your exact input for anyone who opens it — the data stays in the link, not on a server.

Frequently asked questions

Why do I get "Input must be a JSON array"?

The converter needs an array of objects at the top level. If your API wraps results like {"data": [...]}, paste just the inner array. A single object can be converted by wrapping it in brackets: [{...}].

How are nested objects handled?

They're stringified into a single cell rather than expanded into columns. CSV is flat, so if you need one column per nested field, flatten the JSON first (e.g. turn user.address.city into a top-level user_city key).

Is my data sent to a server?

No. Conversion and the CSV download are generated entirely in your browser — nothing is uploaded, and permalinks carry the data in the URL fragment, which is never transmitted to the server.

Can I convert CSV back to JSON?

Yes — the companion CSV to JSON tool does the reverse: header row in, array of objects out, with selectable delimiters for semicolon and tab-separated files.

Related on TechLogHub

Get the next tool before you need it

One email a week: new and trending developer tools, fresh comparisons, and what shipped. Unsubscribe in one click.