What URL encoding is, and what this tool does
A web address can only safely contain a limited set of characters. Spaces are forbidden, and characters like &, ?, # and = already have jobs inside a URL — the & separates one query parameter from the next, the ? starts the query, the # jumps to a section of the page. Put text containing those characters into an address as-is, and the browser cannot tell where the text ends and the address's own machinery begins. Percent-encoding is the standard fix: each unsafe character is replaced by a percent sign followed by its two-digit hexadecimal code. Press Encode for URL above and this tool encodes your text exactly the way JavaScript's encodeURIComponent — and every web platform — does it; press Decode and an encoded string comes back as readable text.
The classic example: a b&c encodes to a%20b%26c — the space became %20 and the ampersand %26, so the whole thing can sit inside a link, a search query or a form submission without breaking it.
Common percent-encodings
| Character | Encoded | Character | Encoded |
|---|---|---|---|
| space | %20 | & | %26 |
| ? | %3F | # | %23 |
| = | %3D | % | %25 |
| / | %2F | + | %2B |
| @ | %40 | : | %3A |
| é (and other non-ASCII) | %C3%A9 | € | %E2%82%AC |
Letters, digits and a few marks (- _ . ~) pass through untouched. Everything else — including accented letters and emoji — is encoded as the percent-form of its UTF-8 bytes, which is why a single é becomes two codes (%C3%A9) and an emoji becomes four.
Component encoding vs whole-address encoding
This tool encodes a component — a piece of text destined to live inside a URL, such as a search term, a file name or a query value. That is the stricter and safer of the two standard operations: it encodes characters like / and ? even though they are legal elsewhere in an address, because inside a value they would be misread. The practical rule: if you are building a link like example.com/search?q=YOUR+TEXT, encode only the part you are inserting, with this tool, and paste it into the finished address. Do not run a complete working URL through the encoder — its own ://, ? and & will be encoded too, and the result will no longer work as a link. The decoder, on the other hand, is safe on anything: paste a full encoded address and it simply makes every percent-code readable again, which is how you inspect what a strange link actually says before deciding whether to click it.
Frequently asked questions
Why does a space become %20 and sometimes +?
Both mean a space. The '+' form is used in query strings produced by HTML forms (the application/x-www-form-urlencoded format); %20 is the general percent-encoding used everywhere else in an address. This encoder always produces %20, which is valid in every position.
Can I decode a complete URL with this tool?
Yes — decoding is harmless on a full address and is a good way to read what an encoded link really points to. Just do not re-encode a complete URL with the Encode button afterward; encode only the text values you insert into an address.
Why did decoding fail with 'Invalid encoded URL'?
The text contains a '%' that is not followed by two hexadecimal characters, or a percent-sequence that does not form valid UTF-8 text. That usually means the string was cut short when copied, or it was encoded twice and needs a second pass through the decoder.
Is the text I paste uploaded anywhere?
No. Encoding and decoding happen in your browser, on your device — safe for links containing search terms or values you would rather not send to a server.
Private by design: this tool runs entirely in your browser. Text you paste here is never uploaded, stored or shared.