Direction
A + in the input means
Paste an encoded URL
Result
LocalThis runs in your browser. Nothing you paste is sent anywhere.
URL · Local tool
URL Decoder and Encoder
Turn %20 and %C3%A9 back into readable text, or encode text for a URL.
01 / Your device
the file stays here
02 / Browser memory
the work runs locally
03 / Your downloads
the result arrives here
How it works / no cloud
A conversion engine, not an upload form.
Percent-encoding is a text transformation, so it happens in JavaScript on the page as you type. A server would add a round trip and a copy of your URL in someone else's logs, which is the last place a URL with a token in it should be.
- Offline ready
- Installable app
- No file limit queue
Straight answers
No accordion. Nothing hidden.
- Is it free?
- Yes, with no watermark and no page limit.
- Does it need an account?
- No. There is no account system.
- Is my file processed on my device?
- Yes. The file is read by your browser and never uploaded. There is no server to send it to.
- What formats are supported?
- Text in either direction. Decoding handles UTF-8, so accented letters, non-Latin scripts and emoji come back as themselves. You choose whether a + means a space or a plus sign, and whether you are encoding one value or a whole URL.
- What are the limits?
- Bounded by what your browser will hold in a text box, which in practice is several megabytes. Input that is not valid percent-encoding is refused with the offending part quoted, rather than half decoded.
- Does it work on mobile?
- Yes, on any modern mobile browser. Large files are limited by the memory the phone gives the browser.
- Does it work offline?
- Yes, once the page has loaded. The tool keeps working with no network connection.
- Why does my decoded text come back with + signs, or with spaces where plus signs should be?
- Because a + means two different things. In a query string sent by a form it means a space. In a path it is a plus sign and nothing else. There is no way to tell which you have from the text alone, so this page asks rather than guessing. Getting it wrong turns a phone number like +1 802 into 1 802 with no warning.
- What is the difference between the two encoding modes?
- One value inside a URL escapes the characters that give a URL its structure, so a search term containing a slash or an ampersand cannot break out of the parameter it sits in. A whole URL leaves / ? : @ & = + $ # alone, because those are the structure. Use the first for one parameter, the second for a link you want to stay a link.
- Why does it refuse some input instead of decoding what it can?
- Because a half decoded URL looks decoded. If a percent escape is cut short, like %E0%A4%A, or a % is not followed by two hex digits, the tool quotes the part that broke and stops. You get a corrected input rather than output you have to check by hand.
- Is a URL decoder the same as a URL encoder?
- They are the two directions of the same thing, and both are on this page. Decode turns %20 back into a space, encode turns a space into %20. The button between the panes carries a result across so you can check a round trip without copying it yourself.
Keep working locally
3 available · more coming