Filter and search JSON online
When a payload is nested or repetitive, scrolling the tree is slow. Online JSON Viewer includes a search bar on the tree pane so you can find keys and values by substring, jump between hits, and optionally hide branches that are not part of a match path.
Both / Key / Value modes
Type a query in the search field, then pick a mode:
-
Both — match object property names or primitive
values (and
null). - Key — only property names (and array index labels in the walk).
- Value — only primitive / null values, not nested objects or arrays as wholes.
Matching is a case-insensitive substring check. It is not JSONPath, not a full-text index over pretty-printed source, and not regex.
Prev / Next
When there is at least one match, the match count appears next to the controls. Use Prev and Next (or Shift+Enter / Enter in the search box) to move the active highlight through the hit list. Navigation focuses the matching row in the tree; it does not change the editor text.
Matches only keeps paths
The Matches checkbox filters the tree view: only rows that are matches, or ancestors of matches (including the root), stay visible. Sibling branches that never lead to a hit are hidden. Turn Matches off to see the full tree again. The underlying JSON in the editor is unchanged either way.
Search does not rewrite the document
Search is a view/navigation feature. Clearing the query, changing mode, or toggling Matches never reformats or mutates your JSON. If you need to reshape arrays or objects, use Transform instead.
When to use Transform instead
- You want to pluck a field, drop nulls, wrap values, or coerce types across an array or object — that is Transform, not search.
- You need a smaller document to copy or download: Transform (or manual edit) changes data; Matches only changes what the tree shows.
- You are hunting for a syntax error before the tree exists — fix parse errors first (Fix invalid JSON).