📅 April 23, 2026 ⏱️ 8 min read Tutorial Data Conversion

How to Convert JSON to Excel — Step-by-Step Guide

Learn 3 easy methods to convert JSON files into clean Excel spreadsheets — using free online tools, Python code, or manual import. Covers nested JSON, common errors, and pro tips.

Why Do You Need to Convert JSON to Excel?

If you've ever pulled data from an API, exported records from a database, or received a JSON file from a colleague, you know the struggle: JSON is great for machines, but terrible for humans to read.

Spreadsheets, on the other hand, are the universal language of business. Whether you're a developer debugging API responses, a data analyst running reports, or a project manager reviewing data exports — converting JSON to Excel makes your data sortable, filterable, and shareable with anyone.

In this guide, you'll learn three methods to convert JSON to Excel, how to handle tricky nested data, common errors to avoid, and pro tips to save time.

What Is JSON? (Quick Overview)

JSON (JavaScript Object Notation) is a lightweight data format used to store and exchange data. It's the default format for most APIs, NoSQL databases, and web applications.

A typical JSON file looks like this:

[
  {
    "name": "Alice Johnson",
    "email": "alice@example.com",
    "department": "Engineering",
    "salary": 95000
  },
  {
    "name": "Bob Smith",
    "email": "bob@example.com",
    "department": "Marketing",
    "salary": 72000
  }
]

Each object in the array represents a row, and each key (name, email, etc.) becomes a column header when converted to Excel.

Why Convert JSON to Excel?

  • Readability — Spreadsheets with rows and columns are far easier to scan than raw JSON brackets and braces.
  • Analysis — Excel offers sorting, filtering, pivot tables, and charts that JSON simply doesn't.
  • Sharing — Non-technical stakeholders (managers, clients) understand Excel. They don't understand JSON.
  • Data cleaning — Fixing typos, removing duplicates, and validating entries is much faster in a spreadsheet.
  • Reporting — Many organizations require data in Excel format (XLSX or CSV) for compliance and documentation.

Method 1: Use a Free Online Converter (Fastest)

The easiest way to convert JSON to Excel is with a free online tool — no installation, no code, no signup.

Step-by-Step with jsontoexcel.cloud

  1. Open jsontoexcel.cloud in your browser.
  2. Paste your JSON into the text area, or drag & drop your .json file onto the upload zone.
  3. Click "Parse JSON" — the tool auto-detects all columns, including nested fields (flattened with dot notation).
  4. Reorder columns (optional) — drag and drop column chips to arrange them.
  5. Click "Download Excel" — your .xlsx file downloads instantly.
💡 Why this method wins

The entire conversion happens in your browser — your data never leaves your device. It works offline after the first page load, handles nested JSON automatically, and produces files compatible with Microsoft Excel, Google Sheets, and LibreOffice Calc.

This is ideal for quick, one-off conversions — API responses, database exports, config files, or any JSON you need in spreadsheet format right now.

Method 2: Convert JSON to Excel with Python

If you need to convert JSON files regularly or as part of an automated pipeline, Python with the pandas library is the way to go.

Prerequisites

pip install pandas openpyxl

Python Script

import json
import pandas as pd

# Load JSON data
with open("data.json", "r") as f:
    data = json.load(f)

# Normalize nested JSON (flattens nested objects)
df = pd.json_normalize(data)

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

print(f"Converted {len(df)} rows to output.xlsx")

The pd.json_normalize() function is especially powerful — it automatically flattens nested objects into dot-notation columns. For example, {"user": {"name": "Alice"}} becomes a column called user.name.

💡 Pro Tip

For API responses, combine requests with pandas: Use tools like Postman to test your endpoint first, then automate the fetch-and-convert pipeline with requests.get(url).json().

Method 3: Import JSON Manually in Excel

Microsoft Excel (2016 and later) has a built-in JSON import feature using Power Query.

Steps

  1. Open Excel → go to Data tab → Get DataFrom FileFrom JSON.
  2. Select your .json file.
  3. The Power Query Editor opens — click "To Table" to convert the JSON structure.
  4. Expand columns by clicking the expand icon on nested fields.
  5. Click "Close & Load" to insert the data into your worksheet.
⚠️ Limitations

Power Query works well for simple JSON, but struggles with deeply nested structures. You may need multiple expand steps, and arrays within objects require manual transformation. For complex JSON, an online converter or Python script is faster and more reliable.

How to Handle Nested JSON

Nested JSON is the most common challenge when converting to Excel. Here's an example:

