Toolzi LogoToolzi

URL Encoder / Decoder

Encode and decode URLs instantly. Supports encodeURIComponent and full URI encoding. 100% client-side.

All processing is done entirely in your browser. No data is sent to any server.

What is URL Encoding (Percent Encoding)?

URL encoding, also known as percent encoding, converts characters that are not allowed in URLs into a safe format using the % symbol followed by two hexadecimal digits. Defined in RFC 3986, it allows special characters, spaces, and non-ASCII text (such as Korean or Chinese) to be safely included in a URL. For example, a space becomes %20, and the Korean character 가 becomes %EA%B0%80.

Which mode should I use?

There are two URL encoding modes. Full URI mode (encodeURI) encodes an entire URL while preserving its structural characters like ://, ?, and &. Use this when you need to safely pass a complete URL. Component mode (encodeURIComponent) is designed to encode individual values such as a query parameter (?q=search+term). It encodes all characters including structural ones, so applying it to a full URL will break the URL structure and prevent browsers from recognizing it as a valid address.

encodeURIComponent vs encodeURI

ItemComponentFull URI
Preserved charactersA–Z a–z 0–9 - _ . ! ~ * ' ( )Above + URL structure chars (: / ? # [ ] @ ! $ & ' ( ) * + , ; =)
Use caseQuery parameter values, form dataEncoding an entire URL while preserving its structure

Commonly Encoded Characters

CharEncodedNote
space%20Also written as + in form encoding
&%26Query string separator
=%3DKey=value separator
#%23Fragment identifier
+%2BPlus sign (not space)
/%2FPath separator
?%3FQuery start
@%40Email, auth info

Frequently Asked Questions

What is the difference between URL encoding and percent encoding?
They are the same thing. Percent encoding is the technical name defined in RFC 3986. Each unsafe character is replaced with % followed by its UTF-8 byte value in hexadecimal.
Why does Korean text become so long after encoding?
Korean characters take 3 bytes in UTF-8. Each byte is encoded as %XX, so a single Korean character becomes 9 characters (e.g., 가 → %EA%B0%80).
A space appears as %20 or +. Which is correct?
%20 is the standard percent encoding for a space per RFC 3986. The + sign for spaces comes from the HTML form encoding format (application/x-www-form-urlencoded). For URLs, %20 is more reliable.
When should I use Component mode vs Full URI mode?
Use Component mode (encodeURIComponent) when encoding individual query parameter values. Use Full URI mode (encodeURI) when you want to encode an entire URL while keeping its structure (://, ?, &, etc.) intact.
What is double encoding?
Double encoding happens when an already-encoded string is encoded again. For example, %20 becomes %2520. This causes URLs to break — always check that your input is not already encoded.
Can browsers display Korean URLs directly?
Modern browsers display internationalized URLs (IDN/IRI) in a human-readable form, but the actual HTTP request uses the percent-encoded form. This tool shows you what is actually sent over the network.
Is the data I enter sent to a server?
No. All encoding and decoding is performed entirely in your browser using JavaScript. Nothing is transmitted to any server.

Related Tools