What URL encoding is for
URLs may only contain a limited set of characters. Anything outside that set, such as a space, an ampersand that is part of a value, a non-English character or an emoji, must be percent-encoded: replaced by a % sign followed by its hexadecimal byte value.
This tool encodes a string for safe use in a URL and decodes percent-encoded text back to something readable, so you can see what a tracking link or redirect actually contains.
Encode the value, not the whole URL
A common mistake is encoding an entire URL, which also escapes the :// and the ? separators and breaks it. Encode only the individual parameter values. If you are building a URL by hand, encode each value, then assemble the URL with unencoded separators.
Frequently asked questions
What is the difference between %20 and +?
In a URL path, a space is %20. In a query string, both %20 and + can represent a space, and + is the older form-encoding convention. When in doubt use %20, which is unambiguous in every part of a URL.
Should I encode the whole URL or just the parameters?
Only the parameter values. Encoding the entire URL also escapes the scheme separator, the slashes and the question mark, which produces a broken link. Encode each value, then build the URL around them.
Which characters actually need encoding?
Anything outside the unreserved set (letters, digits, hyphen, underscore, dot, tilde), plus any character that has a reserved meaning in the position you are using it. In practice, encode anything that is not a plain letter, digit or -_.~.
Is my text sent to a server?
No. Encoding and decoding use the browser built-in functions and never leave your device, so it is safe for signed URLs and tokens.