CSV ↔ JSON Converter
Convert between CSV and JSON instantly — choose the delimiter, toggle headers, flatten or nest fields — entirely in your browser.
Advanced options
Drag and drop a .csv, .json, or .txt file here
Converting between CSV and JSON without a server
CSV and JSON solve the same problem — moving structured data between systems — in two very different shapes. CSV is a flat table: rows and columns, nothing more, which is why every spreadsheet app, database export, and legacy system speaks it fluently. JSON is a tree: objects can nest inside objects, arrays can hold anything, which is why every modern API and JavaScript codebase speaks it instead. The moment you need to load a spreadsheet into an API, or turn an API response into something you can open in Excel, you're stuck translating between the two — and getting that translation exactly right (quoted fields with embedded commas, escaped quotes, nested objects that don't map to a single column) is easy to get subtly wrong by hand.
This tool runs the conversion entirely in your browser using a battle-tested CSV parser, so the data you paste — which might be a customer export, an internal report, or an API response you'd rather not hand to a third-party website — never leaves your machine. There's no upload step, no server round-trip, and no size limit imposed by a network request; it's the same engine either direction. Keep in mind that CSV has no types: by default every CSV value becomes a JSON string (so a swap round trip turns numbers into strings and flattens nested data), unless you enable the option to parse numbers, true/false and null.
Pick your delimiter (comma, semicolon, tab, or any custom character — handy for European-locale CSV exports that use semicolons, or pipe-delimited legacy exports), toggle whether the first row holds column names, and decide whether nested JSON keys like `address.city` should become one flattened CSV column or be rebuilt into a nested object on the way back to JSON. Pretty-print the JSON output for readability or leave it minified for pasting straight into code. If your CSV has a malformed quote or an inconsistent row, the parser tells you exactly which row failed instead of silently producing garbage.
Drag a file straight onto the drop zone or paste text directly — both work identically. Once you're happy with the result, copy it to your clipboard or download it as a ready-to-use `.json` or `.csv` file. If you need to reshape the JSON output further, or validate it against a schema, the JSON Formatter & Validator is a natural next stop; if you're working with API tokens rather than tabular data, the JWT Decoder and Base64 Encode/Decode tools cover that side of the developer-tools toolbox.
Frequently asked questions
Can I convert JSON back to CSV as well as CSV to JSON?
Yes — switch direction anytime with the Swap button, using the same delimiter and header settings.
Does it support semicolons or tab-delimited files?
Yes — choose comma, semicolon, tab, or any custom single-character delimiter.
Can I preview the data before converting?
Yes — a table preview shows the detected rows and columns before you commit to the full conversion.