ConverterNew

JSON to Query String

Convert JSON objects to URL query strings

100% client-side — your data never leaves your browserNo data stored or uploadedFree for lifetime · No signup

What this tool converts

This tool takes a flat JSON object and converts it into a URL-encoded query string using the browser's native URLSearchParams — the same encoding logic browsers use for form submissions and fetch requests. Array values are expanded into repeated keys (e.g. {"tag":["a","b"]} becomes tag=a&tag=b), and special characters in keys or values are percent-encoded automatically.

It only accepts a top-level JSON object, not an array or a primitive — nested objects inside values get stringified with String(), which usually isn't what you want, so keep the structure flat before converting.

When to use it

Use it when building a URL by hand for an API request, a webhook test, or a redirect link, and you have the parameters as a JSON object (from a config file, a Postman collection, or code you're debugging) rather than typed out as key=value pairs. It's also handy when constructing analytics or tracking links where you need several UTM parameters encoded correctly, since manual percent-encoding is error-prone for spaces and special characters.

For the reverse direction — pulling a JSON object back out of an existing query string — use the companion Query String to JSON tool.

Example

Input {"q": "rate limiting", "page": 2, "tags": ["api", "backend"]} converts to q=rate+limiting&page=2&tags=api&tags=backend — note the space in "rate limiting" becomes a +, and the tags array produces two separate tags= entries rather than a single comma-joined value.

How to use the JSON to Query String tool

  1. 1

    Paste a JSON object

    Must be a flat object at the top level — arrays and primitives aren't accepted as input.

  2. 2

    Click Convert

    URLSearchParams encodes each key/value pair, expanding arrays into repeated keys.

  3. 3

    Copy the result

    The output is a ready-to-use query string you can append to any URL after a ?.

  4. 4

    Share it

    Copy a permalink to hand the exact input JSON to a teammate.

Frequently asked questions

How are arrays handled?

Each array element becomes its own repeated key, e.g. {"id":[1,2]} → id=1&id=2. This matches how most backend frameworks (Express, Rails, PHP with array syntax) expect repeated parameters, but check your specific API — some expect comma-joined values instead.

What happens with nested objects as values?

Nested objects get converted with JavaScript's String() coercion, which produces "[object Object]" — not useful output. Flatten nested structures into simple key/value pairs before converting.

How do I go the other direction, from a query string back to JSON?

Use the Query String to JSON tool — it's the exact inverse operation.

Is my JSON uploaded anywhere?

No. Conversion runs entirely in your browser using the native URLSearchParams API — nothing is sent to a server.

Related on TechLogHub

Get the next tool before you need it

One email a week: new and trending developer tools, fresh comparisons, and what shipped. Unsubscribe in one click.