Related Developer Tools
Explore more free developer tools to speed up debugging, testing, and development.
Percent-encode or decode queries, characters, and full URLs instantly. Fully compatible with RFC 3986 and standard form encoding.
URL percent-encoding is key to API parameters, query strings, and state parameters. Explore how it works, understand standard parameters, and test examples.
No submit buttons. Encodes and decodes automatically as you type.
Your inputs are fully parsed in your browser. Absolutely zero uploads.
Toggle between RFC 3986, URI Component, Form-Urlencoded, and IRI.
Robust encoding of emojis, non-ASCII symbols, and multi-byte characters.
The Uniform Resource Identifier (URI) syntax limits characters in a URL to a set of reserved and unreserved characters. Any character outside this scope (such as spaces, curly braces, and non-English scripts) must be converted before transmission.
When you enter query text containing delimiters (like & or =), the browser needs to distinguish them from structural dividers. Otherwise, nesting query structures would crash. URL encoding safely wraps values by mapping them to their hex representation.
Depending on where you are using the encoded output, different character mappings apply:
1. encodeURIComponent (URI Component): Encodes everything except: A-Z a-z 0-9 - _ . ! ~ * ' ( ) 2. RFC 3986 (Strict): Also encodes: ! ' ( ) * to adhere strictly to standards. 3. Form/W3C (application/x-www-form-urlencoded): Encodes space as '+' and requires literal '+' to be %2B. 4. IRI (RFC 3987 / Internationalized URI): Preserves Unicode bytes as raw characters for readability.
These characters have specific roles in URL parsing. Using them raw as content will cause web applications to split parameters incorrectly.
| Character | Percent-Encoded Value | Reason for Restriction |
|---|---|---|
| Space | %20 (or +) | Spaces are invalid characters in standard URI paths |
| Forward Slash ( / ) | %2F | Reserved as path segment separator |
| Question Mark ( ? ) | %3F | Reserved to demarcate start of query string |
| Ampersand ( & ) | %26 | Reserved to separate query parameters |
| Equals ( = ) | %3D | Reserved to assign query parameter key-value pairs |
| Hash / Fragment ( # ) | %23 | Reserved to demarcate URL fragment anchors |
| Colon ( : ) | %3A | Reserved for protocol scheme separator (http://) |
| Plus ( + ) | %2B | Reserved as spacer in forms, requires explicit encoding |
Select an example to see input transformations. Copy outputs to try decoding, or copy inputs to try encoding.
hello world & welcome
hello%20world%20%26%20welcome
💡 Encodes spaces to %20 and reserves the special separator '&' as %26.
Toggle between Encode Mode (plain text to URL-safe strings) and Decode Mode (percent-encoded sequences back to readable text).
Input your text in the top panel. The bottom panel will reflect changes instantly. Clear or copy using buttons in the headers.
Select encoding formats (URI Component, Strict RFC 3986, IRI, or Form Mode) to generate the exact layout required for your target system.
It is crucial to remember that URL encoding is not a security measure. E.g., encoding credentials as https://user:pass@api.com does not hide them. It is simply a transmission standard. Any node, router, or client that intercepts the URL can decode the data in milliseconds. Always encrypt sensitive fields using asymmetric keys or transport-layer protocols (TLS/HTTPS).
Answers to common questions about URL percent encoding guidelines.
Explore more free developer tools to speed up debugging, testing, and development.