Skip to main content
CuteJSON
↑↓ Navigate Enter Select Esc Close

JSON to Excel Converter

Turn a JSON document into an .xlsx workbook you can open directly in a spreadsheet application.

Back to all tools

Keyboard shortcuts

These work wherever the matching action exists on this page.

Open the command palette
Ctrl/Cmd + K
Run the main action
Ctrl/Cmd + Enter
Format
Ctrl/Cmd + Shift + F
Minify
Ctrl/Cmd + Shift + M
Copy output
Ctrl/Cmd + Shift + C
Open file
Ctrl/Cmd + Shift + O
Download output
Ctrl/Cmd + S
Close this dialog
Esc
Open this dialog
F1 / ?

Local data

Everything below is stored only in this browser, on this device. None of it is ever sent anywhere, and closing this dialog is not required for that to stay true.

Unsaved drafts
Tools with remembered options

Recently opened files

    No files opened yet on this device.

    Share via link

    The content is packed into the part of the link after the # sign, which browsers never send to a server. Nothing here is uploaded to cutejson.com or anywhere else.

    Shares the first input on this page. On a tool with more than one, only that one is included.

    Nothing to share yet. Paste or type something first.

    Input

    Load from a URL

    Fetches the URL directly from your browser and loads whatever text it returns into this pane.

    Output

    This is a binary spreadsheet file, so there is nothing to preview here. Convert, then download it to open in a spreadsheet application.

    Runs entirely in your browser. Nothing you paste is uploaded, and you can confirm that in your browser Network tab.

    About this tool

    A real .xlsx workbook, not a renamed CSV: the actual SpreadsheetML parts a spreadsheet application expects, assembled entirely in your browser. The document has to be an array of objects, or a single object as a one row sheet, the same shape the CSV converter accepts; an object whose every value is itself an array becomes multiple sheets instead, one per key, each converted the same way, so a document already organised into named sections needs nothing extra to become named tabs. A nested object or array is flattened into dot path columns rather than written as JSON text, since a spreadsheet cell has nowhere else to put it; an empty object or array is kept as the literal text {} or [] rather than silently dropped. Every string cell is written in a way a spreadsheet application never reinterprets as a formula, no matter what character it starts with, so there is no formula injection character to guard against by hand the way a CSV export has to. A spreadsheet's own number is a double precision float, exact only up to about 15 or 16 digits; a whole number past that is written as text instead, so its exact digits survive rather than being silently rounded. This produces a spreadsheet, not JSON, and there is no reliable way back, so this is one direction only, the same as this site's other generators.

    How to use

    1. Paste your JSON on the left, or load the sample.
    2. Name the sheet and choose whether to bold the header row, then press Convert. You can pick which columns to include once they are detected.
    3. Download the result as an .xlsx file. There is nothing to copy or preview, since this is a binary spreadsheet, not text.