URL Decoder
Turn a percent-encoded string back into readable text.
How URL decoding works
Decoding reverses percent-encoding: every %XX sequence is converted back into the character it represents, so %20 becomes a space and %26 becomes & again. It's the step you need whenever you're reading a raw query string, a logged URL, or a value copied out of an API request.
Component vs. Full URL
Component decoding (decodeURIComponent) unescapes every percent-encoded sequence, including reserved characters like / ? &. Use it for a single decoded value.
Full URL decoding (decodeURI) is more conservative — it leaves sequences that represent structural URL characters encoded, so a full URL doesn't fall apart after decoding.
Invalid input
A malformed % sequence (like a stray % not followed by two hex digits) can't be decoded — the tool will tell you instead of silently producing garbage.
Frequently asked questions
Is my data sent to a server?+
No. Decoding happens entirely in your browser. Nothing you paste here is transmitted or stored.
Why do I get an "invalid percent-encoding" error?+
This means the input contains a % that isn't followed by two valid hexadecimal digits, or an incomplete multi-byte UTF-8 sequence. Double-check you've pasted the full, unmodified encoded string.
Can I decode a whole URL, not just one parameter?+
Yes — switch the scope toggle to "Full URL" so structural characters like : / ? # are left as-is instead of also being decoded.
Related tools
URL Encoder
Encode text and URLs to percent-encoded format instantly.
URL Parser
SoonBreak a URL down into protocol, host, path, query and hash.
Query String Parser
SoonTurn a query string into a readable key/value table.