CSV to JSON Converter
Convert CSV to JSON, handling quoted commas properly.
Everything is processed in this tab. Nothing you paste is sent anywhere.
Every tool runs entirely in your browser. Your files are never uploaded to a server.
CSV to JSON turns rows into objects keyed by the header. The part that matters is quoting: a field containing a comma is wrapped in quotes, so splitting on commas breaks most real data.
How to use CSV to JSON Converter
- Paste your CSV. Including the header row, if it has one.
- Set the delimiter. Semicolon is common in European exports, where the comma is a decimal separator.
- Copy the JSON. Numeric conversion is optional and off by default, for good reason.
About converting CSV to JSON
CSV is barely a format. There is an RFC describing it, published years after the convention was already in wide use, and a great deal of real-world CSV does not follow it. The parts that are agreed: fields are separated by a delimiter, a field containing the delimiter or a line break is wrapped in double quotes, and a literal double quote inside a quoted field is written twice. Any parser that splits on commas fails the second rule and therefore fails on most data containing addresses, names or free text. What is not agreed is nearly everything else. The delimiter itself varies by locale, because countries using the comma as a decimal separator export with semicolons, which is why the same spreadsheet opens correctly in one place and as a single column somewhere else. Character encoding is rarely declared, so a file with accented names may arrive as mojibake. Line endings differ. And there is no type information at all: every value is text, which is why automatic numeric conversion is a data-loss risk rather than a convenience. A leading-zero postcode, a version string like 1.10, and an identifier longer than fifteen digits are all silently altered by a converter that guesses.
Frequently asked questions
Why does my CSV break when a field contains a comma?
Why is numeric conversion off by default?
My European CSV uses semicolons — is that valid?
What if rows have different numbers of columns?
Last updated