Looking for the exact hexadecimal percent code for a URL character? This percent encoding reference table lists all common ASCII characters, symbols, and reserved URI characters alongside their standard hex representations.
Use this cheat sheet when debugging query parameters, configuring NGINX / Apache rewrite rules, or building API integrations.
Most common URL encoded characters
- Space: %20 (or + in form queries)
- Exclamation mark (!): %21
- Double quote ("): %22
- Hash / Fragment (#): %23
- Dollar sign ($): %24
- Percent sign (%): %25
- Ampersand (&): %26
- Single quote ('): %27
- Open parenthesis ((): %28
- Close parenthesis ()): %29
- Asterisk (*): %2A
- Plus sign (+): %2B
- Comma (,): %2C
- Forward slash (/): %2F
- Colon (:): %3A
- Semicolon (;): %3B
- Less than (<): %3C
- Equals sign (=): %3D
- Greater than (>): %3E
- Question mark (?): %3F
- At symbol (@): %40
- Open bracket ([): %5B
- Backslash (\): %5C
- Close bracket (]): %5D
- Caret (^): %5E
- Backtick (`): %60
- Open curly brace ({): %7B
- Pipe (|): %7C
- Close curly brace (}): %7D
Reserved vs. Unreserved URI characters
According to RFC 3986, characters are classified into two groups:
- Unreserved (do not encode): A-Z a-z 0-9 - _ . ~
- Reserved (encode when used as data): : / ? # [ ] @ ! $ & ' ( ) * + , ; =
Encoding UTF-8 & Emoji characters
Characters outside basic ASCII (such as accented letters or emojis) are converted into their multi-byte UTF-8 representation, and each byte is percent-encoded individually:
é (UTF-8: C3 A9) -> %C3%A9 ñ (UTF-8: C3 B1) -> %C3%B1 🔥 (UTF-8: F0 9F 94 A5) -> %F0%9F%94%A5
Frequently asked questions
Space is %20, slash (/) is %2F, and question mark (?) is %3F.
Ampersand (&) is %26 and equals (=) is %3D.
The percent sign itself is %25. When double-encoding happens, %20 becomes %2520.
RFC 3986 specifies that uppercase hexadecimal digits (%2F instead of %2f) are the preferred standard, though decoders accept both.