When do I need to URL-encode a value?
Whenever a value goes into a URL component - a path segment, a query parameter, or a fragment - and contains characters with special meaning like ampersand, equals, plus, slash, hash, or space. Without encoding, those characters break the URL's structure and the server parses the wrong thing. Form submissions with the application/x-www-form-urlencoded content type also rely on URL encoding for every name and value.
Why are spaces sometimes encoded as plus and sometimes as %20?
Plus is the older form used in application/x-www-form-urlencoded form bodies and query strings. Percent-20 is the more general form used everywhere else, including path segments. Browsers handle both correctly in practice, but if you decode a string that contains plus signs in the wrong context you will turn legitimate plus characters into spaces. Choose the encoder mode that matches where the encoded value will appear.
Is it safe to URL-encode sensitive data?
URL encoding is just a syntactic transformation, not encryption - anyone seeing the URL can decode the original. Worse, URLs are typically logged by browsers, proxies, and servers, so secrets in URLs leak into many places. Put sensitive data in the request body over HTTPS instead, never in a query string or path segment. URL-encoding tokens does not make them safe to include in a URL.
Does the tool handle international characters correctly?
Yes. The encoder uses encodeURIComponent under the hood, which converts non-ASCII characters to UTF-8 bytes first and then percent-encodes each byte. So a Cyrillic or Chinese character becomes a sequence of three percent-escapes, one per UTF-8 byte. As long as the receiving server decodes with the same UTF-8 assumption, the round trip is lossless. Latin-1 systems will see corrupted output and need explicit handling.
Is my input transmitted when I encode it?
No. The encoding runs in the browser via the built-in JavaScript function, so your input never leaves your device. This makes it safe for inspecting how query strings will look without leaking the values to a server. The page itself loads from our infrastructure, but no input data flows back during or after encoding. Closing the tab discards everything from memory.
What characters do not need to be encoded?
The unreserved characters defined by RFC 3986 - letters A-Z and a-z, digits 0-9, and the punctuation hyphen, period, underscore, and tilde - are always safe in any URL component and never need encoding. Reserved characters like ampersand and equals must be encoded when they appear inside a value rather than as structural delimiters. Everything else, including spaces and most punctuation, must be percent-encoded to be valid.