Best for
Best for decoding query strings, inspecting duplicate parameters, checking UTM fields, debugging OAuth callback URLs, and copying query parameters as JSON.
Parse full URLs or raw query strings into decoded parameters, duplicate key arrays, UTM fields, and copy-ready JSON. This is useful for OAuth callbacks, analytics links, webhooks, API clients, and bug reports.
Safety note: use redacted or test URLs when sharing results. Do not paste real production auth codes, bearer tokens, session IDs, secrets, or private customer URLs into public reports or screenshots.
Waiting for a URL or query string.
| Key | Value | Notes |
|---|---|---|
| Run the parser to inspect query parameters. | ||
Best for decoding query strings, inspecting duplicate parameters, checking UTM fields, debugging OAuth callback URLs, and copying query parameters as JSON.
Not for crawling websites, validating full URL security, expanding shortened links, or making network requests to remote pages.
Paste the full callback URL or query string, parse duplicate keys into arrays, decode encoded values, copy the JSON output, then inspect JWT or JSON values in the next local tool.
Sample input/output: use these examples to check how the parser decodes values, preserves duplicate keys, and keeps edge cases visible.
https://app.example/callback?code=REDACTED&state=abc&redirect_uri=https%3A%2F%2Fapp.example%2Fdone shows code, state, and a decoded redirect_uri field.?utm_source=docs&utm_campaign=launch&tag=api&tag=json labels UTM fields and outputs tag as an array.?filter=%7B%22status%22%3A%22open%22%7D decodes the value as JSON-like text you can copy into JSON Formatter.?debug=&mode=test#step=2 preserves debug as an empty string and keeps the fragment visible in the original input.Use it for OAuth redirect debugging, UTM campaign review, webhook callback inspection, support tickets, API examples, and checking whether repeated query keys were preserved.
Decode a URL here, send encoded values to URL Encoder / Decoder, inspect JWT values in JWT Decoder, then format JSON in JSON Formatter.
| Issue | Why it happens | Fix |
|---|---|---|
| No question mark | The input may be a raw query string. | The parser accepts either ?a=1 or a=1. |
| Encoded values look unreadable | Values may contain percent-encoded characters such as %2F, %3A, or %20. | Run the parser to decode them before copying JSON output. |
| Duplicate keys are confusing | APIs and forms can repeat parameters. | Duplicate values are grouped into arrays instead of overwriting the first value. |
| Full URL pasted with fragment | OAuth and SPA callbacks sometimes keep data after #. | Check both visible query parameters and the preserved fragment when debugging redirects. |
| Case | Result |
|---|---|
| Empty value | Preserved as an empty string. |
| Hash fragment | Ignored for query parsing, but kept visible in the original input. |
| Encoded JSON parameter | Decoded as text, then can be sent to JSON Formatter if valid. |
No. Parsing runs in your browser and the pasted URL stays in the current page.
Yes. Paste either a full URL or only the part after the question mark.
UTM fields are common analytics campaign parameters such as utm_source, utm_medium, and utm_campaign.
Yes, but avoid sharing real authorization codes or production tokens in public reports.