Spaces, Unicode characters, ampersands, question marks, slashes, and other symbols do not all mean the same thing in every part of a URL. URL Encoder/Decoder helps convert text to or from percent-encoded form so it can be handled safely in the intended URI component.
Context matters: encoding a query value is not the same as encoding an entire URL. A space may appear as %20 in percent-encoding or as + in form-style query encoding, and encoding an already encoded value can create double-encoding problems. Use the output where the same rules are expected.
How to use this tool
How does the URL Encoder and Decoder work?
How to use URL Encoder and Decoder
- Choose whether you need to encode text for a URL context or decode an encoded value.
- Paste the exact input you want to process.
- Run the operation and inspect reserved characters, percent-encoded bytes, spaces, and Unicode text carefully.
- Confirm that the resulting value matches the URL component or application context where it will be used.
- Test the final URL or parameter in its real destination before relying on it.
Technical reference
URI reserved characters and percent-encoding are defined in RFC 3986 – URI Generic Syntax.
Examples
Space in query value
Percent-encoding commonly produces red%20shoes; form-style query encoding may use red+shoes.
Reserved ampersand
When used inside one query parameter value, the ampersand must be encoded so it is not misread as a parameter separator.
Unicode
UTF-8 bytes are percent-encoded, so non-ASCII text expands into multiple %HH sequences.
Double encoding
Encoding the percent sign again can produce %2520, a common double-encoding bug.
Common use cases
- Encoding query parameter values
- Decoding copied URLs
- Debugging API requests
- Handling spaces in URLs
- Encoding reserved characters
- Inspecting redirect URLs
Frequently asked questions
What is URL percent-encoding?
Percent-encoding represents bytes that are not safe or appropriate in a URL context as a percent sign followed by two hexadecimal digits.
Why is encoding a full URL different from encoding a query value?
Structural characters such as /, ?, &, =, and # have meaning in a full URL. A query value often needs those characters escaped so they are treated as data instead of URL structure.
Why does a space sometimes become %20 and sometimes +?
Percent-encoded URLs commonly represent a space as %20, while HTML form encoding can use + for spaces. The correct rule depends on the context.
Can URL encoding handle Unicode characters?
Yes when the implementation encodes the character's bytes correctly, commonly using UTF-8 before percent-encoding.
Why can double-encoding break a URL?
If an already encoded percent sign is encoded again, sequences such as %20 can become %2520. Decode or encode only at the layer that actually requires it.