What is URL encoding?
URL encoding โ also called percent encoding โ rewrites text so it can travel safely inside a URL. Characters that are not allowed in a URL, or that have special meaning such as ?, &, and =, are replaced by a % followed by two hexadecimal digits that identify the UTF-8 byte.
For example, a space becomes %20, and the letter A stays as A because it is already safe.
URL encoding vs decoding
Encoding converts readable text into its percent-encoded form, usually before it is placed in a URL. Decoding reverses the process, turning %20 back into a space so you can read the original value. This tool is bidirectional: choose a mode, paste your text, and the result appears instantly.
Component vs full URL
Browsers expose two related functions, and this tool exposes both:
- Component uses
encodeURIComponent / decodeURIComponent. It escapes every reserved character, which is what you want for a single query-parameter value. - Full URL uses
encodeURI / decodeURI. It leaves the delimiters : / ? # & = untouched so a complete address still works.
A common mistake is encoding a whole URL with component mode, which destroys the structure by escaping its slashes and query separators.
Common examples
hello world
hello%20world
A space becomes %20 (or + in form bodies).
name=Ada & city=London
name%3DAda%20%26%20city%3DLondon
& and = are reserved, so component mode escapes them.
price=10โฌ
price%3D10%E2%82%AC
โฌ is a multi-byte UTF-8 character: %E2%82%AC.
search?q=a/b
search%3Fq%3Da%2Fb
? and / are escaped in component mode, kept in full-URL mode.
Spaces and special characters
Spaces are not valid in a URL, so they are encoded as %20. In HTML form submissions a space may instead appear as +, which is a form-encoding convention rather than standard percent encoding โ this tool uses %20.
Percent encoding
Each percent escape is exactly three characters: % plus two hexadecimal digits. The digits are the byte value, so byte 0x20 (32) is a space and becomes %20. Text that uses multiple bytes โ accented letters, other scripts, and emoji โ produces several escapes in a row.
Unicode
Percent encoding works on UTF-8 bytes. A character such as รฉ is two bytes and encodes to %C3%A9, while an emoji such as ๐ is four bytes and encodes to %F0%9F%9A%80. Decoding those escapes reconstructs the original character.
Privacy
Encoding and decoding run locally in your browser. The text you enter is not uploaded to TechFixGen servers and is not included in analytics events. No account or signup is required. Working with Base64 instead? See the Base64 Encoder & Decoder.