Skip to content
1001 Tools
sr
Developer tools

CSV to JSON Converter

Paste CSV and get clean, indented JSON. By default the first row becomes the object keys; turn that off for an array of arrays. You can also let it detect numbers and true/false. Everything runs in your browser, so nothing is uploaded.

JSON output

How it works

The parser follows the standard CSV rules: fields may be wrapped in double quotes, quotes inside a field are written as two quotes, and a quoted field can even contain commas or line breaks. It works with comma, semicolon or tab delimiters, and accepts both Windows (CRLF) and Unix (LF) line endings.

With “first row is header” on, each remaining row becomes an object keyed by the header names. With it off, you get an array of string arrays. Type parsing is optional and conservative: it converts clean integers and decimals to numbers and true/false to booleans, but leaves things like 007 or +1 385 as strings so IDs and phone numbers survive intact.

Practical examples

A contacts export

id,name\n1,Mila\n2,Petar becomes [{"id":"1","name":"Mila"},{"id":"2","name":"Petar"}] — ready to drop into an API request or a config file.

Turning on type parsing

With type parsing enabled, price,inStock\n9.99,true yields {"price":9.99,"inStock":true} — numbers and booleans instead of quoted strings.

A semicolon file from Excel

Serbian Excel exports use “;”. Switch the delimiter to semicolon and a,b;1,2-style rows split into the right columns instead of one long field.

Frequently asked questions

Does the first row have to be a header?

No. Keep “first row is header” on to map columns to object keys, or turn it off to get a plain array of arrays where every row, including the first, is data.

When should I enable type parsing?

Enable it when your data is genuinely numeric or boolean and you want real JSON numbers and true/false rather than quoted strings. Leave it off when you have codes, IDs, or phone numbers that must keep leading zeros or symbols.

Why did 007 stay a string even with parsing on?

Type parsing deliberately ignores values with leading zeros, plus signs, or spaces, because those are almost always identifiers rather than quantities. Only clean integers and decimals like 42 or -3.5 become numbers.

What delimiters are supported?

Comma, semicolon and tab. Comma is the international norm; semicolon is common in European locales including Serbian Excel; tab suits data copied straight out of a spreadsheet.

Can fields contain commas or line breaks?

Yes, as long as they’re wrapped in double quotes, per the CSV standard. A field like "Doe, Jane" is read as a single value, and quotes inside it are written as "".

What happens if a row has fewer columns than the header?

Missing trailing values become empty strings, so every object still has all the header keys. This keeps the output uniform and safe to iterate over.

Is my data sent to a server?

No. Parsing happens entirely in your browser with JavaScript, so it’s safe to convert private or internal spreadsheets.

How do I convert the JSON back to CSV?

Use our JSON to CSV converter — it takes the array of objects you get here and turns it back into CSV with your chosen delimiter.

Related tools