URL Encoder / Decoder
Percent-encode and decode URL strings. Component mode encodes everything (spaces → %20); full-URI mode keeps structure like : / ? & intact.
Encode or decode URLs and URI components for safe use in links, query strings and web APIs. Handles spaces, unicode and reserved characters like &, ? and # correctly — no server round-trip, everything stays in your browser.
Standard: RFC 3986 percent-encoding (encodeURIComponent semantics).
How to use the URL Encoder / Decoder
- Paste the URL or string to process.
- Choose encoding or decoding.
- Copy the result, ready for use in links or code.
Frequently asked questions
What is URL encoding?
URL encoding (percent-encoding) replaces unsafe characters like spaces and & with %-codes so they survive inside a URL.
When do I need to URL-encode text?
Whenever you put user text into a URL, query string or API path — for example spaces become %20.
What is the difference between encodeURI and encodeURIComponent?
encodeURIComponent also encodes characters like &, ?, = and #, which is what you want for values inside a query string.
Can I decode a percent-encoded URL?
Yes — paste it and click Decode to get the human-readable string.
Fun facts about URL Encoder / Decoder
- URL encoding is also called 'percent-encoding' because it uses the % sign followed by two hexadecimal digits.
- A space can be written as %20 or +, but + means space only in form-encoded query strings (application/x-www-form-urlencoded); everywhere else it's %20.
- RFC 3986 defines which characters are 'reserved' (like /, ?, #, &) and must be encoded, versus 'unreserved' (letters, digits, -, _, ., ~) which don't need encoding.
- International domain names (IDN) use a special encoding called Punycode, which is different from percent-encoding — for example, 'münchen.de' becomes 'xn--mnchen-3ya.de'.
- Some browsers display decoded URLs in the address bar for readability, but the actual HTTP request uses the encoded version.