Overview
Two formats dominate everyday data work, and they barely speak to each other. Applications and APIs trade in JSON, because it handles nested structure gracefully. People, on the other hand, think in tables — so spreadsheets, reports and most import wizards all expect CSV. Moving records between the two by hand is slow work, and a single stray comma can quietly shift a whole row's values one column to the left.
This converter does the translation carefully and in both directions. Going from JSON to CSV, it reads an array of objects, gathers every key that appears anywhere in the set, and uses those keys as the column headings — so extra fields are never lost, and missing ones simply leave a blank cell. Values are quoted exactly when the CSV rules require it, never more, never less. Flip the toggle and the same page reads CSV back into a JSON array, treating the first row as keys.
What is CSV?
CSV stands for comma-separated values, and it is about as simple as a data format gets: plain text, one record per line, with the fields in each record separated by commas. The first line usually names the columns, and every line after it holds one row of data in the same order. There is no styling, no formulas and no structure deeper than the table itself — which is precisely why nearly every tool built in the last forty years can read it.
The one subtlety is escaping. When a field itself contains a comma, a quotation mark or a line break, the field is wrapped in double quotes, and any quote inside it is doubled. This one follows the convention strictly, so addresses, notes and product descriptions survive the trip intact.
Features
- Union of all keys — every property found in any object becomes a column, in the order keys first appear, so nothing is silently dropped.
- Correct CSV escaping — fields containing commas, quotes or newlines are wrapped in quotes with inner quotes doubled, following the standard convention.
- Two-way conversion — a mode toggle converts CSV back into JSON, reading the header row as property names.
- Nested values kept safe — an object or array stored inside a field is written as compact JSON text in that cell.
- Clear shape errors — if the JSON is not an array, or a CSV file has no data rows, the status line says exactly what shape was expected.
- Copy and download — take the output to the clipboard, or save it as a .csv or .json file with one click.
- Scalar arrays handled — a simple list of numbers or strings converts to a single-column sheet headed "value".
- Fully local processing — parsing and writing both happen in this tab; your records are never uploaded.
Benefits
- Spreadsheet-ready in seconds — API output becomes a file Excel, Sheets or LibreOffice opens without complaint.
- No silent data loss — the union-of-keys rule means extra fields surface as columns instead of vanishing.
- Fewer broken imports — strict quoting keeps commas inside addresses and notes from tearing rows apart.
- Private by design — customer lists and order exports stay on your machine throughout the conversion.
- Round trips work — because the reverse direction is built in, you can edit a sheet in a spreadsheet and bring it back as JSON.
Who can use it
Analysts and operations staff use it to turn API responses and database exports into something they can sort, filter and chart. Developers use it to prepare sample data, migrate records between systems, or hand non-technical colleagues a file they can actually open. Shop owners converting product feeds and support teams exporting ticket lists run into the same wall daily.
How to use it
- Leave the direction on JSON → CSV, or flip it if you are starting from a spreadsheet file.
- Paste your data into the input box. For JSON, it must be an array, ideally of objects that share most of their keys.
- Press Convert and read the status line — it reports how many rows and columns came out, or explains what shape it expected instead.
- Skim the output for anything surprising, such as a field you did not know existed becoming its own column.
- Copy the result, or download it as a file and open it in your spreadsheet or editor of choice.
Frequently asked questions
What shape of JSON does the converter accept?
An array at the top level. Ideally its items are objects — each object becomes one row and its keys become the columns. A plain list of numbers or strings also works and produces a one-column sheet. A single object on its own is refused, with a message explaining the array it expected, because one object is a record rather than a table.
What happens when objects in the array have different keys?
Every key from every object gets a column. Where an object lacks a key that another one has, its cell in that column is simply left empty. Nothing is thrown away.
How are commas and quotation marks inside values handled?
By the book. Any field containing a comma, a double quote or a line break is enclosed in double quotes, and each quote inside the field is written twice. So a note like He said "ready, ship it" lands in a single cell exactly as written.
What happens to nested objects or arrays inside a field?
They are written into the cell as compact JSON text. CSV has no way to represent structure deeper than a table, so keeping the nested value as JSON preserves all of it in a form that can be parsed again later, instead of flattening it into a meaningless "[object Object]".
When I convert CSV back to JSON, what types do the values get?
They all arrive as strings, because CSV itself carries no type information — a spreadsheet cell holding 42 and one holding "42" look identical in the file. If your next step needs real numbers or booleans, convert them after the import, where you can see the data and decide field by field.
Is my data uploaded anywhere during conversion?
No. Both parsers and both writers run as JavaScript on this page. Disconnect from the network after loading and the converter still works, which is the simplest proof that your records never leave the device.
Conclusion
Formats should serve the work, not block it. This converter keeps the translation between JSON and CSV boring in the best possible way: every key accounted for, every quote in its place, and the whole job finished. Your data stays yours from start to finish.