URL Encoder / Decoder & Query String Parser
HOTPercent-encode and decode URLs with RFC 3986 support and visual query parameter inspector.
Responsive 728x90 / 320x100 Ad Slot
(CLS Prevention Active ยท Zero Shift)https://example.com/search?q=orvokit&category=developer&page=1&ref=google
https://example.com/search?q=orvokit&category=developer&page=1&ref=google
| Key (Parameter) | Value |
|---|---|
| q | orvokit |
| category | developer |
| page | 1 |
| ref |
Native In-Feed / High Viewability Ad Slot
(CLS Prevention Active ยท Zero Shift)URL Percent-Encoding & The RFC 3986 Internet Standard
A Uniform Resource Locator (URL, RFC 3986) is bounded by a restricted subset of US-ASCII characters (alphanumerics and a handful of symbols). Transmitting non-ASCII multi-byte characters (Korean, Cyrillic, Japanese, Arabic, emojis) or reserved delimiters (`:`, `/`, `?`, `#`, `&`, `=`, `+`) inside internet addresses or API query parameters requires unambiguous translation into safe strings via Percent-Encoding (colloquially termed URL encoding).
Percent-encoding converts arbitrary byte values into a triplet format consisting of a percent symbol followed by two hexadecimal digits (`%XX`). Because UTF-8 is the universal web encoding standard, a 3-byte character becomes a sequence of three hex triplets. However, in production engineering, confusing `encodeURI()` with `encodeURIComponent()` frequently breaks path structures by escaping slashes or corrupts parameters through catastrophic 'double encoding' (`%2520`).
OrvoKit's URL Encoder & Decoder parses full URLs and automatically isolates query strings into an interactive key-value table. Supporting selective parameter manipulation, marketing UTM builders, and instant multi-pass decoding, it runs 100% locally in your browser sandbox, keeping authorization callback tokens and internal redirect destinations private.
RFC 3986 Percent-Encoding Mechanics & Hex Transformations
How Unicode characters are serialized into UTF-8 octets and transformed into percent triplets.
Unreserved characters (A-Z, a-z, 0-9, -, _, ., ~) are never encoded, while reserved delimiters are conditionally escaped depending on syntactic context.
๐ Prevents the plus sign from collapsing into whitespace and prevents the ampersand from slicing the query into unintended keys.
- Unreserved Characters: Letters (A-Z, a-z), decimal digits (0-9), hyphen (-), underscore (_), period (.), and tilde (~) must not be encoded.
- Reserved Delimiters: Colons, slashes, question marks, and ampersands establish structural boundaries and must be escaped when passed as data payload.
- encodeURI vs encodeURIComponent: `encodeURI` preserves protocol delimiters (`http://`, `/`) for full URLs; `encodeURIComponent` escapes every delimiter for query values.
- Plus (+) vs %20: While query parameters in legacy forms accept `+` for spaces, RFC 3986 strictly designates `%20` as the unambiguous standard.
Essential URL Percent-Encoding Character Lookup Table
Frequently encountered reserved symbols and their hexadecimal percent equivalents.
| Symbol | Character Description | Percent Hex Code | Standard Usage & Precautions |
|---|---|---|---|
| Space | Whitespace character | %20 (or +) | Use %20 in URL paths; + is permitted in query strings |
| ! (Exclamation) | Exclamation mark | %21 | Sub-delimiter in URI schemes |
| " (Double Quote) | Quotation mark | %22 | Must be escaped when passing JSON strings in queries |
| # (Hash / Octothorpe) | Fragment boundary | %23 | Designates client-side DOM anchors |
| $ (Dollar Sign) | Currency symbol | %24 | Sub-delimiter reserved in various web protocols |
| % (Percent) | Escape character | %25 | The escape token itself; source of double-encoding bugs |
| & (Ampersand) | Query delimiter | %26 | Separates distinct key-value pairs |
| ' (Single Quote) | Apostrophe | %27 | Must be escaped to defend against SQL injections |
| + (Plus Sign) | Addition symbol | %2B | Must be encoded as %2B; otherwise servers decode it as space |
| / (Forward Slash) | Path segment delimiter | %2F | Separates hierarchical directories |
| : (Colon) | Scheme / Port separator | %3A | Delimits protocols and network port numbers |
| = (Equal Sign) | Key-value assignment | %3D | Binds parameter keys to values |
| ? (Question Mark) | Query string boundary | %3F | Demarcates the start of query parameters |
* Always encode plus signs as %2B if the literal addition character is intended.
High-Engagement In-Article Native Ad Slot
(CLS Prevention Active ยท Zero Shift)How to Use
11. Paste Web Address or Query String
Insert raw URLs, isolated query parameters, or multilingual text into the input panel.
22. Choose Mode (Encode / Decode) and Method
Select `encodeURI` to preserve core protocol syntax, or `encodeURIComponent` for strict parameter values.
33. Inspect & Edit Query Parameters in Table View
Visually inspect parsed query keys (utm_source, page, redirect) in a structured table, editing rows in real time.
44. Copy Production-Ready Sanitized URL
Export the clean, RFC 3986-compliant URL string ready for API dispatch or browser navigation.
Everyday Web Development & Marketing Implementations
Common engineering scenarios requiring robust URL encoding.
Pass dynamic callback destinations (`https%3A%2F%2Fapp.com%2Fdashboard`) safely inside `redirect_uri` parameters.
Sanitize complex multi-word campaign names and non-ASCII marketing copy into compliant UTM links.
Ensure search terms containing slashes or ampersands ('Tom & Jerry') do not fragment API query parsers.
Repair corrupt database URLs containing nested `%2520` tokens with automated recursive decoding.
๐ก URL Architecture Pro Tips & Production Pitfalls
Never pass a full query value to `encodeURI()`. If the value contains an ampersand or slash, it will split your parameter keys. Use `encodeURIComponent()`.
Passing `c++` or phone numbers (`+1`) without encoding turns them into whitespace (`c `, ` 1`) on backend web servers. Encode `+` as `%2B`.
While the HTTP standard enforces no technical ceiling, browsers and reverse proxies (Nginx) truncate URLs exceeding 2,048 characters with HTTP 414 URI Too Long errors.
In JavaScript, use the native `new URLSearchParams()` API to handle encoding automatically rather than concatenating strings manually.
โ ๏ธ Common Pitfalls & Mistakes to Avoid
Frequently Asked Questions (FAQ)
Expert answers to the most frequently asked questions and edge cases.
`encodeURI()` is engineered for complete URLs and deliberately leaves protocol markers, slashes, colons, question marks, and hash symbols unencoded. In contrast, `encodeURIComponent()` is designed for query parameter values; it aggressively escapes slashes and ampersands into `%2F` and `%26` so they cannot inadvertently alter the overall URL structure.
Wide Responsive Banner
(CLS Prevention Active ยท Zero Shift)Related Tools
Base64 Encoder & Decoder
Lossless UTF-8 Unicode Base64 encoder and decoder with file upload to Data URL conversion.
JWT Decoder & Expiration Debugger (100% Client-Side)
Decode JWT headers, payloads, verify expiration claims with live countdowns safely on client-side.
cURL to JavaScript Fetch, Axios & Python Converter
Transpile cURL CLI commands into clean async JavaScript Fetch, Axios, or Python Requests code.
JSON Formatter & Validator
Format, beautify, validate, and minify JSON data with instant syntax error highlighting and tree view.