URL encoding, also called percent-encoding, replaces characters that are unsafe in a URL with a percent sign and two hexadecimal digits. A space becomes %20, a slash becomes %2F and non-ASCII text becomes the UTF-8 bytes of the character, each percent-encoded.
Input
Output
Component or full URL?
Encode a component when the text is a single value, such as a search term, a filename in a path or a parameter value. This mode encodes every reserved character, including the slashes, question marks and ampersands that would otherwise change the URL structure. Full URL mode leaves those separators alone and encodes only the parts that cannot appear in a URL, which is what you want when cleaning up an entire address.
Why form encoding uses plus
HTML form submissions encode spaces as plus signs, a convention inherited from early web forms. In a query string the two forms are usually interchangeable, but a literal plus inside a value must itself be encoded as %2B. When decoding, decide whether plus means space before you decode; this tool makes that choice explicit.
Double encoding
If a value already contains percent escapes and you encode it again, the percent sign itself becomes %25. That is correct when the target expects raw text, but it breaks links that were already encoded. When a URL returns 404 or a value looks like %2520 instead of %20, check for double encoding in the layer that built it.
Encoding and decoding use the browser's built-in URI functions on UTF-8 text. Malformed percent escapes are reported instead of silently replaced.