CSV to JSON Converter
Spreadsheet Rows Into Clean Records
Drop a spreadsheet export into this CSV to JSON converter and get tidy JSON records back. Quoted commas, zip codes and odd rows are all handled for you.
- FreePrice
- JSONOutput
- NoneSign-up
- In your browserRuns
CSV to JSON Converter
Converted in your browser, with every issue listed
- Records
- 0
- Columns
- 0
- Size
- 0 B
Ready. Paste your data, open a file or try the sample.
| Result | Check | Details |
|---|
Going the other way? Convert JSON to CSV
Jobs This CSV to JSON Converter Handles for You
This CSV to JSON converter reads the rows of a spreadsheet file and writes each one as a JSON object. The first row supplies the names, and every row after it becomes one record. Your browser does the reading, so the file never leaves your computer.
CSV looks simple, but it hides traps. A name like "Ahmed, Bilal" contains the very comma that separates columns. A zip code such as 05400 loses its zero if anything treats it as a number. Meanwhile, a note typed over two lines breaks the file into extra rows. A careless converter gets all three wrong.
This one follows the rules that spreadsheets use when they write CSV. Then it shows a checks table: the delimiter it detected, the rows it read, and anything it had to fix along the way.
Reading CSV the Way Spreadsheets Write It
The format is described in RFC 4180, and Excel, Google Sheets and LibreOffice all follow it closely. A field wrapped in double quotes may contain commas, quotes and even line breaks. Inside such a field, two quotes in a row stand for one real quote.
The reader handles every one of those cases. It also removes the invisible byte order mark that Excel adds to the start of UTF-8 files. Otherwise that mark would sneak into the name of your first column and break every lookup on it.
Convert CSV to JSON With the Right Types
A CSV file stores every value as plain text. JSON, on the other hand, knows numbers, true and false, and null. So the converter looks at each value. A plain number becomes a JSON number, and true or false become real booleans.

Some numbers must stay text, though. A zip code or a phone number with a leading zero keeps its quotes, because 05400 and 5400 are different things. In fact, the whole column stays text, so 05400 and 74000 never end up as two different types. Likewise, an ID longer than fifteen digits stays text, since JavaScript would round it. Prefer everything as strings? Then switch type detection off.
Headers Like user.name Turn Into Nested Objects
Flat tables often stand in for nested data. A column called address.city really means "the city inside the address". Turn on dotted names, and the converter rebuilds that structure, so address.city and address.zip end up inside one address object.
This is the exact reverse of what our JSON to CSV converter does. Therefore you can export JSON to a sheet, edit it with colleagues, and bring it back without losing its shape.
Objects or Arrays: Picking the Output Shape
Most code wants a list of objects, where every value sits next to its name. That is what you get when the first row holds the names. Some charting libraries and data tools prefer plain rows, though. For them, switch the header option off, and each line becomes a simple array in the same order as the file.
The layout of the text is your choice as well. Two spaces suit a file that people will read and edit. Four spaces or tabs match many code styles. One line with no spaces at all is the smallest option, so it works best inside an API request or a config value.
Excel to JSON in Two Steps
There is no need for a plugin or a macro. Inside Excel, open File, go to Save As, then select CSV UTF-8 from the list. Next, open that file here or paste its contents. The JSON shows up the moment you paste.

Excel in much of Europe saves with semicolons instead of commas, because the comma is its decimal mark. The converter spots this by itself and says which delimiter it used. You can still pick one by hand if a file is unusual.
What Happens to Broken Rows
Hand-edited files are rarely perfect. If a row is shorter than the header, its missing keys stay empty, and the checks table counts them. When a quote opens and never closes, the converter stops and names the exact line, since guessing there would scramble every row after it.

