How to convert CSV to JSON
- Pick the CSV export. Tab-separated TSV and .txt exports are accepted as well.
- Keep Detect automatically for the delimiter; set it by hand only if the columns come out wrong.
- Choose whether numbers should become real JSON numbers, then convert and save the .json file.
Exports from European and older systems
Accounting and HR packages set up for Germany, France, Spain or Brazil usually write semicolons between fields, because the comma there is the decimal separator. The converter tests comma, semicolon, tab and pipe on the opening rows of the file and goes with whichever splits them into equal column counts.
Older Windows software often saves CSV in the Windows-1252 code page rather than UTF-8. When the bytes are not valid UTF-8, they are read as Windows-1252, so names such as Müller or Gonçalves arrive intact instead of as question marks.
Account numbers and postcodes stay as written
Converting a whole column to numbers would turn the postcode 01067 into 1067 and an IBAN-style reference into a rounded float. Typing therefore judges each column as a whole: a column is converted only if all of its non-empty cells hold plain numbers. Anything with a leading zero or more than 15 significant digits stays text.
If you want no guessing at all, untick the number option and every value is written as a string exactly as it appears in the file.
Quotes, line breaks and uneven rows
Comment fields from a CRM often contain commas and several lines of text. Such values are wrapped in double quotes in a proper CSV, and the reader handles them by the RFC 4180 rules, including quotes doubled inside the text.
A row with fewer cells than the header is filled with empty strings, extra cells get keys named after their column position, and empty lines at the end of an export are ignored.
Questions
What if two columns have the same title?
The second one gets a suffix, for example Phone_2, so neither value is overwritten.
Is the export sent to your server?
No. This tool works in the browser; unlike the Office conversions on this site, it does not upload anything.
Can I skip the header row?
Yes. Untick the header option and each row is written as a plain list of values.