Convert CSV to JSON

Paste a CSV from Excel, Google Sheets or any app, and get clean JSON you can copy straight into your code.

Sealed on this device

Runs in your browser. Nothing is uploaded.

Sealed

CSV JSON

Cells that start with =, +, - or @ get a leading apostrophe, so spreadsheet apps show them as text instead of running them as formulas.

Adds an invisible mark at the start of the downloaded file so that Excel displays accents and other characters correctly.

Shape

Columns such as address.city become nested objects, and cells that hold a JSON list become real arrays.

Your CSV will appear here as you type.

Your JSON will appear here as you type.

How it works

  1. Paste or open your CSV

    Paste it, drop a .csv file or open one. The separator is detected for you, and quoted values with commas or line breaks are read correctly.

  2. Choose the JSON shape

    Pick a list of objects or a list of arrays, decide whether numbers and true/false are converted, and set the indentation.

  3. Copy or download the JSON

    Check the table preview if needed, then copy the JSON or save it as a .json file.

Frequently asked questions

Is my CSV uploaded to a server?

No. The file is read and converted inside your browser, so customer lists, exports and reports stay on your device.

Which CSV files can it read?

Files separated by commas, semicolons, tabs or pipes, detected automatically. Values in double quotes can contain separators, line breaks and doubled quotes, as the CSV standard (RFC 4180) allows. The “sep=” line that Excel sometimes adds is understood too.

How are numbers and true/false values detected?

Numbers become JSON numbers, TRUE and FALSE in any letter case become true and false, and empty cells become null. Values such as 007, or numbers longer than 15 digits like card or order numbers, stay as text so that no digit is lost. Turn off “Detect numbers and true/false” to keep every value as text.

Can I get nested JSON?

Yes. Turn on “Rebuild nested data”: columns such as address.city become nested objects, and cells that hold a JSON list such as ["a","b"] become real arrays. It’s the exact reverse of the JSON to CSV tool.

What if some rows have more or fewer cells than the header?

Missing cells become null (or empty text when number detection is off), and extra cells are kept under keys such as column_5. The tool tells you how many rows were affected, so you can check your file.

My CSV from Excel shows strange characters. Why?

Excel on Windows often saves CSV files in an older regional encoding rather than UTF-8. The tool recognises this and reads the file with the encoding Excel uses for the language of this page, and it also reads UTF-16 files. If letters still look wrong, save the file as “CSV UTF-8” and open it again.

Install One For All on your computer

One For All then opens in its own window, like an app, straight from your desktop or home screen. Nothing to download from a store, and your files still stay on your device.

  1. Click the install icon at the right of the address bar, or open the browser menu (⋮).
  2. Choose “Install One For All” or “Install page as app”: a shortcut is added to your desktop and your apps.

Download this tool’s engine?

This tool works entirely in your browser. To do that, it needs to download the items below from One For All, just once. They are then kept on this device, so next time the tool starts right away.

Your files are never sent anywhere.