Excel to JSON Converter

or drop Excel here

Upload an Excel file and click 'Convert' to get JSON output.

How Excel to JSON Converter Works?

What file formats are supported?

This tool supports both modern and legacy Excel formats:

  • .xlsx - Excel 2007 and later
  • .xls - Excel 97-2003

Simply upload your Excel file and the tool will automatically detect the format and convert it to JSON.

How does sheet selection work?

If your Excel file contains multiple sheets, you'll see a dropdown menu to select which sheet to convert. By default, the first sheet is selected.

For files with only one sheet, the conversion happens automatically without needing to select anything.

What does the JSON output look like?

The converter transforms your Excel data into an array of JSON objects. The first row becomes the property keys, and each subsequent row becomes an object. For example, if your Excel sheet looks like:

SoftwareCompanyPlatformPrice
ExcelMicrosoftDesktop/WebPaid
Google SheetsGoogleWebFree
LibreOffice CalcTDFDesktopFree

The JSON output will be:

[
  {
    "Software": "Excel",
    "Company": "Microsoft",
    "Platform": "Desktop/Web",
    "Price": "Paid"
  },
  {
    "Software": "Google Sheets",
    "Company": "Google",
    "Platform": "Web",
    "Price": "Free"
  },
  {
    "Software": "LibreOffice Calc",
    "Company": "TDF",
    "Platform": "Desktop",
    "Price": "Free"
  }
]

How are empty cells handled?

Empty cells in your Excel file are converted to null values in the JSON output. This preserves the data structure while clearly indicating missing values. For example:

SoftwareCompanyMax Rows
NumbersApple
Zoho Sheet65536
ExcelMicrosoft1048576

is converted to:

[
  {
    "Software": "Numbers",
    "Company": "Apple",
    "Max Rows": null
  },
  {
    "Software": "Zoho Sheet",
    "Company": null,
    "Max Rows": 65536
  },
  {
    "Software": "Excel",
    "Company": "Microsoft",
    "Max Rows": 1048576
  }
]

Using null instead of empty strings makes it easier to check for missing data when processing the JSON programmatically.

What happens if header cells are empty?

If your Excel file has empty cells in the first row (header row), those columns will be assigned auto-generated keys like __EMPTY, __EMPTY_1, __EMPTY_2, etc. For example:

SoftwarePlatform
ExcelMicrosoftDesktop/Web
Google SheetsGoogleWeb

is converted to:

[
  {
    "Software": "Excel",
    "__EMPTY": "Microsoft",
    "Platform": "Desktop/Web"
  },
  {
    "Software": "Google Sheets",
    "__EMPTY": "Google",
    "Platform": "Web"
  }
]

For cleaner JSON output, make sure all columns in your Excel file have proper header names in the first row.

What about special characters and formulas?

The converter handles special characters and data types automatically:

  • Special characters like quotes and backslashes are properly escaped for valid JSON
  • Excel formulas are converted to their calculated values, not the formula itself
  • Numbers remain as numeric types (not converted to strings)
  • Dates are preserved in their original format

What happens if my sheet is completely empty?

If you select a sheet that contains no data (no headers or rows), the converter will display an error message: "The selected sheet contains no data."

Make sure your Excel sheet has at least a header row and one data row for successful conversion.