English
How to convert a CSV file to JSON
A CSV to JSON converter turns rows of text into a list of records a program can read. Here is the short way to do it with this page:
- Drop your file on the box, or paste the data into the text area. A CSV, TSV, JSON, Markdown table or Excel file all work.
- Leave the delimiter on Auto unless the preview looks wrong. The tool counts commas, semicolons, tabs and pipes in the first rows and picks the one that splits every line into the same number of columns.
- Pick the output on the right (JSON, CSV, Excel, TSV or Markdown) and press Download. Copy works for every text format.
Nothing is uploaded. Parsing, the preview and the Excel file are all built in your browser, so a customer list or payroll sheet stays on your machine.
What the JSON looks like
With "First row is a header" ticked, each row becomes an object and the header cells become the keys. Untick it and you get a plain array of arrays instead. This input:
Pen,12,1.5
Notebook,3,4.25
turns into [{"name":"Pen","qty":12,"price":1.5},{"name":"Notebook","qty":3,"price":4.25}]. Numbers are written as numbers, not strings, so you can add them up without parsing. Duplicate or empty header names are renamed (column3, name_2) because two keys with the same name would silently overwrite each other.
How do I convert an Excel file to JSON or CSV?
Drop the .xlsx file on the page. If the workbook has several sheets, a sheet picker appears and the preview switches when you change it. Dates stored as real Excel dates come out as 2026-10-11 instead of a serial number like 46306. Formulas export the value Excel last calculated, which is what you want in almost every case.
Old .xls files (Excel 97 to 2003) are a different binary format and are not read here. Open one in Excel or LibreOffice and save it as .xlsx first.
How do I turn CSV into an Excel file?
Choose Excel as the output and download the .xlsx. The header row is bold, frozen and has filter buttons, columns are sized to their content, and text that looks like a number or an ISO date is stored as a real number or date so sorting and sums work. If you would rather keep every cell as text, untick "Detect numbers and dates".
Common problems and fixes
| Symptom | Cause | Fix |
|---|---|---|
| Everything lands in one column | The file uses semicolons (common in Excel exports from countries that write 3,14 with a decimal comma) | Set the delimiter to semicolon, or leave it on Auto |
| Accents show as é instead of é | The file is not UTF-8 | The page falls back to Windows-1252 on its own. For a CSV you create, tick "Add BOM" so Excel reads UTF-8 correctly |
| Phone number 0812345678 becomes 812345678 | Read as a number, so the leading zero is dropped | Values with a leading zero are kept as text. If one slips through, untick "Detect numbers and dates" |
| A 16-digit ID turns into 1.23457E+15 | Excel keeps only 15 significant digits | IDs longer than 15 digits are always kept as text here |
| A quoted field with a comma splits in two | The quotes are missing or unbalanced in the source | Check that the field starts and ends with a double quote and that inner quotes are doubled ("") |
Which format should I pick?
Use CSV or TSV when the data is flat and will be opened in a spreadsheet or imported into a database. Use JSON when a web app, API or script is going to read it, because JSON keeps numbers, true/false and nesting. Use Excel when a person needs formatting, filters or columns that are easy to resize. Markdown tables are for README files, wikis and chat messages. TSV is safer than CSV when your text contains lots of commas, since tabs rarely appear inside a cell.
A flat table cannot hold nested JSON. If a value is itself an object or array, it is written into the cell as a JSON string so nothing is lost, and you can parse that cell later.
Limits
The page handles files of a few hundred thousand rows on a normal laptop, but the preview shows only the first 100 rows and the text box is cut at 300,000 characters. The download always contains the full result. Excel itself stops at 1,048,576 rows and 16,384 columns, and the tool tells you if you go over.
Frequently asked questions
How do I convert a CSV file to JSON?
Drop the CSV on the page or paste it into the box, and the JSON appears on the right straight away. A file with the header name,qty and a row Pen,12 becomes [{"name":"Pen","qty":12}]. Press Download to save it as a .json file.
Can I convert an Excel file to JSON without uploading it?
Yes. The .xlsx file is opened inside your browser and nothing is sent to a server. Pick the sheet you want if the workbook has more than one, then choose JSON as the output.
Why is my CSV all in one column?
Your file probably uses semicolons or tabs instead of commas, which is common when Excel is set to a region that writes decimals with a comma. Leave the delimiter on Auto, or choose semicolon by hand, and the columns split correctly.
How do I convert JSON to CSV or Excel?
Paste a JSON array of objects and choose CSV or Excel as the output. The keys become the header row and each object becomes a row. Keys that are missing from some objects are left blank.
Does it keep leading zeros in phone numbers and IDs?
Yes. A value like 0812345678 stays text because turning it into a number would drop the zero. Numbers with more than 15 digits, such as 16-digit ID numbers, are also kept as text, since Excel and JavaScript lose precision beyond 15 digits.
Can it read old .xls files?
No, only .xlsx and .xlsm. Open the old file in Excel or LibreOffice, save it as .xlsx, and drop that one in. The old .xls format is binary and needs a much larger reader.
How do I open a CSV with accents correctly in Excel?
Choose CSV as the output and tick Add BOM before downloading. The BOM is a small marker at the start of the file that tells Excel the text is UTF-8, so characters like é and ñ show up properly.
Is there a size limit?
There is no fixed limit, it depends on your device. Files with a few hundred thousand rows work on a normal laptop. The preview shows 100 rows, but the download contains everything.