URL Encode / Decode
Encode or decode URLs and query parameters.
How to Use the URL Encoder/Decoder
Select "Encode" to convert text into a percent-encoded URL string, or "Decode" to convert a percent-encoded string back to readable text. Type or paste your input and the result updates live.
Full URL vs Component Mode
By default the tool uses encodeURIComponent, which encodes every special character including :, /, ?, # and &. Enable Full URL mode to use encodeURI, which preserves those URL-structural characters and only encodes characters that are not valid in a URI.
When to Use Each Mode
- Component mode (default) — encoding a single query parameter value, a path segment, or a fragment.
- Full URL mode — encoding a complete URL while keeping its structure (
://,/,?,&) intact.
Frequently Asked Questions
What is URL encoding?
URL encoding (percent encoding) replaces unsafe or reserved characters in a URL with a percent sign followed by two hex digits — for example, a space becomes %20. This ensures URLs are transmitted correctly.
What is the difference between encodeURI and encodeURIComponent?
encodeURI encodes a full URL but leaves structural characters like :, /, ?, # and & untouched. encodeURIComponent encodes everything except letters, digits, and a few safe marks — use it for individual query parameter values.
Why are spaces sometimes shown as + instead of %20?
The + sign for spaces comes from the application/x-www-form-urlencoded format used in HTML forms. Standard percent encoding uses %20. This tool uses the standard %20 format.
Is my data uploaded to a server?
No. All encoding and decoding runs entirely in your browser using built-in JavaScript functions. No data ever leaves your device.
Can I encode non-ASCII characters like emoji or Chinese text?
Yes. The tool fully supports Unicode. Non-ASCII characters are first encoded as UTF-8 bytes, then each byte is percent-encoded (e.g., a space becomes %20, and emoji become a longer sequence of percent-encoded bytes).
More Developer Tools
JSON Formatter
Format, validate and minify JSON with syntax highlighting.
Open tool →Base64 Encode / Decode
Encode text to Base64 or decode Base64 back to text.
Open tool →UUID Generator
Generate UUID v4 identifiers, single or in bulk.
Open tool →Unix Timestamp Converter
Convert Unix timestamps to human-readable dates and back.
Open tool →HTML Entity Encode / Decode
Encode special characters to HTML entities or decode them back.
Open tool →JWT Decoder
Decode and inspect JWT tokens — header, payload and claims.
Open tool →