1. Home
  2. Spreadsheet & data tools
  3. JSON to Excel

JSON to Excel

An API response, a database export or a log file in JSON is hard to read as text. Turn the records into a sheet with one row each and one column per field.

Free, no sign-up. Runs in your browser: nothing is uploaded.

How to use JSON to Excel

  1. Drop a .json file or paste JSON.
  2. Pick the array of records (found automatically).
  3. Download Excel or CSV.

Features

  • Finds arrays of records anywhere in the document
  • Nested objects become “parent.child” columns
  • Arrays joined, kept as JSON or spread over numbered columns
  • JSON Lines (NDJSON) supported
  • Long integer IDs kept digit-for-digit where the browser allows

Supported formats

You can open

  • JSON
  • NDJSON
  • Pasted data

You get

  • CSV
  • XLSX
  • TSV

Private by design

Your files are opened and processed by your browser on this device. They are never uploaded to openWorkstand or anyone else, so the JSON to Excel is safe for contracts, IDs, photos and work documents. After you have used it once while online, it also works without an internet connection. How local processing works

Good to know

  • An Excel sheet holds at most 1,048,576 rows and 16,384 columns; larger results can be saved as CSV.
  • Very large files are limited by your device’s memory; on a phone, split huge files into smaller parts first.

Guide

Converting JSON and API responses into Excel sheets

JSON is the language of APIs, exports and logs. It is perfect for programs and awkward for people: a response with a few hundred orders, each with a nested customer and a list of items, is hard to scan as text. In Excel the same data can be sorted, filtered and summed. This tool flattens JSON into a table with one row per record.

Input

Drop a .json file, paste JSON text, or use a JSON Lines file, where each line is a separate JSON object, as many logs and data exports are. Invalid JSON is reported with the parser’s message so you can find the problem.

Finding the records

API responses rarely start with the array you want. The records may be under “results”, “data.items” or “response.orders”. The tool searches the document and lists every array with its number of items, putting arrays of objects first. The most likely one is selected; choose another in “Records from” if needed. For a single object, the top level becomes one row.

Nested objects

Objects inside records become columns with dotted names: a customer with a name and a city produces customer.name and customer.city. The columns appear in the order fields are first seen, and fields that only some records have are included, empty for the others.

Arrays inside records

Lists need a decision. “Join values” puts lists of simple values into one cell, such as “new, gift”, with a separator you choose; lists of objects are kept as JSON text. “Keep as JSON” stores every list as JSON text. “Numbered columns” spreads lists across columns like items.0.sku, items.1.sku, which works well for short, regular lists and creates many columns for long ones.

Large integer IDs

JavaScript numbers are exact only up to 9,007,199,254,740,991. IDs from databases and social networks are often larger, and many converters silently change their last digits. In current browsers that expose the original JSON text to parsers, such numbers are kept digit for digit and written to Excel as text; in older browsers they may be rounded.

Excel limits

An Excel sheet holds at most 1,048,576 rows and 16,384 columns. Very wide results, usually from numbered columns on long lists, trigger a warning; switch lists to “Keep as JSON” or save as CSV.

Saving

Excel is the default output, with plain numbers, ISO dates and true/false stored as real values. CSV and TSV are available for other tools.

Typical sources

REST API responses saved from a browser or Postman, exports from tools like Stripe, Shopify, Airtable or Firebase, application logs written as JSON Lines, and open-data portals that publish JSON. In each case the records sit in an array, possibly nested, and the rest of the document is metadata such as page numbers.

Paginated APIs

APIs often return results in pages of 50 or 100 records. Save each page as a file, convert them, and combine the tables with Merge CSV Files.

Privacy

API responses often contain customer data or tokens. The JSON is processed on your device and never uploaded.

For the reverse direction, use CSV to JSON. To read and validate JSON text, try the JSON Formatter. XML documents convert with XML to CSV.

Checked against the current version of the JSON to Excel on .

Troubleshooting

The file does not open

Check that it is one of the supported formats above and opens in another app. Damaged files and password-protected PDFs cannot be read until they are repaired or unlocked.

It is slow or stops on a very large file

Everything runs on your device, so speed depends on its memory. Close other tabs, use a computer rather than a phone, or split the file into smaller parts first.

The download did not start

Look for your browser’s download bar or icon. Some browsers ask once before a site may download files; allow it and click the button again.

Frequently asked questions

My API response has the records under “data.items”. Do I have to edit it?

No. The tool searches the whole document for arrays and offers them in the “Records from” list, such as data.items (250 items). Pick the one you want.

What does “Keep as JSON” do with arrays?

It writes the whole array into one cell as JSON text, such as [{"sku":"A1","qty":2}]. That keeps every detail and suits nested lists that would otherwise create dozens of columns.

What happens to nested arrays of objects?

By default they are kept as JSON text in one cell. Choose “Numbered columns” to spread them out (items.0.name, items.1.name), which suits short, regular lists.

Why do large IDs sometimes change in other converters?

JSON numbers above 9,007,199,254,740,991 lose precision in JavaScript. This tool reads such numbers from the original text in current browsers, so they arrive in Excel exactly, stored as text.

Keep working with the result

After you download, choose “Save to Workstand” to keep the result in a folder on your computer, attach it to a project and create a follow-up task. It is saved by your browser, not uploaded.