{ }jsonkit
Format
Validate
Convert
Query
Generate
jq

jq online tester

Run real jq 1.8 filters on JSON, with the -r, -c, -s and -S flags.
jqjq filter · results update as you type
301 B · paste or drop a file
1 2 3 4 5 6 7
✓ complete301 B → n/a0.0 ms

About jq Tester

This jq tester runs jq online with the real jq 1.8 engine, compiled to WebAssembly. Paste JSON, type a filter and see the output as you type, exactly as the jq command line would print it.

The toolbar has the flags people use most: -r for raw strings, -c for one result per line, -s to read all inputs into one array, and -S to sort object keys. The input can hold several JSON values in a row, and jq runs the filter on each one.

jq runs in your browser. Your JSON is not uploaded. The jq engine is about 350 KB compressed and loads only on this page.

How it works

Real jq, not a subset

The filter runs on jq 1.8.2 built for WebAssembly, so pipes, select, map, reduce, path expressions, string interpolation, @base64 and @csv formats and the full builtin library all behave as they do in your terminal.

Flags

Raw output (-r) prints strings without quotes. Compact (-c) puts each result on one line. Slurp (-s) wraps all input values in one array before the filter runs. Sort keys (-S) orders object keys in the output.

Errors from jq itself

Compile errors show jq's own message with the line and column of the filter. Runtime errors, such as indexing a number with a string, show the message jq prints. Invalid JSON input reports where parsing stopped.

Several results

A filter like .users[] emits one value per match. Each result is printed in turn, separated by newlines, just like the command line output.

Frequently asked questions

Is this the real jq?

Yes. It is jq 1.8.2 compiled to WebAssembly with the jq-wasm package. Filters behave like the jq command line, apart from options that read files or environment variables.

How do I get strings without quotes?

Turn on Raw output (-r). It prints string results as plain text, which is what you want for lists of names or IDs.

How do I process a JSON Lines file?

Paste the lines as they are. jq runs the filter on each value. Turn on Slurp (-s) to collect them into one array first, for example to count them with length.

What is the difference between jq and JSONPath?

JSONPath only selects values. jq can also filter, reshape, compute and build new JSON. Use the JSONPath tester for JSONPath expressions.

Can a filter freeze the page?

Yes, if it never ends, for example repeat(1) without limit. jq runs in this tab, so close or reload it to stop a runaway filter.

Is my JSON uploaded?

No. jq runs in your browser after the engine has loaded.

Sources & last verified

We checked this tool's behavior and the claims on this page against the specifications below on . The tool runs in your browser, so the output you see is exactly what the engine produced.

Found a wrong result or an outdated claim? Report an error and we will check it again.