URL Decode Online
Decode percent-encoded URLs back to readable text instantly. Convert %20, %26, and other encoded characters to their original form.
Options
What the decode revealed
What It Does
URL decoding, also called percent decoding, reverses URL encoding. Web addresses and form data can only safely carry a limited set of characters, so anything else is escaped into percent sequences: a space becomes %20, an ampersand becomes %26, a question mark becomes %3F, and so on. That keeps the data intact as it travels through browsers, servers and APIs, but it makes the value hard to read. This tool restores the original text by converting every %XX sequence back to the character it represents, with full Unicode support. It also optionally turns + signs into spaces, the way HTML form submissions encode them. Decoding only reverses encoding, it is not encryption, so it reveals nothing that was actually secret.
When to Use It
- A link in an email or log file is full of %20 and %3D escapes and you need to read the real address before you can act on it.
- You are debugging an API request and a query parameter arrived percent-encoded, so you want to see the actual value the client sent.
- A redirect URL was embedded inside another URL and encoded twice, leaving %2520 in the output, and you need to unwrap it to find the real destination.
- A form field submitted with application/x-www-form-urlencoded shows + where spaces should be and you want it back in plain readable form.
Worked Examples
Hello%20World%21%20price%3D%2410%26name%3DJohn
A normal percent-encoded string. It decodes to "Hello World! price=$10&name=John" — %20 becomes a space, %21 a !, %3D an =, %24 a $ and %26 an &.
https%3A%2F%2Fexample.com%2Fsearch%3Fq%3Dhello%2520world
A double-encoded value. One decode pass yields https://example.com/search?q=hello%20world — note the leftover %20. Because the output still contains a %XX sequence, decode it a second time to get the real space.
first+name%3DJohn+Doe%26city%3DNew+York
Form-encoded data using + for spaces. With Convert + to spaces enabled it decodes to "first name=John Doe&city=New York". Disable the option to keep the + characters literal.
Features
How to Use
1. Paste or type the encoded URL or text in the input area. 2. The decoded result appears instantly below. 3. Toggle the option to convert + signs to spaces if needed. 4. Read the insight panel to see whether the value was double-encoded or whether + signs were treated as spaces. 5. Click Copy to copy the decoded result, or Clear to reset.
Common Mistakes
- Assuming a single decode is always enough. If the output still contains %XX sequences, the value was double-encoded — you must decode it again to reach the original.
- Mixing up + and %20. A + only means a space in form-encoded query strings; elsewhere it is a literal plus. Turning every + into a space can corrupt values like email addresses or phone numbers.
- Decoding text that was never encoded. Running plain text through the decoder changes nothing, which can fool you into thinking the tool failed when the input simply had no escapes to undo.
- Treating URL encoding as a security measure. Percent encoding hides nothing — anyone can reverse it — so never rely on it to protect tokens, keys or personal data in a URL.
Frequently Asked Questions
All decoding happens locally in your browser. No data is sent to any server. Your text remains completely private.