Who Turns Spreadsheets Into JSON
Coders run into this every week. A product list kept in a sheet becomes seed data for a database. A table of translations becomes a language file. For instance, a designer can hand over a spreadsheet of test users, and a developer can load it into a mock API a minute later.
It also helps people who never code. Many website builders, form tools and automation services accept JSON imports. So a sales list or an event schedule can move from a sheet into those tools without retyping a single row. The MDN guide to JSON is a friendly place to learn what the result means.
Turning a CSV File Into JSON on Denwix
From spreadsheet to JSON takes about as long as reading this list.
- 1
Bring your CSV
Paste the rows, drop a .csv file on the box, or open one. Try the sample to see a tricky file first.
- 2
Check the header option
Leave it on when the first row holds names. Turn it off and each row becomes a plain list.
- 3
Pick the types
Keep type detection for real numbers and booleans. Add dotted names or empty-as-null if you need them.
- 4
Take the JSON
Copy the JSON, or save it as data.json. Choose two spaces, four spaces, tabs or one line.
Built for Real Spreadsheet Exports
Real exports are messy. These are the details that keep the JSON correct anyway.
Quotes read correctly
A quoted field keeps its commas, quotes and line breaks.
Delimiter found for you
The converter spots whether you used a comma, semicolon, tab or pipe by reading the opening lines.
Leading zeros kept
Zip codes, phone numbers and long IDs stay text, so nothing is silently changed.
Nesting from dotted names
Headers like address.city rebuild proper nested objects on request.
Every fix reported
Short rows, renamed headers and skipped blank lines appear in the checks table.
Nothing uploaded
Customer lists and price sheets stay on your own machine from start to finish.
Rules for a CSV That Converts Cleanly
A few minutes in the spreadsheet saves an hour of fixing JSON later.
- Put names in the first row only. Titles, notes or merged cells above the header turn into fake records.
- Use short, plain column names. Names such as first_name or price become clean JSON keys that code can use directly.
- Give each column one kind of value. A price column that sometimes says "call us" cannot become a number column.
- Pick the CSV UTF-8 option when you save. Plain CSV in older Excel versions can mangle accents and non-Latin scripts.
- Format codes as text before typing them. Otherwise the spreadsheet drops leading zeros before the file is even saved.
- Remove any blank rows left at the end of the sheet. The converter skips blank lines, yet rows of empty commas still count as records.
- Use dots only for nesting. If a header contains a dot for another reason, leave dotted names switched off.
- Compare the record count. The number of records should match the number of data rows in your sheet.
Six CSV to JSON Mistakes to Avoid
Each of these produces JSON that looks valid but carries the wrong data.
Splitting on every comma
A simple split breaks "Ahmed, Bilal" into two columns and shifts the row.
Losing zeros in codes
The zip code 05400 turned into 5400 no longer matches any address.
A hidden mark in the first key
An unremoved byte order mark makes "id" a different key from the one your code expects.
Treating a title row as data
A report title above the header becomes the key names of every record.
Guessing the wrong delimiter
Reading a semicolon file as commas leaves every row in one long field.
Ignoring short rows
A row with missing fields quietly produces records with empty values.
Questions About the Denwix CSV to JSON Converter
What are the steps to turn my CSV into JSON on Denwix?
Paste the CSV into the input box or open the file. The JSON appears at once, and you can copy it or download it.
Can I turn an Excel workbook into JSON with Denwix?
Yes. Save the sheet as CSV UTF-8 in Excel first, then open that file here. Multi-sheet workbooks need one CSV per sheet.
Can the Denwix converter read a semicolon-separated file?
The converter detects semicolons, tabs and pipes by itself. It also tells you which one it used, and you can override it.
Why did a number stay in quotes?
Its column holds a leading zero or a number with more than fifteen digits. Turning those into numbers would change them, so the whole column stays text on purpose.
What changes when I switch the header row option off?
With it on, the first row gives the keys and each record is an object. With it off, every row becomes a plain array.
Will a header such as address.city become a nested object?
Name your columns with dots, such as address.city, and turn on dotted names. The converter builds the nested objects for you.
What does the converter write for a blank CSV cell?
They become empty strings by default. Tick the null option if your code expects null for missing values instead.
Is a line break allowed inside a single CSV value?
Yes, provided double quotes surround the value. The line break then stays inside that one value.
Why did it stop with a quote error?
A quoted value opened on that line and never closed, so it swallowed the next row. Add the missing quote at the end of the value, then convert again.
How large a file will this Denwix tool accept?
Files of several megabytes convert quickly. With very large input, the conversion waits for the button instead of running on every key.
Does the converter send my file to a Denwix server?
No. The whole conversion happens in your browser, and nothing is sent to this site or anyone else.
More Tools for Data Work
Useful before the conversion, after it, or both.
JSON to CSV Converter
Flatten JSON records back into a spreadsheet table.
Open tool →JSON Formatter
Indent, validate and minify the JSON you just made.
Open tool →Diff Checker
Compare two exports line by line to see what changed.
Open tool →
Ready to Turn Your Sheet Into JSON?
Open your CSV and the records appear in a moment. This CSV to JSON converter is free, needs no sign-up and never uploads your data.