Reference
URI Reserved and Unreserved Characters
The RFC 3986 character classes and the hexadecimal escapes that keep a URI unambiguous.
RFC 3986 divides URI characters into reserved and unreserved. Reserved characters delimit structure; unreserved characters are safe as data. A character outside both sets, and any reserved character used as data, is percent-encoded.
| Class | Characters | Use |
|---|---|---|
| Unreserved | A–Z a–z 0–9 - . _ ~ | safe as data |
| Gen-delims | : / ? # [ ] @ | structure delimiters |
| Sub-delims | ! $ & ' ( ) * + , ; = | component delimiters |
Hexadecimal case is irrelevant
%7E and %7e are the same escape, so compare decoded bytes rather than escape text.
01Limitations
RFC 3986 defines the generic syntax. Application profiles such as HTTP add rules for specific components and query formats.
Sources
- RFC 3986: Uniform Resource Identifier (URI): Generic Syntax — IETF (accessed 2026-09-27)
Test this in your browser
The tool runs entirely in your browser; the input you use never leaves it.
About the author
Gampangin builds and maintains free, browser-based developer tools and the documentation that makes them trustworthy. The organization is accountable for every page published on this site.