URL Decoder – Decode Percent Encoding Online

Decode a URL encoded string online: turn percent encoding back into readable text.

Encode Decode ← Home

About URL Decoding

The reverse of the encoder: a percent-encoded string like %20 goes back to a space. Under the hood it's the browser's own decodeURIComponent(), so the behavior matches what you'd get in JavaScript.

Handy when you're reading through access logs full of encoded URLs, when a query string arrives with %-escaped parameters you actually want to read, or when a third-party API returns percent-encoded text. UTF-8 is handled properly, so Chinese, Japanese and accented characters all come back intact.

The whole thing runs client-side — nothing you paste is sent anywhere.

How to decode percent encoding

Paste your URL encoded string into the input. With live mode enabled, the decoded text appears as you type. For example, Hello%20World%21 becomes Hello World! and %2F becomes /.

This tool uses decodeURIComponent to decode percent-encoded UTF-8 text. A literal plus sign (+) stays a plus sign; for form-encoded values where + means a space, replace it with %20 before decoding.

Decode one layer at a time: %2520 becomes %20 on the first pass and a space on the second. Incomplete escapes such as %2 or invalid UTF-8 sequences produce an error; check the source string before trying again.

Frequently Asked Questions

What is URL decoding?

URL decoding reverses percent-encoding: it takes strings like %20 or %E4%B8%AD and converts them back into their original characters (a space or a Chinese character). It uses the browser's native decodeURIComponent function.

How do I decode a query string with multiple parameters?

Paste the entire encoded query string (for example name=John%20Doe%26city%3DParis) into the input. The decoder restores every parameter to its readable form at once.

Can it decode UTF-8 percent-encoding, such as Chinese characters?

Yes. decodeURIComponent fully supports UTF-8, so sequences like %E4%B8%AD%E6%96%87 decode correctly to Chinese text.

Is decoding done locally in my browser?

Yes. Everything runs client-side with JavaScript, and your input is never sent to any server.

Related Tools