Query String Parser

Turn a query string or full URL into a readable key-value table.

This tool runs entirely in your browser. Your files are never uploaded to a server.

What this tool does

Turns a raw query string or the query portion of a pasted URL into a readable two-column table. It decodes parameter names and values and preserves repeated keys as separate rows in their original order.

How to use it

Paste parameters with or without a leading question mark, or paste a full URL containing ?. Results appear as you type. Use Reset to clear the input; no submit button or network request is involved.

Worked example

Entering ?q=hello+world&tag=a&tag=b&empty= produces four rows: q has value "hello world", tag appears twice with values a and b, and empty has a blank value.

Accepted input

Inputs such as a=1&b=2 and ?a=1&b=2 are treated alike. If the text contains a question mark anywhere, the component discards everything before the first ? and parses the remaining text as parameters.

Decoding rules

The browser's URLSearchParams API handles decoding: plus signs become spaces and valid percent-encoded bytes such as %2F become readable characters. Missing equals signs are accepted and produce an empty value.

Limitations

This is a parser, not a validator or full URL analyzer. It does not display URL protocol, host, path, or fragment separately, and it does not warn about duplicate names, application-specific types, malformed semantics, or unsafe destinations.

Standards and privacy

Parsing follows the browser's implementation of URLSearchParams and application/x-www-form-urlencoded behavior. Everything runs locally in your browser; the pasted query or URL is not fetched or uploaded.

Frequently Asked Questions

Do I need to include the question mark?
No — the parser accepts the query string with or without a leading ?, and also works if you paste an entire URL, extracting just the query part.
How are duplicate keys like ?id=1&id=2 handled?
Each occurrence gets its own row in the table, so you can see every value for a repeated key instead of just the last one.
Are values automatically decoded?
Yes, URLSearchParams handles the decoding, so a value like %20 or + shows up as a readable space in the table.