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
Paste a JSON array
The input must be an array of objects — an API response body or a database export works well.
- 2
Convert
Headers are built from the union of all keys; missing fields become empty cells.
- 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
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
Related Converter Tools
Unix Timestamp Converter with Milliseconds
Convert Unix timestamps to human-readable dates and vice versa
ENV to JSON
Convert .env files to JSON format
ENV to Docker Compose
Convert .env files to docker-compose environment snippet
Query String to JSON
Parse URL query strings into JSON objects
JSON to Query String
Convert JSON objects to URL query strings
CSV to JSON Converter with Semicolon and Tab Delimiters
Convert CSV data to JSON array format
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.

