All tools

JSONPath tester

Try JSONPath queries on your JSON and see every match with its place. Free, with no account or uploads.

Paste JSON and try a JSONPath query

Every match is listed with its place in the document. Queries follow RFC 9535.

Paste below or drop a text file here · up to 10 MB
Query language
JSONPathJSON Pointer

JSONPath: $.users[*].name, $..id, $.users[0:2], or $.users[?@.role == "editor"]. JSON Pointer: /users/0/id; ~1 means / and ~0 means ~. Values retain exact numeric text. Filters require safe numbers.

Results appear here; your source stays intact.
Start with a document or try the example.Ctrl/Cmd + F to find · Ctrl/Cmd + Z to undo · Escape, then Tab to leave the editor

Source, comparison and schema text stay in this tab and clear on refresh. Files are not uploaded. The editor never runs pasted JavaScript. Cancel stops the worker without changing your source.

How it works and help
One workspace. All on your device.
5 million characters · 100 levels · 100,000 values

A little help along the way

Say what you want to do: make it readable (Edit, to format or repair), look through it (Explore), turn it into CSV or YAML (Convert) or compare two (Compare). The page says at once whether your JSON is valid. Under More options every workflow has its tab, with Query to select data and Schema to check a contract. Results stay separate until you choose Use result as source.

Questions people ask

Which JSONPath syntax does it use?
RFC 9535, the standard for JSONPath: $.books[*].title, $..id for every id at any depth, slices such as $.books[0:2], and filters such as $.books[?@.price < 10].
Does a filter run code?
No. Filters are read as JSONPath, never as JavaScript, and nothing you paste is run. A filter that compares numbers needs numbers JavaScript can hold exactly.
Can I select one value by its exact place?
Yes. Switch Query language to JSON Pointer and give a path such as /books/0/title. It reads big numbers without rounding them.

This page is the JSON formatter, opened for this one job; every other tool it has is one press away. Each of its settings is explained on the JSON formatter's own page.