CSV to JSON Converter
Turn spreadsheet data into JSON — privately
This CSV to JSON Converter turns comma-separated data — exports from Excel, Google Sheets, databases, CRMs — into a JSON array of objects, using the first row as keys. It handles the tricky parts properly: quoted fields containing commas, escaped quotes, and line breaks inside cells (RFC 4180), which naive split-by-comma converters get wrong.
Pick the delimiter (comma, semicolon, or tab — European Excel exports often use semicolons), and optionally auto-convert numeric strings to real numbers and true/false to booleans, so the JSON is ready for your API or script without post-processing.
As always: the conversion runs entirely in your browser. Customer lists and financial exports never leave your device — paste, convert, copy. Need to clean up the result? Our JSON formatter validates and re-indents it.
Example
Input CSV:
name,age,city
Maria,29,Athens
"Nikos, Jr.",34,Patras
Output: [{"name":"Maria","age":29,"city":"Athens"},{"name":"Nikos, Jr.","age":34,"city":"Patras"}] — note the quoted comma in "Nikos, Jr." survives intact, and ages became numbers.
Frequently Asked Questions
How do I convert a CSV file to JSON?
Open the CSV in any text editor (or the spreadsheet itself), copy the contents, paste above, and click Convert. The first row becomes the JSON keys and each following row becomes an object. Copy the result with one click.
How do I convert an Excel or Google Sheets file to JSON?
Export it first: File → Save As → CSV in Excel, or File → Download → Comma Separated Values in Sheets. Then paste the CSV here. Note that Excel in many European locales exports with semicolons instead of commas — select the Semicolon delimiter if columns aren't splitting.
Why are all my columns ending up in one field?
Wrong delimiter. European Excel versions export 'CSV' with semicolons (because the comma is the decimal separator), and some exports use tabs. Switch the delimiter button to Semicolon or Tab and convert again.
Does this handle commas inside values?
Yes — fields wrapped in double quotes are parsed per RFC 4180, so "Athens, Greece" stays one value, embedded "" become literal quotes, and even line breaks inside quoted cells survive. This is exactly what naive converters that just split on commas get wrong.
Is it safe to paste customer data into this converter?
Yes — parsing and conversion run entirely in your browser; nothing is transmitted or stored anywhere. That's the point: CSV exports are usually full of names, emails and financials that shouldn't be uploaded to a random converter site.
What JSON structure does the converter produce?
An array of flat objects — one per data row, keyed by the header row: [{"name":"Maria","age":29}, …]. That's the format REST APIs, JavaScript code, and most import tools expect. Nested JSON requires custom mapping logic beyond what CSV can express.
What does the 'Parse numbers' option do?
It converts values that look like numbers into JSON numbers (29 instead of "29"), and true/false/null into their JSON types. Turn it off if you have values like ZIP codes or phone numbers where leading zeros matter — 08015 would otherwise become 8015.
What happens with empty cells and missing columns?
Empty cells become empty strings (""). Rows shorter than the header get empty strings for the missing columns; extra cells beyond the header are dropped. Blank header cells get automatic names (column_3).
How do I convert JSON back to CSV?
The reverse needs flattening decisions (what to do with nested objects and arrays), so it's a different tool. For flat JSON arrays, spreadsheet formulas or a short script (e.g. Python pandas: pd.read_json(...).to_csv()) handle it. Tell us if you'd use a JSON-to-CSV tool here — it's a natural companion.
Is there a size limit?
Thousands of rows convert instantly; everything happens in memory in your browser. Extremely large exports (hundreds of thousands of rows) may slow the tab — for those, a command-line tool or script is the better fit.
Why does my CSV have weird characters like ’ or α after converting?
An encoding mismatch — the file was saved in UTF-8 but read as Windows-1252 (or vice versa) before you pasted it. Re-open the CSV in a text editor, save it as UTF-8, and copy again. The converter itself is fully Unicode-safe.
What is the difference between CSV and JSON?
CSV is tabular: rows and columns, no types, no nesting — perfect for spreadsheets. JSON is structured: typed values, nesting, arrays — the language of APIs. Converting CSV→JSON adds keys and types to raw rows so software can consume the data reliably.