Run JSONPath expressions against any JSON document to pull out exactly the values you need.
Supports dot and bracket notation, * wildcards, .. descendant search, array slices and
filter expressions such as ?(@.price < 10).
Also: JSON Formatter | JSON Compare | All JSON Tools.
All processing happens locally in your browser — nothing is uploaded.
JSONPath expression:
Expression must start with $. A non-empty result list means the expression matched. Ctrl+Enter in either box also evaluates.
Input (JSON document)
Output (matches)
Evaluates automatically as you type.
Paste JSON on the left, type a JSONPath expression, then evaluate. All processing stays in your browser.
JSONPath quick reference (RFC 9535 style): $ root .name / ['name'] child [*] any element
.. descendant search (e.g. $..price) [0], [-1] index
[0:2] slice [?(…)] filter, e.g. $..book[?(@.price < 10)]. Note: an expression that is valid but finds nothing reports no matches instead of an error, which is useful when probing a document's shape.
JSONPath — a query language for JSON
JSONPath selects nodes inside a JSON document the way XPath selects nodes in XML: $ is the root, .name steps into a key, [n] indexes arrays, .. searches recursively, and ?(...) filters by expression. Unlike a full query language it only reads — it cannot transform or aggregate. An expression that matches nothing returns an empty result, not an error.
RFC 9535 (2024) standardized the syntax this page follows.
🔷 JSON Tools
Run JSONPath queries against JSON documents with wildcards, filters and slices.