Free exact browser converter
URL Decoder
Decode URL percent escapes into readable UTF-8. Choose whether a literal plus remains + or represents a space in form values.
Interactive tool
Decode a URL value
Ready
Choose a clear output representation.
Detailed conversion guide
How URL Decoding Works
A percent escape represents one byte. Decoding %20 gives a space, while %E4%BD%A0 is the UTF-8 byte sequence for 你. This tool decodes exactly one layer, so %252F becomes %2F.
Percent decoding leaves a literal + as +. For application/x-www-form-urlencoded values, use form mode to treat a literal + as a space before percent decoding. An encoded %2B still becomes a plus in either mode.
| Input | Output | Meaning |
|---|---|---|
a%2Bb%20c | a+b c | An encoded plus and a space |
%E4%BD%A0%E5%A5%BD | 你好 | UTF-8 percent escapes |
%252F | %2F | One decoding pass |
Decode a URL Component in JavaScript
Choose the mode based on how the source was encoded. Decode a single query value after separating it from the query string.
const formEncoded = false;
const decoded = decodeURIComponent(
formEncoded ? input.replace(/\+/g, " ") : input
);Malformed Escapes and URL Delimiters
The tool rejects a percent sign without two hex digits and invalid UTF-8. Enter %25 to encode a literal percent sign. It does not guess a legacy character encoding.
Decoding a whole URL for reading can turn %26 into & or %2F into /. Split the URL into components before decoding if you plan to reconstruct a request. Decoding does not open the pasted URL.
Related converters
Continue with exact representation converters
Choose the conversion that matches the representation you have.