URL Encoder / Decoder

Encode or decode URLs and query strings with full Unicode support.

63 characters
85 characters
https%3A%2F%2Fexample.com%2Fsearch%3Fq%3Dhello%20world%26lang%3Den%26sort%3Drelevance

Frequently Asked Questions

URL encoding (percent-encoding) converts characters that are not allowed in a URL into a format that can be transmitted. Special characters are replaced with a % sign followed by their hexadecimal ASCII value, e.g. a space becomes %20.
URLs can only contain a limited set of ASCII characters. Characters like spaces, &, =, ?, #, and non-ASCII Unicode characters must be encoded so they are transmitted correctly and don't break the URL structure.
encodeURI encodes a full URI but preserves characters that have special meaning (://?#[]@!$&'()*+,;=). encodeURIComponent encodes everything except A-Z, a-z, 0-9, and - _ . ~ making it suitable for encoding query parameter values.
Unreserved characters that don't need encoding are: A-Z, a-z, 0-9, hyphen (-), underscore (_), period (.), and tilde (~). All other characters should be percent-encoded when used outside their reserved purpose.
Yes. Unicode characters are first encoded as UTF-8 bytes, then each byte is percent-encoded. For example, the emoji 😀 becomes %F0%9F%98%80. This tool handles full Unicode encoding and decoding automatically.