Query String to JSON Converter

Convert a URL query string to pretty JSON and back again in your browser. Your parameters stay on your device.

The Query String to JSON converter parses and builds everything locally in your browser. The query strings, URLs, and JSON you paste — including any tokens or IDs inside them — never leave your device and are not uploaded to ArrayKit.

Open the JSON Formatter to tidy the result

About Query String to JSON

The Query String to JSON converter turns a URL query string into clean, readable JSON and converts JSON right back into a query string. Paste a raw query — with or without a leading question mark, or an entire URL — and it decodes percent-encoded values, groups repeated keys like ids=1&ids=2 into arrays, and expands nested bracket keys such as filter[status]=active and dot keys like filter.status into structured objects. Switch direction to serialize a JSON object into an encoded query string for links, API calls, or analytics parameters. It is built for developers, QA engineers, and marketers untangling tracking links or debugging request parameters. Everything is parsed in your browser, so the URLs and payloads you paste stay on your device and are never uploaded.

Features

How to use the Query String to JSON

  1. Keep the Query string → JSON tab selected.
  2. Paste a query string or a full URL into the input box.
  3. Read the formatted JSON, then copy it or download it as a .json file.
  4. Switch to JSON → Query string and paste a JSON object to build an encoded query.

Example

Input

filter[status]=active&ids=1&ids=2&q=hello%20world

Output

{
  "filter": {
    "status": "active"
  },
  "ids": [
    "1",
    "2"
  ],
  "q": "hello world"
}

Repeated keys become an array, bracket keys nest, and %20 decodes to a space.

Common errors & troubleshooting

Frequently asked questions

How does the converter handle repeated query keys like tag=a&tag=b?
Repeated keys are collapsed into a JSON array, so tag=a&tag=b becomes {"tag":["a","b"]}. When you convert back, the array expands into repeated keys again.
Can it parse nested parameters such as filter[status]=active?
Yes. Bracket keys like filter[status]=active and dot keys like filter.status=active both expand into nested JSON objects, and nested objects serialize back to bracket keys.
Why are all my JSON values strings after converting a query string?
A query string only carries text, so every value parses as a string, including numbers and booleans. Convert them to the right type in your own code once you have the JSON.
How do I turn a JSON object into a query string?
Switch to the JSON → Query string tab and paste a JSON object. Nested objects become bracket keys, arrays become repeated keys, and values are percent-encoded for you.
Does it accept a full URL or only the query part?
You can paste a whole URL — everything before the ? and any #fragment is stripped automatically — or just the raw query string with or without a leading ?.
Are the URLs and parameters I convert kept private?
Yes. Parsing and serializing happen entirely in your browser, so the query strings and JSON you paste stay on your device and are never uploaded to ArrayKit.

Related tools

All ArrayKit tools