CSV to JSON
CSV is what spreadsheets export and JSON is what APIs and code want, and the conversion breaks on the same details every time: commas hiding inside quoted cells, semicolon delimiters from European exports, and numbers that arrive as strings. This converter handles all three - quoted values are parsed properly, the delimiter is sniffed from the header row, numeric cells are typed as JSON numbers - and shows the result as clean, copyable JSON.
The first row becomes object keys, so 'name,role' headers yield {"name":..., "role":...} records. Everything runs locally in your browser: customer exports and spreadsheet data never leave the page. Your last CSV is remembered for iteration, and the tool sits between the JSON formatter and Base64 decoder in the data-tools corner of the site.
How to use
- Paste CSV with headers in the first row - commas, semicolons or tabs.
- Read the JSON array - records, columns, delimiter and numeric-cell count update live.
- Copy the output, or tweak the CSV and watch it reconvert.
Frequently asked questions
How are commas inside values handled?
Properly - cells wrapped in double quotes keep their commas, and doubled quotes inside quoted cells become literal quotes (the CSV escaping rule). Only unquoted commas split cells, which is exactly how standards-compliant CSV parsers behave.
How do numbers become JSON numbers?
Cells matching a numeric pattern (optional sign, digits, decimal, scientific notation) are emitted unquoted and become real JSON numbers; everything else stays a string. Need '123' as a string? Quote it in the CSV or fix it after - the note line counts what was typed.
Does it detect semicolon or tab delimiters?
Yes - the header row is scanned for commas, semicolons and tabs, and the most frequent wins. European Excel exports (semicolon CSVs) and TSVs paste straight in; the delimiter stat shows what was detected.
Is my data uploaded anywhere?
No - parsing happens in your browser with zero network calls, the same guarantee as every text tool here. For customer lists and financial exports, local-only is not a feature, it is the requirement.