About the URL Encoder / Decoder
The URL Encoder converts special characters into percent-encoded form so they can be safely placed in a URL, and decodes encoded URLs back into readable text. Characters like spaces, &, ?, #, / and non-English letters have special meaning in URLs or are not allowed at all. Encoding them prevents broken links, wrong query parameters and hard-to-find bugs.
How to Use the URL Encoder / Decoder
- Paste the text or URL you want to encode or decode.
- Click Encode or Decode.
- Copy the result and use it in your link, API request or code.
How Percent-Encoding Works
Each unsafe character is replaced by % followed by its hexadecimal byte value in UTF-8. A space becomes %20, & becomes %26, = becomes %3D and an Urdu or Arabic letter becomes several %XX sequences. In HTML form submissions, spaces are sometimes written as + instead of %20.
Encode the Value, Not the Whole URL
A common mistake is to encode a complete URL, which also encodes the :// and slashes and breaks the link. Encode only the individual parameter values. In JavaScript use encodeURIComponent(value); in C# use Uri.EscapeDataString(value); in Python use urllib.parse.quote(value). For example, searching for tea & coffee should produce ?q=tea%20%26%20coffee.
Double Encoding
If you see %2520 in a URL, the text was encoded twice: % itself became %25. Decode once to check, and make sure only one layer of your code performs the encoding.
Frequently Asked Questions
What is %20?
It is the encoded form of a space character.
Should I use + or %20 for spaces?
%20 works everywhere. + only means a space inside query strings submitted by HTML forms.
Do I need to encode Urdu or emoji characters?
Yes. Browsers display them nicely, but they are sent as UTF-8 percent-encoded bytes.
Is URL encoding a security feature?
No, it only makes text safe to transport in a URL. You still need to validate and sanitize input on the server.