About the URL Encoder / Decoder
The URL Encoder / Decoder converts special characters into percent codes so they can be used safely inside a web address, and converts them back. A space becomes %20, and an ampersand becomes %26.
It uses the standard JavaScript encodeURIComponent and decodeURIComponent functions, so it is meant for query values and path pieces, not for a whole URL. Encoding a full address would also encode its colons and slashes.
How to use it
- Paste text into Input.
- Press Encode or Decode.
- Copy the Output.
When to use
Building a link with a search term that contains spaces or symbols.
Reading a long encoded link from an email or log.
If decode reports an error, the text contains a broken % sequence.
Real-world examples
Search links. A query like cats & dogs becomes cats%20%26%20dogs so the ampersand is not read as a new parameter.
Reading logs. Decode a long percent-encoded address to see what it says.
Redirect parameters. Encode a full URL before placing it inside another URL.
Common mistakes
Encoding a whole address turns https:// into https%3A%2F%2F, which breaks it. Encode only the value. Double-encoding (encoding something already encoded) produces %2520. Decoding text with a stray percent sign fails with an error.
How it works
Every character outside letters, digits and a few safe symbols is converted to its UTF-8 bytes, and each byte is written as a percent sign followed by two hexadecimal digits. So a space (byte 32) is %20, and 'é' becomes %C3%A9.
Frequently asked questions
Can I encode a whole URL?
Encode only the parts that need it, such as query values.
Why %20 and not +?
This tool uses percent encoding for spaces.
Is it private?
Yes.