JSON to Excel Converter

Convert JSON to Excel or CSV instantly. Paste any JSON array and download a spreadsheet you can open in Excel, Google Sheets, or LibreOffice Calc. Free, no signup, no data uploaded.

JSON to Spreadsheet: When and Why

Spreadsheets remain the most widely used tool for data analysis, reporting, and sharing information with non-technical stakeholders. JSON, on the other hand, is the standard format for API responses, configuration files, and data exports from modern web applications. The ability to quickly bridge between these two formats is a valuable skill for developers, analysts, and anyone working with data.

Here are the most common situations where converting JSON to a spreadsheet saves time:

How the Conversion Works

The converter expects a JSON array of objects, where each object has the same (or similar) structure. The top-level keys of the objects become the column headers in the spreadsheet. Each object in the array becomes one row of data.

Input JSON:

[
  { "order_id": 1001, "customer": "Alice", "total": 89.99, "status": "shipped" },
  { "order_id": 1002, "customer": "Bob",   "total": 45.50, "status": "pending" },
  { "order_id": 1003, "customer": "Carol", "total": 120.00,"status": "delivered" }
]

Generated CSV output:

order_id,customer,total,status
1001,Alice,89.99,shipped
1002,Bob,45.50,pending
1003,Carol,120.00,delivered

This CSV can be opened directly in Excel, Google Sheets, or any spreadsheet application. The first row automatically becomes the column headers, and the data is perfectly aligned in rows and columns.

Handling Nested JSON in Spreadsheets

Flat JSON arrays convert to spreadsheets trivially, but real-world JSON often contains nested objects and arrays. Spreadsheets are inherently two-dimensional, so nested data requires a strategy before it can be exported cleanly.

There are three main approaches:

1. Dot-notation flattening

Nested object keys are joined with a dot to create flat column names. This is the most common approach and preserves all data while keeping the spreadsheet format.

// Input
{ "id": 1, "address": { "city": "London", "zip": "EC1A" } }

// Flattened columns: id, address.city, address.zip
// Row: 1, London, EC1A

2. JSON string serialization

Nested objects and arrays are serialized as JSON strings and stored in a single cell. This preserves the raw data but requires further processing to use the values in the spreadsheet.

3. Manual pre-processing

For complex structures, the cleanest approach is to transform your JSON before export - extract the specific fields you need and build a flat array of objects yourself. This gives you full control over the output columns.

Tips for Clean JSON to Excel Exports

Follow these practices to get the best results when converting JSON to spreadsheet format:

Frequently Asked Questions

How do I convert JSON to Excel?

Paste your JSON array into the converter tool. The tool reads the object keys as column headers and each array element as a row. Download the result as a CSV file and open it in Excel, Google Sheets, or LibreOffice Calc. The data is immediately available in tabular format.

Can I export nested JSON to Excel?

Nested JSON requires flattening before it maps cleanly to a spreadsheet. The converter flattens nested objects using dot notation (e.g., address.city becomes a column header) or serializes them as JSON strings. For complex structures, pre-processing the JSON into a flat array will give the cleanest results.

What is the difference between CSV and XLSX for JSON export?

CSV is plain text with comma-separated values - universally supported and the simplest export format. XLSX is Excel's native binary format and supports multiple sheets, formatting, and formulas. For most data exchange purposes, CSV is sufficient. Our converter generates CSV, which opens natively in Excel, Google Sheets, and all major spreadsheet tools.

Does the JSON to Excel converter work with large files?

Yes. All conversion runs in your browser with no server upload. There are no file size limits imposed by our tool. For very large datasets with tens of thousands of rows, the conversion may take a few seconds to complete, but your data never leaves your device.

Export Your JSON to Excel Now

Free, instant, 100% private. No account needed.

JSON to Excel Conversion Guide

Converting JSON to Excel is essential for sharing data with non-technical stakeholders, business analysis, and reporting. Each JSON array object maps to one row in the spreadsheet.

JSON Array → Excel Mapping

JSON ElementExcel Cell
Array indexRow number (starting at row 2)
Object keysColumn headers (row 1)
String valueText cell
Number valueNumeric cell (sortable, formula-ready)
Boolean valueTRUE/FALSE cell
null valueEmpty cell
Nested objectJSON string in cell (requires flattening)
Array valueJSON string in cell

Multi-sheet Excel from JSON

// Node.js with xlsx library
const XLSX = require("xlsx");

