JSON Tree Viewer
Live parse. Search across keys and values. Expand or collapse the whole tree. Client-side.
How to use
Paste JSON into the left pane. The tree appears on the right as you type (200ms debounce).
Click any object or array node to expand or collapse it. Use the two arrow buttons in the top-right to expand or collapse the whole tree. Type in the Search box to highlight matching keys and values and dim everything else.
Copy the whole tree as formatted JSON via the Copy button, or download as data.json.
Keyboard shortcuts
Two shortcuts:
| Cmd / Ctrl + K | Focus the input pane |
| Cmd / Ctrl + Enter | Copy the formatted JSON to clipboard |
When to use it
Tree view beats reading raw JSON when the structure is deep, wide, or unfamiliar.
- Exploring an API response before writing code against it.
- Inspecting a config file with many nested sections.
- Debugging a data payload where you need to spot a specific value fast.
- Comparing shape between two responses without eyeballing indentation.
Options
Search — type in any key or value fragment. Matching nodes are highlighted, non-matching subtrees dim to 25% opacity. Empty search restores full view.
Expand all — opens every object and array in the tree.
Collapse all — folds everything back down to the root.
Individual node clicks always work — regardless of the expand/collapse-all state.
Format-specific gotchas
Node paths are collision-free. A key named id inside users[0] and another id inside orders[3] track independently — this tool uses full paths like root.users.0.id, not just key names.
Very large inputs may lag. The parse is debounced 200ms, but rendering a huge tree (tens of thousands of nodes) still takes work. For massive structures, collapse before searching.
Strict JSON only. The tool uses JSON.parse, so trailing commas, comments, and unquoted keys are rejected. If your input is loose JS-object syntax, run it through JSON ↔ JS Converter first.
Privacy
Everything runs in your browser. Your JSON never leaves the page — no server, no logging, no analytics on the content.