URL Encoder / Decoder
Percent-encode text for URLs and query strings, or decode %20-style strings back to readable text.
How to URL-encode or decode
- Paste text or a URL into the input box.
- Choose Encode or Decode and the mode: Component for query values, Full URL to keep :/?#& intact, or Form for + spaces.
- Copy the result. Use Swap ⇄ to reverse the operation.
Component vs full URL
encodeURIComponent escapes everything except letters, digits and - _ . ! ~ * ' ( ), so it is the right choice for a single query parameter value. encodeURI keeps characters with special meaning in URLs (: / ? # [ ] @ & = + $ ,) so a complete URL still works. Form encoding (application/x-www-form-urlencoded) writes spaces as +.
Frequently asked questions
What does %20 mean?
%20 is the percent-encoded form of a space (byte 0x20). Every non-ASCII character is first converted to UTF-8 bytes, and each byte becomes %XX.
Why does decoding fail?
A lone % or an incomplete sequence like %E2%82 is not valid. Check that the string was copied completely.
Is + a space?
Only in form-encoded data (query strings submitted by HTML forms). Choose “Form” mode to decode + as a space.
Is my data sent anywhere?
No. Encoding and decoding use your browser's built-in functions.