JSON ⇄ CSV Converter
Convert JSON to CSV and CSV to JSON instantly in your browser. Handles arrays of objects, nested keys, quoted fields, and custom delimiters. Copy or download the result — your data is never uploaded.
How to Use
- Paste JSON (an array of objects) on the left, or CSV on the right.
- Click “JSON → CSV” or “CSV → JSON” to convert.
- Pick a delimiter (comma, tab, or semicolon) if your CSV uses something other than commas.
- Copy the result or download it as a .csv or .json file.
- Everything runs in your browser — your data never leaves the page.
Two formats, one job
JSON and CSV are the two formats data spends most of its life in. JSON is how programs talk to each other — nested, typed, and self-describing, the native tongue of APIs and config files. CSV is how humans and spreadsheets handle data — a flat grid of rows and columns that opens in Excel, Google Sheets, or any database import. The trouble is they do not convert cleanly by hand: JSON nests, CSV does not; CSV needs careful quoting for any value containing a comma, quote, or line break; and a stray newline inside a field will silently shift every column if the parser is naive. This converter handles all of that for you in both directions, so you can move data from an API straight into a spreadsheet, or take a colleague’s exported sheet and turn it into clean JSON for your code.
How the conversion works
Going JSON to CSV, the tool expects an array of objects (a single object is treated as one row). It scans every object to build the complete set of column headers — so objects with different fields still line up correctly — then writes one row per object, flattening any nested object into dotted column names like address.city and JSON-encoding any arrays into their cell. Every value that contains your delimiter, a double quote, or a newline is quoted and escaped per the RFC 4180 standard, so the output survives reopening without corruption. Going CSV to JSON, a proper parser reads the text character by character, respecting quoted fields that may themselves contain commas and line breaks, and uses the header row (if present) as the object keys; numbers and booleans are detected and converted to real JSON types rather than left as strings. Pick the matching delimiter for tab- or semicolon-separated files, and the same rules apply.
About this converter
Paste into either side, convert, and copy or download the result. It runs entirely in your browser — no upload, no size limit beyond your device’s memory, and nothing is stored. For pretty-printing or validating JSON on its own, use the JSON Formatter; to browse a CSV as a table, try the CSV Viewer.
About the JSON ⇄ CSV Converter
Whether you are at a desk or on your phone, the JSON ⇄ CSV Converter makes web development and data tasks easy — and it is completely free. Convert JSON to CSV and CSV to JSON instantly in your browser. Handles arrays of objects, nested keys, quoted fields, and custom delimiters. Copy or download the result — your data is never uploaded.
How it works
Enter a number and choose your units — the converted value shows instantly. Everything runs locally, so nothing you type leaves your device. Double-check the direction of the conversion and you are set.
Want the deeper story? The Knowledge Base explains the ideas behind the tools in more detail.
Frequently Asked Questions
What JSON shape can I convert to CSV?
The cleanest input is an array of flat objects — for example [{"name":"Ann","age":30},{"name":"Ben","age":25}] — which becomes a table with one row per object. The converter takes the union of all keys as the column headers, so objects do not all need the same fields. Nested objects are flattened using dotted keys (address.city), and arrays inside a value are JSON-encoded into the cell. A single object becomes a one-row CSV.
Does it handle commas and quotes inside values?
Yes. When writing CSV, any value containing the delimiter, a quote, or a newline is wrapped in double quotes and internal quotes are doubled, exactly as the CSV standard (RFC 4180) requires. When reading CSV, the parser correctly handles quoted fields that contain commas and line breaks, so round-tripping data does not corrupt it.
Can I use tabs (TSV) or semicolons?
Yes — choose the delimiter from the dropdown. Tab-separated values are common when exporting from spreadsheets, and many European locales use semicolons because the comma is a decimal separator. The same delimiter is used for both directions.
Is my data uploaded anywhere?
No. All parsing and conversion happen locally in your browser with JavaScript. Nothing you paste is sent to a server, logged, or stored.
How do I use the JSON ⇄ CSV Converter?
Simply type or paste your value and read the result, which refreshes the instant you change something. There is nothing to submit and nothing to wait for.
Is it free? Does it work without internet?
Yes to both. It is free with no sign-up, and once the page has loaded it keeps working even with no internet.
Where does my data go?
Nowhere — every calculation runs on your own device. Nothing you enter is uploaded, logged, or stored.
Common Use Cases
API data into a spreadsheet
Turn a JSON response from an API into CSV you can open in Excel or Google Sheets.
Spreadsheet into code
Convert an exported CSV into a JSON array you can drop straight into an app or config.
Quick data cleanup
Round-trip messy data between formats to normalise columns and headers.
Seed and fixture data
Build test fixtures by editing a spreadsheet and converting it to JSON.
Last updated: