URL Decoder
Decode percent-encoded (%20, %26…) text back to readable form.
Paste a percent-encoded URL or query string to decode it back into readable text — the counterpart to the URL Encoder. Turns %20 into a space, %26 into & and so on.
Formula / method
Examples
hello world
a&b=c
What percent-encoding is
URLs can only safely carry a limited set of characters, so anything outside that set gets replaced with a percent sign followed by two hexadecimal digits. A space becomes %20, an ampersand becomes %26, a slash becomes %2F, and a question mark becomes %3F. Non-English letters and emoji are first turned into their UTF-8 bytes and then each byte is percent-encoded, which is why a single accented character can appear as two or three codes in a row.
This decoder reverses that process, turning %2Fsearch%3Fq%3Dcafe%25 back into readable /search?q=cafe%. It runs entirely in your browser, so query strings, tokens or links you paste never leave your device.
When it helps
Reach for it when a link in a log file, email or redirect looks like gibberish, or when you need to read the real value of a UTF-8 parameter copied from an address bar. It is the exact opposite of the URL Encoder, so if you need to build a safe link instead of read one, use that tool. Note that a plus sign means a literal plus in a path but a space in an old-style form query, so decode with the original context in mind.
Where it's used
- Reading a shared link where spaces and symbols were turned into %20 and other codes
- Debugging query-string parameters in an API request or webhook
- Recovering the original destination from a redirect URL embedded in another link
- Making a copied search or UTM-tagged URL human-readable
- Turning percent-encoded UTF-8 bytes back into accented or non-English characters
Real-world examples
- 'https%3A%2F%2Fexample.com' decodes back to 'https://example.com'.
- A URL with '?q=caf%C3%A9%20menu' decodes to 'café menu' — %C3%A9 is the UTF-8 encoding of é.
- 'New%20York' turns back into 'New York' once the %20 spaces are decoded.
Did you know?
In URLs a space can be written as %20 or, inside a query string, as a plus sign (+) — a legacy of how HTML forms submit data as application/x-www-form-urlencoded.
FAQ
Why does it say invalid?
A stray % that is not followed by two valid hex digits makes the string impossible to decode. Check for malformed sequences.