Query String to JSON Converter
Runs in your browser — your data is never uploaded.
Paste a URL or a bare query string and get readable JSON. A key that appears more than once becomes an array, since that is how real APIs express lists and keeping only the last value would silently lose data. Percent escapes are decoded and a + is read as a space, which is the rule hand-rolled versions most often get wrong. Runs entirely in your browser.
0 characters · runs entirely in your browser
How to use Query String to JSON
- 1
Paste a full URL, a query string starting with ?, or bare key=value pairs.
- 2
The parameters are decoded and grouped as you type.
- 3
Copy the JSON, or download it.
Share
Embed this tool on your site
Paste this where you want the tool to appear. It runs entirely in your visitor's browser — no uploads, no account, no tracking.
Please keep the attribution line — it's what keeps these tools free.
Need a different size, a dark theme, or a different tool? Build an embed lets you preview it first.
Frequently asked questions
Why is one of my values an array?+
Because that key appeared more than once. tags=a&tags=b is how a list is expressed in a query string, so it becomes ["a","b"] rather than just "b".
Why does + become a space?+
In application/x-www-form-urlencoded, which is what query strings use, a plus sign encodes a space. decodeURIComponent alone does not do this, which is why so many hand-written parsers return "hello+world".
Can I paste a whole URL?+
Yes. Everything before the ? is ignored and the #fragment is stripped, so you can paste a URL straight out of the address bar.
What happens to a key with no value?+
It comes through as an empty string, which preserves the fact that the key was present — an important distinction for flags like ?debug.