URL Encode / Decode
URL-encode special characters as percent-escapes (%20 etc.) or decode them back. Auto-detects direction. Useful for query parameters, redirects, and reading messy URLs.
hello world? → hello%20world%3F
URL-encode special characters as percent-escapes (%20 etc.) or decode them back. Auto-detects direction. Useful for query parameters, redirects, and reading messy URLs.
hello world? → hello%20world%3F
URL encoding (percent-encoding) replaces characters that have special meaning in URLs with % followed by their hex byte value. ? becomes %3F, space becomes %20, and so on. This is required when including arbitrary text in URL query parameters or path segments.
The tool auto-detects: if the input contains %xx sequences, it decodes; otherwise it encodes.
Encode user input before pasting into a URL: "hello world" → "hello%20world". Required for any query string with spaces or punctuation.
URLs in server logs are percent-encoded. Decoding makes them readable — you can see what the user actually searched for.
OAuth and SAML flows pass redirect URLs as encoded query params. Decoding shows the actual destination.
If you want to share a URL with parentheses or non-ASCII characters and need it to survive copy-paste, encode it first.
mailto: and sms: URLs need encoded subject lines and bodies. Encode the message text before assembling.
encodeURIComponent — encodes everything that's special, including ?, =, &, /. Use it when encoding a single value to put inside a URL. Use the broader encodeURI when encoding a whole URL.
In query strings (the part after ?), the legacy form-encoding standard uses + for space. Both are valid in query strings; %20 is universal everywhere else.
Yes — non-ASCII characters are encoded as their UTF-8 bytes (e.g. é → %C3%A9). This is the modern standard.
If your input contains %xx patterns, the tool assumes it's already encoded and decodes. To force re-encoding, paste cleaner input or run twice manually.