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

JSON Flattener

Turn a nested document into one level of paths and values for a config file or a spreadsheet, and turn it back again.

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.

    Nested

    Load from a URL

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

    Flat

    The result appears here.

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

    About this tool

    Flattening is what a document needs before it meets something that has no nesting: an environment file, a spreadsheet column, a translation catalogue, a form of key and value pairs. There is no standard for how the path is written, so the three spellings people actually use are offered and the page says which one is in force rather than picking one quietly. Two things really are ambiguous and both are handled in the open. A key that already contains the separator would produce a path nobody could read back, so it is refused by name with the suggestion to pick another style. Going the other way, a path segment made only of digits could mean an array index or an object key, and nothing in a flattened document says which, so that is a toggle. Empty objects and arrays are kept as values of their own, otherwise they vanish and the document does not survive the round trip.

    How to use

    1. Choose a direction, then paste your document into the left pane or load the sample.
    2. Pick the path style. It has to match the document you are reading back.
    3. Press Convert, then copy the result or download it.

    Keep reading

    How to flatten JSON into paths and values, and back again Read the guide