{
  "id": 1,
  "name": "Alice",
  "address": {
    "street": "123 Main St",
    "city": "Springfield",
    "state": "IL"
  },
  "skills": ["Python", "SQL", "Excel"]
}

When flattened to Excel, this becomes:

  • id1
  • nameAlice
  • address.street123 Main St
  • address.citySpringfield
  • address.stateIL
  • skills["Python", "SQL", "Excel"] (stringified array)

Most good converters handle this automatically. If you're working with heavily nested data, check out our guide on handling nested JSON structures for advanced techniques.

Common Errors and How to Fix Them

1. "Invalid JSON" Error

Cause: Your JSON has syntax errors — missing commas, trailing commas, unquoted keys, or single quotes instead of double quotes.

Fix: Paste your JSON into a validator (like jsonlint.com) to identify and fix errors. JSON requires double quotes for all strings and keys.

2. Empty or Single-Row Output

Cause: Your JSON is a single object {...} instead of an array [{...}, {...}].

Fix: Wrap your object in an array: [{ your object here }]. Most converters expect an array of objects where each object = one row.

3. Columns Are Missing

Cause: Some objects in your array have different keys. For example, the first object has email but the third doesn't.

Fix: This is normal. The converter creates columns for all unique keys across all objects and fills missing values with empty cells.

4. Special Characters Broken

Cause: Encoding issues — your JSON contains non-ASCII characters (accents, emojis, CJK characters).

Fix: Ensure your JSON file is saved as UTF-8. Client-side tools like jsontoexcel.cloud handle UTF-8 natively, so this is usually only an issue with server-side scripts.

Pro Tips for JSON to Excel Conversion

  1. Validate first, convert second. Always run your JSON through a validator before converting. A single missing comma can break the entire process.
  2. Use json_normalize() for APIs. If you're working with API data in Python, pd.json_normalize() handles nested objects much better than pd.DataFrame().
  3. Consider CSV for simple data. If your JSON has no nesting and you don't need Excel formulas, CSV might be lighter and faster.
  4. Check column order. After conversion, verify that columns appear in a logical order. Tools like jsontoexcel.cloud let you drag-and-drop reorder columns before downloading.
  5. Automate recurring conversions. If you convert the same API endpoint weekly, set up a Python cron job or a scheduled API-to-Excel pipeline.

Frequently Asked Questions

How do I convert JSON to Excel for free?

Use a free online tool like jsontoexcel.cloud. Paste your JSON data or upload a .json file, then click Download Excel to get your XLSX file instantly. No signup, no payment, no limits.

Can I convert nested JSON to Excel?

Yes. Most online converters and Python's pd.json_normalize() flatten nested JSON using dot notation. For example, {"user": {"name": "John"}} becomes a column named user.name. Arrays are typically stringified.

What is the best method to convert JSON to Excel?

For quick one-off conversions, use an online tool. For recurring or automated tasks, use Python with pandas. For small datasets, you can use Excel's built-in Power Query (Get Data → From JSON).

Does Excel support JSON files natively?

Microsoft Excel 2016+ supports importing JSON using Power Query (Data → Get Data → From File → From JSON). However, it struggles with deeply nested JSON and requires manual transformation steps. An online converter is often faster.

How do I convert a JSON API response to Excel?

First, copy the API response JSON — you can use Postman to test your endpoint. Then paste the JSON into an online converter like jsontoexcel.cloud. The tool auto-detects common data wrappers (data, results, items) and extracts the array for conversion.

Can I convert JSON to Excel using Python?

Yes. Use the pandas library: load your JSON with json.load(), create a DataFrame with pd.json_normalize(), and export with df.to_excel('output.xlsx', index=False). This handles nested JSON automatically.

Why does my JSON to Excel conversion produce errors?

Common causes: invalid JSON syntax (missing commas, trailing commas, unquoted keys), the JSON being a single object instead of an array, or encoding issues with special characters. Use a JSON validator to fix syntax errors first.

Is it safe to convert JSON to Excel online?

It depends on the tool. Some upload your data to a server. Privacy-focused tools like jsontoexcel.cloud process everything in your browser — your data never leaves your device. Always check the tool's privacy policy.

Conclusion

Converting JSON to Excel doesn't have to be complicated. For most people, a free online tool is the fastest path — paste your data, click download, done. For developers with recurring needs, Python + pandas offers automation and flexibility. And for those already in Excel, Power Query handles basic imports.

No matter which method you choose, remember to validate your JSON first, watch out for nested structures, and use the right tool for the job.

Ready to Convert Your JSON?

Try our free converter — paste JSON, download Excel. No signup, no server upload, works offline.

Convert JSON to Excel — Free →