CSV to JSON Converter
Paste CSV or load a file to get a JSON array. The parser follows RFC 4180, so quoted cells with embedded commas, line breaks and doubled quotes survive intact. Everything runs locally.
What the parser handles
Comma, tab, semicolon and pipe delimiters, double-quoted fields, "" escapes inside quotes, mixed CRLF/LF/CR line endings, a leading UTF-8 BOM, empty cells and a trailing newline.
Header handling
With a header row, the first line becomes object keys. Duplicate or empty column names are made unique automatically (name_2, column3) so no column is silently dropped. Without a header you get an array of arrays.
Type inference
Enable inference and numeric cells become numbers, true/false become booleans and empty cells become null. Turn it off to keep zero-padded values such as postal codes as strings.
Frequently asked questions
Can it handle cells with line breaks?
Yes. A line break inside a quoted cell is kept as part of the value and does not split the row.
Can I use a delimiter other than comma?
Tab, semicolon and pipe are all available, which covers semicolon-separated exports from European Excel.
What shape is the JSON?
With a header row: [{"column": "value", ...}, ...]. Without: [["value", "value"], ...]. Output is indented with two spaces.
Does it work with large files?
Tens of thousands of rows are fine, limited only by browser memory. There is no row limit or server round-trip.