Excel/CSV to JSON

Convert an Excel or CSV spreadsheet into JSON or CSV right in your browser.

Loading tool…

Excel/CSV to JSONDrop an .xlsx, .xls, .ods, or .csv file and convert any sheet into a clean JSON array of objects (first row treated as keys) or back out to CSV. Parsing runs entirely in your browser with SheetJS, so your spreadsheet is never uploaded and stays private even for sensitive data.

What is Excel/CSV to JSON?

Excel/CSV to JSON is a free, browser-based converter that turns spreadsheet data into developer-friendly JSON or plain CSV. It reads multi-sheet Excel workbooks (.xlsx, .xls), OpenDocument spreadsheets (.ods), and comma-separated files (.csv), letting you pick which sheet to convert. Developers, analysts, and no-code builders use it to seed a database, feed an API or test fixture, or quickly inspect tabular data as structured JSON. The first row of the selected sheet becomes the object keys, and you can copy the result or download it as a .json or .csv file.

How to use Excel/CSV to JSON

  1. Drag and drop a spreadsheet onto the dropzone, or click to choose an .xlsx, .xls, .ods, or .csv file. The tool reads it and shows the file name plus how many sheets it found.
  2. Pick a sheet from the Sheet dropdown if the workbook has more than one. The conversion updates automatically for the sheet you select.
  3. Choose the output format with the JSON / CSV toggle. JSON produces an array of objects keyed by the header row; CSV produces a comma-separated table.
  4. Open Settings to turn pretty-print (indentation) on or off for JSON output.
  5. Review the converted text in the output panel, then use Copy to grab it, or Download to save a .json or .csv file.

Examples

Convert one sheet of a workbook to JSON

Drop sales.xlsx with sheets "Q1" and "Q2", choose "Q2" in the Sheet dropdown, and keep JSON selected. The output is an array of objects whose keys come from the Q2 header row, ready to copy or download as sales.json.

Clean up a messy CSV

Drop contacts.csv, leave the sheet as the only sheet, and switch the toggle to CSV. The tool re-emits a normalized comma-separated file you can download as contacts.csv, or flip to JSON to inspect the same rows as objects.

Compact JSON for an API payload

Open Settings and turn off pretty-print to get single-line JSON, then copy it straight into a request body or fixture file without extra whitespace.

Frequently asked questions

Is my spreadsheet uploaded to a server?
No. The file is read and converted 100% in your browser using the SheetJS (xlsx) library. Nothing is uploaded, so even confidential or internal spreadsheets stay completely private.
Which file types are supported?
Excel workbooks (.xlsx and .xls), OpenDocument spreadsheets (.ods), and comma-separated files (.csv). Multi-sheet workbooks let you pick which sheet to convert.
How are the JSON keys decided?
The first row of the selected sheet is treated as the header, and each following row becomes an object whose keys are those header labels. Empty cells are filled with an empty string so every object has the same keys.
What does the pretty-print setting do?
When pretty-print is on, the JSON is indented with two spaces for easy reading. Turn it off in Settings to get compact single-line JSON that is smaller and ready to paste into code.
Can it handle large files?
It can convert reasonably large sheets, but everything runs in your browser tab, so very large workbooks use more memory and may take a moment. If a file fails to load it may be corrupt or password-protected.

Related tools