Free tool
Convert CSV to JSON
Drop a CSV and download a JSON file with one record per row, named by your header row.
| name | zip | qty | vip |
|---|---|---|---|
| Ana | 02134 | 2 | TRUE |
| Ben | 10001 | FALSE |
[
{
"name": "Ana",
"zip": "02134",
"qty": 2,
"vip": true
},
{
"name": "Ben",
"zip": "10001",
"qty": null,
"vip": false
}
]How to convert CSV to JSON by hand
Excel can't save a file as JSON. By hand, for a short file:
- Start a text file with [ on the first line.
- Write each row as {"Header": "value", …}, using your header row's names, with a comma after every row but the last.
- Leave numbers and true/false without quotes, and write an empty cell as null.
- End with ] on the last line and save the file as UTF-8 with the .json extension.
Or drop the file at the top of this page and skip these steps.
Questions
Is my file uploaded?
No. The file is read and converted by this page inside your browser tab. Nothing is sent to a server.
What does the JSON look like?
An array with one record per row, named by your header row: [{"name": "Ana", "qty": 2}]. Columns holding only numbers or only true/false keep that type, empty cells become null, and codes like 02134 stay text. A header like address.city stays one name; it is not turned into nesting.
Will my accents and separators be read?
Yes. The page reads files saved as UTF-8 or in the older Windows format Excel uses, and it finds the separator (comma, semicolon, tab or bar) for you.
Is there a size limit?
Up to 50 MB and about 20 million cells (rows times columns) per file. A bigger file is refused whole, never cut short, because a browser tab runs out of memory.
More from DocTransform
Convert a file
- Convert JSON to CSV
- Convert CSV to Excel
- Convert Excel to CSV
- Convert JSON to Excel
- Convert Excel to JSON