URL Encode/Decode
Encode or decode URL components instantly. Support for %20 and + encoding. Free online URL encoder and decoder.
URLs can only contain a limited set of characters defined by RFC 3986. Characters outside this set — including spaces, non-ASCII characters, and many punctuation marks — must be percent-encoded before they can appear safely in a URL. Percent encoding replaces each unsafe byte with % followed by the byte's two-digit hexadecimal value.
This is commonly needed when building query strings with dynamic values. For example, a search query like "hello world&more" would need to become hello%20world%26more before being appended to a URL. The & character is a query string delimiter, so leaving it unencoded would split what should be one parameter into two. The space would make the URL invalid in most parsers.
There are two common ways to encode spaces: %20 (the standard per RFC 3986) and + (used in HTML form encoding, application/x-www-form- urlencoded). This tool supports both. Use %20 when building URLs manually or in API calls. The + encoding is typically handled automatically by browser form submissions.
Use this tool to encode strings before embedding them in URLs, or to decode percent-encoded values you receive from an API, log file, or browser address bar. Encoding and decoding run entirely in your browser using JavaScript's encodeURIComponent() and decodeURIComponent() functions — no data is sent to any server.