const wb = XLSX.utils.book_new();

// Sheet 1: Users
const usersWs = XLSX.utils.json_to_sheet(usersData);
XLSX.utils.book_append_sheet(wb, usersWs, "Users");

// Sheet 2: Orders
const ordersWs = XLSX.utils.json_to_sheet(ordersData);
XLSX.utils.book_append_sheet(wb, ordersWs, "Orders");

XLSX.writeFile(wb, "output.xlsx");

Python: JSON to Excel with pandas

import pandas as pd, json

with open("data.json") as f:
    data = json.load(f)

df = pd.DataFrame(data)

# Export to Excel
df.to_excel("output.xlsx", index=False, sheet_name="Data")

# With formatting (openpyxl engine)
with pd.ExcelWriter("formatted.xlsx", engine="openpyxl") as writer:
    df.to_excel(writer, index=False)
    ws = writer.sheets["Sheet1"]
    ws.column_dimensions["B"].width = 20

Also useful: JWT Decoder | JSON Validator | JSON Formatter | JSON to SQL | JSON to GraphQL

How to Convert JSON to Excel — Step by Step

Follow these steps to convert any JSON array to an Excel-ready spreadsheet using this tool:

  1. Prepare your JSON — it should be an array of objects where each object has the same keys. Each key becomes a column header.
  2. Paste the JSON array into the converter input field above.
  3. Click Convert — the tool maps each object to a row, and the keys become column headers automatically.
  4. Click Download to get the .xlsx file ready for your spreadsheet application.
  5. Open in Excel or Google Sheets — the file will display with proper column headers and data rows.

Example input and output:

// Input JSON array
[
  {"name": "Alice", "age": 30, "city": "London", "score": 92.5},
  {"name": "Bob",   "age": 25, "city": "Paris",  "score": 87.0},
  {"name": "Carol", "age": 35, "city": "Berlin", "score": 95.0}
]
// Excel output:
| name  | age | city   | score |
|-------|-----|--------|-------|
| Alice |  30 | London |  92.5 |
| Bob   |  25 | Paris  |  87.0 |
| Carol |  35 | Berlin |  95.0 |

The first row of keys (name, age, city, score) becomes the header row. Each JSON object in the array becomes a data row, with values aligned to their respective columns.

Handling Nested JSON in Excel

Excel is a flat, two-dimensional grid — it has no native concept of nesting. When your JSON contains nested objects or arrays, you need a strategy to flatten it before it can be represented as spreadsheet columns.

There are two main approaches:

Option 1: Flatten first using the JSON Flatten tool

Use the JSON Flatten tool to convert nested objects into a flat structure, then bring the result into the Excel converter. This is the cleanest approach for deeply nested data.

Option 2: Use dot notation keys

The converter uses dot notation to represent nested keys as flat column headers. A nested key like address.city becomes a column header in the spreadsheet:

// Nested JSON input
[
  {"name": "Alice", "address": {"city": "London", "zip": "EC1A"}}
]

// After flattening with dot notation:
[
  {"name": "Alice", "address.city": "London", "address.zip": "EC1A"}
]

// Excel columns: name | address.city | address.zip
// Excel row:     Alice | London       | EC1A

This approach is ideal for one level of nesting. For deeply nested structures (3+ levels), pre-processing the JSON to extract the specific fields you need will produce the cleanest spreadsheet output.

JSON to Excel vs JSON to CSV

Both formats represent tabular data, but they differ in capabilities and compatibility:

Feature JSON to Excel (.xlsx) JSON to CSV
File format Binary .xlsx (Excel native) Plain text .csv
Opens in Excel Yes, natively Yes, via import
Preserves number types Yes Numbers stored as text
Multiple sheets Possible No (single flat file)
File size Larger (compressed binary) Smaller (plain text)
Compatibility Excel, Google Sheets, LibreOffice Universal (any app)
Best for Excel users, formatted reports Maximum compatibility, data pipelines

For sharing with business stakeholders who use Excel, the .xlsx format is the better choice. For data pipelines, scripts, and maximum tool compatibility, CSV is the more portable option.

Related Tools

JSON to CSV
Convert JSON to CSV format
CSV to JSON
Convert CSV spreadsheets to JSON
JSON to XML
Convert JSON to XML format
JSON Flatten
Flatten nested JSON to one level
JSON Formatter
Format and beautify JSON