CSV Input
JSON Output
Frequently asked questions
How do I convert CSV to JSON?
Paste your CSV data into the left panel. The tool automatically detects the header row and converts each row into a JSON object using the headers as keys. The result appears in the right panel instantly. You can also drag and drop a .csv file directly onto the input area.
What delimiters are supported?
The tool supports comma (,), semicolon (;), tab (\t), and pipe (|) delimiters. If your CSV uses semicolons — common in European locales where commas are used as decimal separators — select Semicolon from the delimiter options.
What is the difference between array of objects and array of arrays output?
Array of objects ([{}]) uses the header row as keys, producing [{"id":1,"name":"Alice"},...]. This is the most useful format for APIs and JavaScript. Array of arrays ([[]] ) outputs raw rows including the header, like [["id","name"],[1,"Alice"],...]. Use 2D arrays when you want to preserve the raw structure or process it yourself.
Does this tool handle quoted fields and commas inside values?
Yes. The CSV parser correctly handles RFC 4180 quoting — fields wrapped in double quotes can contain commas, newlines, and escaped double quotes (""). For example: "Smith, John" will be parsed as a single field Smith, John.
How do I convert CSV to JSON in JavaScript?
A simple approach: split by newlines to get rows, split each row by the delimiter to get fields, use the first row as headers, then map remaining rows to objects with Object.fromEntries(). For robust handling of quoted fields, use a library like Papa Parse (papaparse.com) or the logic shown in this tool.
Is my CSV data sent to a server?
No. All conversion happens entirely in your browser using JavaScript. Your CSV data is never uploaded or sent anywhere.