Query String Parser

Use this free query string parser to decode URL parameters, group repeated keys, or build an encoded query string from one key-value pair per line.

All tools
Illustration for Query String Parser showing parse URL query strings into JSON or build encoded query strings from key-value lines.
Query String Parser artwork matches the live tool workflow: parse URL query strings into JSON or build encoded query strings from key-value lines. Use it with the calculator, examples, and result notes. View in the smoke-kawaii gallery
Inputs explained Result checks Example values Runs in your browser
Parsed query parameters
{
  "utm_source": "newsletter",
  "tag": [
    "a",
    "b"
  ]
}

3 parameters

Parameters
3
Duplicate keys
1
Output type
JSON object

URL query strings are useful for filters, tracking, and app state, but private tokens should not be shared in public URLs.

Formula steps

  1. Extract the query part from a URL or raw query string.
  2. Decode each parameter with URLSearchParams.
  3. Group repeated keys so duplicate values stay visible.

How to use the Query String Parser

  1. Choose Parse query when you have a URL or raw query string.
  2. Choose Build query when you have one key=value pair per line.
  3. Press Run query tool to decode parameters or create an encoded query string.
  4. Check duplicate keys and avoid sharing private tokens in public URLs.

What people use it for

Decode URL parameters while debugging filters, search pages, or app links.

Group repeated keys so duplicate values are easy to spot.

Build a correctly encoded query string from plain key-value lines.

Compare UTM links, search URLs, and app-state URLs before sharing.

Turn search-filter URLs into readable JSON for support tickets, QA notes, or API tests.

Quick examples

Full URL with repeated tag

https://example.com/products?utm_source=newsletter&tag=free&tag=calculator&page=2

4 parameters, 1 duplicate key, and tag shown as ["free", "calculator"]

Raw query with plus-space text

name=Access+Free+Tools&tool=json&empty=

3 parameters, name decoded as "Access Free Tools", and empty kept as a blank value

Build search filters

q=calculator tools, category=developer tools, page=1

?q=calculator+tools&category=developer+tools&page=1

Need the guide or a nearby tool?

Need a slower walkthrough, a related tool, or the full library? These links keep you close to the task you started.

Frequently asked questions

Plain-language answers about when to use the tool, what it does with your inputs, what to double-check, and how privacy works.

When should I use the Query String Parser?

Use it when your task matches one of these common needs: Decode URL parameters while debugging filters, search pages, or app links. Group repeated keys so duplicate values are easy to spot. It works best when you already know the text, code, URL, mode, format, or technical setting the page asks for.

What is the Query String Parser doing with my inputs?

In plain language: Parse mode extracts the query part from a full URL, raw query string, or question-mark string, removes hash fragments from raw input, reads the parameters with URLSearchParams, and groups repeated keys as arrays. Build mode reads one key=value line at a time, appends each pair with URLSearchParams, and returns a copy-ready encoded query string. The examples on the page are there so you can compare your inputs with a filled-out example before copying the answer.

What do the main Query String Parser inputs mean?

Parse query mode: Paste a full URL, a raw query string, or text that starts with a question mark. The tool works on the query part after the question mark. Build query mode: Enter one key=value pair per line. Blank values are allowed when the target app expects an empty parameter. Repeated keys: The parser keeps repeated parameter names visible as arrays in JSON, and build mode lets you repeat the same key on multiple lines. Encoded characters: URLSearchParams decodes query values in parse mode and encodes spaces and special characters when building the output. Private URL data: Treat query strings as shareable URL text, not as a secret place to put tokens, passwords, or customer identifiers.

How should I read the Query String Parser answer?

Read the output next to your original input. If the tool changes format, units, encoding, spacing, or capitalization, compare a small sample before copying the whole result into another app.

What should I double-check before trusting the answer?

Query strings can be logged, shared, or indexed. Do not place passwords, private tokens, or sensitive identifiers in public URLs. Also check the selected mode, input format, encoding, and whether the text includes private keys, passwords, or sensitive data.

Can I paste a full URL instead of only the query string?

Yes. In parse mode you can paste a full URL such as https://example.com/products?tag=free&page=2, a raw string such as tag=free&page=2, or the same string with a leading question mark. The tool extracts and parses the query part.

How does the parser handle repeated parameters?

Repeated keys stay visible. For tag=free&tag=calculator&page=2, the JSON output shows tag as an array with both values, and the duplicate-key count warns you that the same parameter name appeared more than once.

Why did a space become a plus sign in the built query?

URLSearchParams serializes spaces in query values as plus signs. That is normal for form-style query strings, so q=calculator tools becomes ?q=calculator+tools when the builder returns the URL-ready query.

Is this a complete URL parser?

No. It focuses on the query string: the part after the question mark. It does not break a URL into protocol, host, path, port, and hash fields except when it needs to extract the query section from a full URL.

Can build mode create array-style query parameters?

It appends exactly the keys you enter. Use tag=free and tag=calculator on separate lines for repeated-key arrays, or enter bracket-style keys such as tag[]=free only when the target app expects that convention.

Does the site save what I enter?

No. The tool runs in your browser tab. Your recent answers stay only on the page while you use it, and they are not sent to a server.

Related tools