Browser-Only Privacy
Files are parsed in your tab via the File API and SheetJS — Excel data with customer records, salaries, or financial details never reaches a remote server.
500+ fast, free tools. Most run in your browser only; Image & PDF tools upload files to the backend when you run them.
Convert Excel XLSX or XLS files to JSON array. Sheet picker, header-row detection, optional type coercion.
XLSX to JSON converts Excel workbooks (.xlsx, .xls) into a JSON array that any modern API or database can consume. Upload a workbook, pick which sheet to convert, choose whether the first row is a header (used as object keys) or whether to auto-name columns col1, col2, …, and optionally coerce numeric and boolean strings into native JSON numbers and booleans (so "42" becomes 42 and "true" becomes true). The tool uses SheetJS, an industry-standard library for parsing Excel binary formats, loaded on-demand from CDN. The whole conversion runs in your browser via the File API — your spreadsheet never reaches a remote server, which is essential when data contains customer records, financial figures, or competitive intelligence. Output JSON is pretty-printed for readability and can be copied to clipboard or downloaded as a .json file directly.
Files are parsed in your tab via the File API and SheetJS — Excel data with customer records, salaries, or financial details never reaches a remote server.
Every sheet in the workbook is available in the picker, so you can convert each sheet on demand without splitting the file beforehand.
Choose between using row 1 as object keys (the standard "first row is header" convention) or treating all rows as data with auto-generated column names.
Numeric strings ("42", "3.14") become JSON numbers, and "true"/"false" become JSON booleans, so downstream consumers do not have to re-parse strings.
SheetJS handles both .xlsx (OOXML) and legacy .xls (BIFF) binary formats — no need to convert files first in Excel.
Save the JSON output as a file with the original workbook name and sheet name embedded, ready to commit or send to teammates.
Input: Excel sheet: | id | name | active | |----|-------|--------| | 1 | Alice | true | | 2 | Bob | false |
Output: [ { "id": 1, "name": "Alice", "active": true }, { "id": 2, "name": "Bob", "active": false } ]
Input: Excel sheet: | Alice | 30 | | Bob | 28 |
Output: [ { "col1": "Alice", "col2": 30 }, { "col1": "Bob", "col2": 28 } ]
Input: Excel sheet: | zip | qty | | 01234 | 5 |
Output: [ { "zip": "01234", "qty": "5" } ]