November 9, 2026

JSONPath Tester

APIs return nested JSON, and the fastest way to pull one value out of a deep structure is a JSONPath expression: $.store.book[0].title says exactly what you mean, without a chain of property accesses. But writing paths by trial and error against a live API is painful, because a wrong path fails silently with an empty result and you cannot tell whether the path or the data is wrong. This tester removes the guesswork. Paste a JSON document, write a path, and see every matching value instantly — including wildcard results, array slices and recursive descent — so you can confirm a path works before it goes into code. It supports the expressions developers use most: child access, array indices, wildcards, and recursive descent, with clear results for paths that match nothing. Paste, query, confirm, and ship the path with confidence.

Quick Answer: Paste JSON and a JSONPath expression such as $.store.book[0].title, and see every matching value instantly.

Free Online Tool

JSONPath Tester





How to Use the JSONPath Tester

  1. Paste your JSON document into the input box.
  2. Write a JSONPath expression, starting with $, such as $.user.name.
  3. Press Test Path and read the matching values.
  4. Try wildcards ($.items[*].id) or recursive descent ($..title) for broader queries.
  5. Copy a working path into your code or test.

Key Features

  • Child access, array indices and dot notation
  • Wildcard queries across objects and arrays
  • Recursive descent with the .. operator
  • Clear “no matches” reporting for wrong paths
  • Free, instant and entirely in your browser

Best Practices and Tips

  • Start from the root $ and add one segment at a time, checking matches at each step.
  • Use [*] to test a path across every element of an array before narrowing to an index.
  • Recursive descent ($..title) is powerful but can surprise you: it matches at every depth, including nested objects.
  • If a path returns nothing, check the key spelling and case first — JSON keys are case-sensitive.
  • Quote keys with special characters using bracket notation, such as $[“my-key”].

Common Mistakes to Avoid

  • Forgetting the leading $, which makes the whole expression invalid.
  • Using dot notation for keys containing dots, dashes or spaces, which need brackets.
  • Assuming a wildcard returns a single value: it returns a list, even for one match.
  • Writing a path against the wrong document shape, such as an object where an array was expected.

Frequently Asked Questions

What is JSONPath?

JSONPath is a query language for JSON, inspired by XPath for XML. An expression such as $.store.book[0].title navigates from the document root ($) through objects and arrays to the values you want, and it is supported by many libraries and API-testing tools.

What does $.store.book[*].title return?

Every title in the book array, as a list. The [*] wildcard iterates over all elements, so the result is a list of all matching values rather than a single value.

What does $..title mean?

Recursive descent: it finds every value stored under a key named title, at any depth in the document. It is handy for exploration, but use a precise path in production code to avoid surprise matches.

Why does my path return no matches?

Usually the key is misspelled, the case differs, or the structure is not what you assumed — an array where you expected an object, or a nested object you skipped. Test shorter prefixes to find where the path diverges.

Is the JSONPath tester free?

Yes — free, unlimited and no sign-up required.

Related Tools