Query String Parser
Paste a URL or the part after the question mark. The parser decodes values, turns + into a space, and preserves empty or repeated keys.
How to parse a query string
-
1
Paste the URL
Either the whole URL or just the portion after ?. Fragments (#...) are ignored automatically.
-
2
Read the pairs
Each parameter becomes a row with its decoded key and value.
-
3
Check for duplicates
Repeated keys appear as separate rows in the same order as the URL.
Typical tracking URL, decoded
A URL like https://shop.example/checkout?product=hat&utm_source=newsletter&utm_medium=email%20weekly&ref= parses as:
| Key | Value |
|---|---|
| product | hat |
| utm_source | newsletter |
| utm_medium | email weekly |
| ref | (empty) |
Edge cases the parser handles
- Empty values (
?ref=) are kept, some backends care about the difference between missing and empty. - Keys with no
=sign (?debug) are parsed with an empty value. - Duplicate keys (
?id=1&id=2) are preserved in order; no merge is performed because framework conventions differ. +decoding: in the query portion+becomes a space to stay compatible withapplication/x-www-form-urlencodedconsumers.- Invalid percent-escapes (like a stray
%ZZ) are left in the output so you can see the bug instead of silently losing data.
Frequently Asked Questions
No. Everything after the fragment marker (#) belongs to the URL fragment, not the query string, so it is stripped before parsing. Paste just the fragment separately if you need to inspect it.
Each occurrence appears in its own row and in the original order. Servers handle repeated keys differently, so check your framework.
Yes. The parser accepts inputs like ?a=1&b=2, a=1&b=2, or a full URL and figures out which part to inspect.
No. This is a server-backed tool, so the text is sent to our server when you choose Parse. Remove passwords, access tokens and other secrets before using it.
Related Tools
ASCII Table Reference
Full ASCII table from 0 to 127 with decimal, hex, octal, binary, standard names and HTML numeric-reference notation, including NUL, LF and DEL.
Color Palette Generator
Generate monochromatic, analogous, complementary, triadic or tetradic color palettes from a base HEX color and export copy-ready CSS variables.
FPS Counter
Measure browser FPS with requestAnimationFrame, smoothing, min/max frame rate, warnings and an optional graph. Runs locally with no upload or API.
HTML Character Reference
Searchable list of HTML entities, their named and numeric codes, and a one-click copy for special characters and symbols.
HEX Color Picker
Pick or enter a HEX colour and get RGB, HSL, approximate CMYK, relative luminance and contrast ratios against white and black.
Keyboard Shortcut Reference
Search documented default keyboard shortcuts for VS Code, Chrome and Bash with GNU Readline on macOS, Windows and Linux.
Tool available in other languages
- เครื่องมือแยกสตริงสำหรับคำสั่งค้นหา (Query String Parser) [TH]
- Parser query stringa [PL]
- Phân tích chuỗi truy vấn [VI]
- Analisador de String de Consulta [PT]
- クエリ文字列の解析 [JA]
- محلل سطر الاستعلام [AR]
- Querystringverwerker [NL]
- 쿼리 문자열 파서 [KO]
- Analizador de Cadenas de Consulta [ES]
- Stränganalys för frågestruktur [SV]
- Pemisahan String Pernyataan Kueri [ID]
- Analyseur de chaîne de requête [FR]
- Abfragezeichenfolgen-Parser [DE]
- Parser di Stringa di Query [IT]
- Парсер строки запроса [RU]
- Sorgu Dizesi Ayrıştırıcı [TR]
- 查询字符串解析器 [ZH]