URL Encode / Decode
Free online URL encoding and decoding tool. Supports two encoding modes (encodeURIComponent for query parameters, encodeURI for URL paths), form-encoding mode, smart auto-detection, and character-level encoding breakdown. All processing happens in your browser — nothing is sent to a server.
Input
Output
▶
Character-level breakdown — see how each character gets encoded
▶
URL encoding reference table — common character percent-encoding mappings
| Char | Encoding | Description | Char | Encoding | Description | |
|---|---|---|---|---|---|---|
| [Space] | %20 | Space | ! | %21 | Exclamation | |
| " | %22 | Double quote | # | %23 | Hash | |
| $ | %24 | Dollar sign | % | %25 | Percent | |
| & | %26 | Ampersand | ' | %27 | Single quote | |
| ( | %28 | Left paren | ) | %29 | Right paren | |
| * | %2A | Asterisk | + | %2B | Plus | |
| , | %2C | Comma | - | %2D | Hyphen | |
| . | %2E | Period | / | %2F | Slash | |
| : | %3A | Colon | ; | %3B | Semicolon | |
| < | %3C | Less than | = | %3D | Equals | |
| > | %3E | Greater than | ? | %3F | Question mark | |
| @ | %40 | At sign | [ | %5B | Left bracket | |
| \ | %5C | Backslash | ] | %5D | Right bracket | |
| ^ | %5E | Caret | _ | %5F | Underscore | |
| ` | %60 | Backtick | { | %7B | Left brace | |
| | | %7C | Pipe | } | %7D | Right brace | |
| ~ | %7E | Tilde |
What is URL Encoding?
URL encoding (also known as percent-encoding) is a mechanism for encoding special characters in a URL by replacing them with a % sign followed by two hexadecimal digits. Per RFC 3986, URLs may only contain ASCII letters, digits, and a small set of special characters. All other characters must be encoded before they can be safely transmitted.
Encoding Rules
- Reserved characters (like
/?:@&=+$#,;%) only need encoding in specific contexts - Unreserved characters (letters A-Z a-z, digits 0-9,
-_.~) are never encoded - All other characters (Chinese, spaces, special symbols, etc.) are first converted to UTF-8 bytes, then represented as
%HH
Two Encoding Modes
encodeURIComponent— Strict encoding. Encodes all non-alphanumeric characters including/?:@&=+$#. Use this for query parameter values, POST form data, and cookie values.encodeURI— Path encoding. Preserves URL structure characters (/?:@&=+$#are not encoded). Use this when encoding a full URL path.
Common Use Cases
- URL parameters — Passing Chinese or special characters in query strings
- HTML form submission —
application/x-www-form-urlencodedformat - API requests — Encoding RESTful API parameters
- Redirect URLs — Nesting one URL inside another
Note: Encoding is reversible — encoded data can be decoded back to its original form. URL encoding is not encryption, so never use it to protect sensitive data.
Keyboard shortcuts: Press Ctrl+Enter to convert, Ctrl+Shift+E to switch to encode, Ctrl+Shift+D to switch to decode.
Keyboard shortcuts: Press Ctrl+Enter to convert, Ctrl+Shift+E to switch to encode, Ctrl+Shift+D to switch to decode.



