URL Decoder — Decode Percent-Encoded URLs Online
FreeDecode percent-encoded URLs and query parameters instantly. Converts %XX sequences back to readable text. Free, browser-based, no upload.
What's next
Settings guide
Decoding mode:
- ·Decode component — Decodes all
%XXsequences including structural characters (%3F→?,%26→&,%2F→/). Use when decoding a single parameter value that may contain these characters. - ·Decode full URL — Decodes
%XXsequences for non-structural characters while leaving://,?,&, and=intact. Use when decoding a complete URL to make it readable while preserving its structure.
+ sign handling:
- ·Treat + as space — Decodes
+to a space character. Use when the input is from an HTML form submission (application/x-www-form-urlencoded). - ·Treat + as literal + — Leaves
+characters as-is. Use when the input is not form-encoded.
Format comparison
Decoded URL vs original URL: Decoding a URL for reading does not change the actual URL. The decoded version is for human inspection only — if you copy the decoded URL and make an HTTP request with it, the special characters may break the request. Encode again before using in a request.
URL decoding vs Base64 decoding: Percent-encoding and Base64 are both ways to represent data safely in ASCII text channels, but they serve different contexts. URL encoding is reversible character-by-character; Base64 encodes arbitrary binary into a fixed character set. A URL may contain a Base64-encoded parameter — in that case, decode the URL first, then decode the Base64.
How it works
Scan for encoded sequences
The input is scanned for % characters followed by two hexadecimal digits. Each sequence is identified as a candidate for decoding.
Validate sequences
Each %XX sequence is checked — XX must be valid hexadecimal (0–9, A–F, a–f). Invalid sequences (% followed by non-hex characters) are left unchanged.
Convert to bytes and characters
Each %XX is converted to its byte value. Multi-byte UTF-8 sequences (two or more consecutive %XX groups encoding a single Unicode character) are assembled and converted to the correct character.
Output the decoded text
The decoded string is displayed. Consecutive %XX groups that together represent a Unicode character are shown as a single readable character, not as separate decoded bytes.
About this format
URLs in browser address bars, server logs, and API responses are often percent-encoded — spaces appear as `%20` or `+`, special characters as `%3A` (`:`), `%2F` (`/`), `%40` (`@`). Paste a percent-encoded URL or query string and the decoded, human-readable version is shown instantly.
Common debugging uses: reading a redirect URL that has been embedded as a query parameter and encoded, decoding analytics tracking parameters, reading search query strings in access logs, and inspecting the actual content of a URL that was encoded before being sent to an API.