URL Encode / Decode Online

Convert text and URLs to percent-encoded format, or decode them back to readable text - instantly and privately.

Input
Output
🔒 100% client-side - your data never leaves your browser
Advertisement

What is URL Encoding (Percent-Encoding)?

URL encoding, also called percent-encoding, is a way of representing characters that aren't allowed or have special meaning in a URL by replacing them with a % followed by two hexadecimal digits representing the character's byte value. For example, a space becomes %20, and & becomes %26.

URLs are restricted to a subset of ASCII characters. Anything outside that set, such as spaces, accented letters, emoji, non-Latin scripts, or reserved characters used in an unintended way - must be percent-encoded so the URL remains valid and is interpreted correctly by browsers and servers.

encodeURI vs encodeURIComponent

This tool offers two encoding modes, matching JavaScript's built-in functions:

ModeUse caseCharacters preserved
Component (default) Encoding a single value - e.g. a query parameter, form field, or path segment Letters, digits, - _ . ! ~ * ' ( )
Full URL Encoding an entire URL while keeping its structure intact Also preserves : / ? # & = + , ;

If you're encoding a value to insert into a query string (e.g. ?search=value), use Component mode. If you're encoding/decoding a complete URL and want to keep slashes and query separators intact, enable "Encode full URL" above.

Common Percent-Encoded Characters

CharacterEncoded
Space%20
&%26
=%3D
?%3F
#%23
/%2F
:%3A
@%40

Frequently Asked Questions

%20 is the percent-encoded form of a space character. Since URLs can't contain literal spaces, they're replaced with %20 (some systems use + instead, specifically within query strings).

encodeURIComponent escapes nearly all special characters and is meant for encoding a single value (like a query parameter). encodeURI encodes a full URL but leaves structural characters like / ? # & = untouched so the URL stays valid. Use the "Encode full URL" checkbox to switch to this mode.

URLs only support a limited ASCII character set. Spaces, accented letters, emoji, non-Latin text, and reserved characters used outside their structural role must be percent-encoded so the URL is transmitted and parsed correctly by browsers and servers.

Switch to "Decode" mode above, paste your percent-encoded string, and click "URL Decode". Each %XX sequence is converted back into its original character.

Related Tools