CSV to JSON Converter
Paste CSV — or copy cells straight from Excel or Google Sheets — and get clean JSON as you type: an array of objects, arrays, an object keyed by ID, or JSON Lines.
At a glance
- Turns each CSV row into a JSON object, using the first row as keys (or column1, column2… when there’s no header).
- Detects the delimiter automatically — comma, semicolon, tab or pipe — so cells copied from Excel or Google Sheets can be pasted directly.
- Converts numbers, true/false and empty cells into proper JSON values, while phone numbers, PIN codes with leading zeros and long IDs stay text.
- Columns named like address.city become nested objects.
- Four output shapes: array of objects, array of arrays, an object keyed by the first column, or JSON Lines — with 2 or 4 spaces, tabs or minified.
- Follows RFC 4180: quoted fields, commas and line breaks inside quotes, and doubled quotes all work. Runs in your browser; data is never uploaded.
Step by step
How to convert CSV to JSON
- 1
Add your CSV
Paste CSV, paste cells copied from Excel or Google Sheets, or click Open file to load a .csv file.
- 2
Check the options
Open Options to choose the output shape, indentation, and whether to convert numbers and nest dotted columns.
- 3
Review the JSON
The JSON appears as you type, with a count of rows and columns and notes about any irregular rows.
- 4
Copy or download
Click Copy, or Download a .json (or .jsonl) file.
Features
Everything you need, nothing you don’t
Straight from Excel
Select cells in Excel or Google Sheets, copy, and paste here — tab-separated data is recognised automatically.
Proper JSON types
Numbers become numbers and true/false become booleans — without breaking IDs like 007 or 16-digit card numbers.
Nested objects
user.name and user.email columns become {"user": {"name": …, "email": …}}.
The shape you need
Objects for APIs, arrays for charts, keyed objects for lookups, or JSON Lines for big-data tools.
Handles messy files
Missing header names, duplicate columns and rows with extra or missing fields are handled and reported.
Private
Customer lists and exports stay on your device — nothing is uploaded.
Output shapes
| Shape | Looks like | Good for |
|---|---|---|
| Objects | [{"id": 1, "name": "Asha"}, …] | APIs, JavaScript, most uses |
| Arrays | [["id", "name"], [1, "Asha"], …] | Charts, compact data, keeping column order |
| Keyed | {"1": {"id": 1, "name": "Asha"}, …} | Looking rows up by ID |
| JSON Lines | {"id": 1, …} on each line | Streaming, logs, BigQuery and data pipelines |
How values are converted
With Convert numbers & booleans on, 42 and 3.14 become numbers, true and false become booleans, and empty cells become null. Values that only look like numbers stay text: anything with a leading zero (phone numbers, PIN codes like 012345, employee IDs like 007) and anything longer than 15 digits (card and account numbers), because JSON numbers would lose those digits.
Switch the option off to keep every value as text exactly as it appears in the CSV.
FAQ
Frequently asked questions
Can I convert an Excel file to JSON?
Why are some numbers kept as text?
What if my CSV uses semicolons?
Is my data uploaded?
How do I get nested JSON?
Can I convert JSON back to CSV?
Keep going
Related tools
JSON to CSV Converter
Convert JSON to CSV for Excel or Google Sheets: nested objects become columns, lists are kept and big numbers stay exact. Also CSV to JSON. No upload.
JSON Formatter & Validator
Format, validate, minify and repair JSON online. Get the exact line and column of every error, a collapsible tree view and sorted keys — private, in-browser.
XML to JSON Converter
Convert XML to JSON and JSON to XML online. Keeps attributes, arrays and leading zeros intact, shows exact error lines and never uploads your data.
UUID Generator
Generate UUIDs (GUIDs) online: random v4, sortable v7, v1, and name-based v5 and v3 — one or 10,000 at a time. Also decode and validate any UUID.
DNS Lookup
Free DNS lookup: check A, AAAA, CNAME, MX, NS, TXT, SOA and CAA records of any domain, see SPF and DMARC, and do reverse DNS for an IP address.
DNS Propagation Checker
Check DNS propagation worldwide: see the A, CNAME, MX, NS or TXT answer from 7 public DNS networks and 18 ISPs in 15 countries, and track the change.
Last updated Report a problem or suggest a feature