Percent-encode text so it survives inside a web address, or decode an encoded link back into something readable. Includes a query string inspector.
Encode component escapes every reserved character, which is what you want for a single value inside a link. Encode full URL keeps the structure intact and only escapes spaces and unsafe characters.
The Uniform Resource Identifier (URI) is the fundamental addressing mechanism of the World Wide Web. Every web page visit, API webhook invocation, search query submission, and OAuth authentication handshake depends on transmitting parameters reliably across the network via URLs. However, the architecture of internet routing protocols permits only a tiny, strict subset of ASCII characters to travel safely within a URL string.
When you include arbitrary characters—such as spaces, question marks, ampersands, slashes, international accents, or non-Latin alphabets—within URL query strings without proper transformation, web servers misinterpret path boundaries, truncate parameters, and trigger catastrophic 400 Bad Request or 404 Not Found routing errors.
Our client-side URL Encoder & Decoder (Percent-Encoding) delivers instantaneous, RFC 3986-compliant string transformation. It converts reserved and non-ASCII characters into standardized percent-encoded hex sequences (and translates encoded strings back into clean plain text) directly within your browser memory with zero network exposure.
The Technical Architecture of RFC 3986 Percent-Encoding
Formalized by Tim Berners-Lee and the Internet Engineering Task Force (IETF) in RFC 3986, percent-encoding provides an unambiguous mechanism for representing arbitrary byte values within the constrained character set of a URL. The specification categorizes characters into three distinct classes:
- Unreserved Characters (Never Encoded): Standard uppercase letters (
A–Z), lowercase letters (a–z), digits (0–9), and four safe typographical symbols: hyphen (-), underscore (_), period (.), and tilde (~). These characters can travel freely anywhere in a URL without encoding. - Reserved Characters (Syntactic Delimiters): Characters that have reserved operational meaning in URL syntax:
: / ? # [ ] @ ! $ & ' ( ) * + , ; =For example,?initiates a query string,&separates key-value parameters, and/separates hierarchical path directories. If your data contains these characters literally, they must be percent-encoded to prevent breaking the URL structure. - Percent-Encoding Mechanics: When a character must be encoded, it is converted into its underlying byte sequence in UTF-8. Each byte is then represented by a percent sign (
%) followed by a two-digit hexadecimal number. For example, a space character (ASCII 32, hex0x20) becomes%20
| Character | Percent-Encoded Entity | Reserved Operational URL Role | Consequence of Missing Encoding |
|---|---|---|---|
Space ( ) |
%20 (or + in forms) |
Not allowed in raw URLs | URL breaks at the space; connection encounters difficulties |
Ampersand (&) |
%26 |
Parameter separator in query strings | Splits parameter into accidental multiple keys |
Equals Sign (=) |
%3D |
Key-value assignment delimiter | Corrupts parameter key/value association |
Question Mark (?) |
%3F |
Query string initiation marker | Prematurely resets query parameter parsing |
Forward Slash (/) |
%2F |
Directory path separator | Router interprets data as a subfolder path |
Hash / Pound (#) |
%23 |
Client-side fragment anchor identifier | Truncates URL; server never receives data past # |
encodeURI vs. encodeURIComponent: The Critical Distinction
Software developers frequently confuse JavaScript’s two native encoding functions:
- encodeURI(): Designed to encode a complete, fully formed URL. It preserves protocol schemes (
https://), domain colons, and directory slashes, encoding only spaces and non-ASCII characters. - encodeURIComponent(): Designed to encode an individual parameter value intended to sit behind an
=sign in a query string. It aggressively encodes slashes (%2F), ampersands (%26), and colons (%3A), ensuring that special characters inside user input cannot hijack URL routing.
Step-by-Step Encoding Guide
- Select Operation Mode: Choose “Encode” to transform raw strings into percent-encoded URLs, or “Decode” to translate encoded parameters back into human-readable text.
- Paste Query String: Insert your destination URL, API parameter, or web link into the workspace.
- Copy Sanitized Result: Transfer the output directly into your application code, API request builder, or webhook configuration.
What You Should Know About URL Encode / Decode
Why are spaces sometimes encoded as plus signs (+) instead of %20?
Under the legacy application/x-www-form-urlencoded standard (used by HTML form submissions), spaces are traditionally represented as + In general RFC 3986 URI specifications, %20 is the strict universal standard.
Can this tool encode international non-Latin characters?
Yes. Our encoder converts UTF-8 multi-byte characters (such as Cyrillic, Chinese, Arabic, and emojis) into valid percent-encoded byte sequences (e.g., “café” becomes caf%C3%A9).
Is my URL parameter data confidential?
Yes. All conversions run 100% locally in your browser’s JavaScript engine. No authentication tokens, query parameters, or internal API URLs are transmitted to cloud servers.
