URL Encoder & Decoder
Encode or decode URLs, percent-encoded path segments, and query-string parameters instantly with sub-millisecond local execution.
Encoding Scope
Source Payload (Plain URL / Param)
UTF-8 · Standards-Based URI Encoding
152 chars·UTF-8
Transformed Result
206 chars·0.00ms·+35.5% length change
- Zero Server TransmissionEverything runs locally in your browser.
- Browser-Native EncodingUses standard browser URI encoding APIs.
- Instant Encode & DecodeSwitch between encoding and decoding without network requests.
URI Standards Guide
Understanding URL Percent-Encoding
Percent-encoding represents arbitrary byte sequences in Uniform Resource Identifiers (URIs) using triplet format (%XX). Choosing the right escaping strategy ensures proper routing without broken delimiters or lost parameters.
URL Component
Uses encodeURIComponent()Use for:
- query values
- parameters
- IDs
- individual pieces of a URL
Full URL
Uses encodeURI()Use for:
- complete URLs
Preserves important URL structure such as: : / ? # & =
Technical Details
| Method / Function | Primary Objective | Reserved Delimiters Escaped | Preserved Unescaped | Recommended Target |
|---|---|---|---|---|
| encodeURI() | Encodes full address while keeping schema syntax | Whitespace, non-ASCII chars | ;/?:@&=$+,#-_.!~*'() | Complete URI destinations |
| encodeURIComponent() | Escapes all URI component delimiters | ;/?:@&=+$,# + whitespace | -_.!~*'() | Query strings, parameters, tokens |
Space (RFC 3986)%20
Space (Form URL)+
Ampersand (&)%26
Slash (/)%2F
Question (?)%3F
Equals (=)%3D
Wondering when to use URL encoding vs Base64, or why standard Base64 breaks query parameters?
Developer Implementation Guides
Developer Implementation Guides
Compact reference for native and standard library URI percent-encoding.
// Modern Browser & Node.js
const encoded = encodeURIComponent("developer tools & utilities");
console.log(encoded); // "developer%20tools%20%26%20utilities"
const decoded = decodeURIComponent(encoded);
console.log(decoded); // "developer tools & utilities"View implementation guidesRFC 3986
Knowledge Base
Frequently Asked Questions
encodeURI is meant for an entire complete URI address. It assumes characters like ://, ?, and & are structural routing components and deliberately leaves them intact. Conversely, encodeURIComponent escapes every reserved character, ensuring that single query parameters or callback redirect URLs do not break the outer URL structure.Encoding spaces as
+ stems from the historical HTML standard for form submissions (application/x-www-form-urlencoded). Modern RFC 3986 specification mandates %20 for general URL query and path components. ToolPorta supports both modes through the Advanced Options panel.No. The transformation pipeline relies exclusively on your device's native V8/SpiderMonkey JavaScript runtime. Zero payload data, API tokens, or session IDs are ever transmitted across a network socket. You can verify this by disabling network connectivity in Developer Tools.
All input strings are first encoded into UTF-8 octets. Each resulting octet byte is converted into its hexadecimal equivalent preceded by a percent symbol. For instance, the UTF-8 sequence for the emoji "⚡" converts cleanly to
%E2%9A%A1.