URL Decoder — Decode or Encode with One Toggle

Decode percent-encoded URLs back to plain text, or flip to encode — converts %20, %26, %3D and all URI escape sequences instantly. Free, client-side.

🔒 100% Client-Side Processing

Your data is processed entirely in your browser and never transmitted to any server.

Example

Input

hello%20world%20%26%20more

Output

hello world & more

%20 becomes a space and %26 becomes & — decodeURIComponent reverses every percent-escape back to its literal character.

Convert to:
0 / 100M Limit

Common Use Cases

Reading logged URLs

Decode the percent-encoded query strings in access logs and analytics exports to see what users actually searched for or submitted.

Debugging redirect chains

Unwrap the nested encoded URLs inside OAuth callbacks, tracking links, and marketing redirects to see the true destination.

Inspecting form submissions

Decode application/x-www-form-urlencoded request bodies captured in DevTools to verify what a form actually sent.

Frequently Asked Questions

What is URL decoding?
URL decoding (percent-decoding) reverses percent-encoded escape sequences — like %20, %26, and %3D — back into their original characters, so an encoded URL or query string becomes readable plain text again.
What does %20 mean in a URL?
It is the percent-encoded space character. URLs cannot contain literal spaces, so they are escaped as %20. This decoder converts %20 and every other escape sequence (%26 → &, %2F → /, %3F → ?) back to readable text.
Why do I get a malformed URI error when decoding?
A lone % not followed by two hex digits makes the string invalid percent-encoding — often caused by double-decoding or truncated URLs. Check for stray % characters, or encode them as %25 first.
How do I decode a URL in JavaScript, Python, or PHP?
JavaScript: decodeURIComponent(str). Python: urllib.parse.unquote(str). PHP: rawurldecode($str). All three reverse percent-encoding the same way this tool does — paste a value here first to confirm what it actually decodes to.
I need to encode a URL, not decode one — where do I do that?
Use the "Convert to" toggle above the input box to switch to Encode without leaving this page — or visit the dedicated URL Encoder if you prefer.
Is decoding a URL the same as decrypting it?
No. Percent-decoding reverses a public, reversible text transformation — it isn't encryption and there's no secret key involved. Anyone can decode a percent-encoded URL, including a browser doing it automatically when it displays the address bar.
Does this expand shortened links like bit.ly or tinyurl?
No — this decodes percent-encoding (%20, %26, and similar escape sequences) inside a URL string. Expanding a shortened link means following its actual HTTP redirect to see the destination, which is a different lookup this client-side tool doesn't perform.
Is my data private when I use this tool?
Yes. This tool runs entirely in your browser using client-side JavaScript — nothing you type is transmitted to, logged by, or stored on any server. You can safely process confidential text, tokens, or code.