CSV to JSON
Paste your CSV and get a clean JSON array instantly. Supports comma, semicolon and tab delimiters. Numbers and booleans are auto-detected. Everything runs in your browser.
Frequently Asked Questions
What output format does the converter produce and what are the alternatives?▾
The default output is an array of objects, where each CSV row becomes a JSON object and each column header becomes a key: [{"name": "Alice", "age": "30"}, ...]. Alternative formats include: a single object using the first column as the key (useful for lookup tables); an array of arrays (raw rows without header mapping, for matrix data); and NDJSON (one JSON object per line, no surrounding array, useful for streaming large datasets into log processors or databases).
Does the converter know that 42 is a number and not a string?▾
By default, most converters treat every CSV cell as a string because CSV has no type system. 42 becomes "42", true becomes "true", and 3.14 becomes "3.14". Better tools offer a 'parse numbers' option that applies numeric type coercion to cells that look like numbers. Use this cautiously: phone numbers, ZIP codes (like 07030), and product codes that start with zeros must remain strings. Alternatively, apply a schema-based cast after conversion in your code.
What happens if my CSV file has no header row?▾
Without a header row, most tools either generate auto-incrementing keys (field0, field1, field2) or allow you to manually specify column names. If the tool assumes the first row is always a header and your file lacks one, the first data row is silently treated as column names, corrupting all the data. Always confirm whether your CSV has headers before converting, especially when the file was exported from a system that optionally includes them.
How are quoted fields with embedded newlines handled?▾
RFC 4180 allows a CSV field to contain a literal newline character if the entire field is enclosed in double quotes. Most CSV parsers handle this correctly, but simple line-by-line string-splitting implementations (common in quick scripts) will break such files, treating the embedded newline as a row boundary and producing malformed rows. A correct converter uses a proper CSV state-machine parser that tracks whether it is inside a quoted field before treating a newline as a record separator.
Can I create nested JSON from a flat CSV using column naming conventions?▾
Some tools support a slash or dot convention in column headers to produce nested output. A CSV with headers user/name and user/address/city produces {"user": {"name": "...", "address": {"city": "..."}}}. This is useful for generating structured config or API payload JSON from spreadsheet data. Without this feature, post-processing the flat JSON with a script to nest the relevant fields is the alternative.