URL Encoder/Decoder
v1.0.0Encode and decode URLs and query parameters. Handles special characters, supports file input, real-time conversion, swap, and clipboard tools.
Text to Encode
Percent encoding keeps URLs unambiguous when data contains reserved characters or non-ASCII text. WMCoder encodes and decodes so you can debug APIs, redirects, and query strings fast.
Read the full guide →Frequently Asked Questions
- What is percent encoding?
- Percent encoding (URL encoding) represents bytes as % followed by two hex digits (e.g., space → %20). For text, UTF-8 bytes are typically encoded, so non-ASCII characters become multiple %XX sequences. It keeps delimiters in URLs unambiguous.
- Which characters are reserved in URLs?
- RFC 3986 reserves : / ? # [ ] @ ! $ & ' ( ) * + , ; = for structural roles in URIs. Encoding them when they are data—not syntax—prevents parsers from mis-splitting scheme, authority, path, and query.
- What is the difference between encodeURI and encodeURIComponent?
- encodeURI is meant for mostly intact URIs: it encodes characters that break parsing but leaves :, /, ?, #, etc. encodeURIComponent encodes almost everything except A–Z a–z 0–9 - _ . ~ — use it for query parameter values and form data.
- How does UTF-8 appear in URLs?
- Each UTF-8 byte becomes its own percent escape. For example, é is two bytes in UTF-8, so you may see two escapes. Servers and clients must agree on UTF-8; legacy systems sometimes mishandle this.
- When should I encode URLs?
- Encode user-supplied or dynamic values before placing them in query strings or path segments. Do not double-encode. If you are moving arbitrary binary as text, consider [Base64 Encoder](/base64-encoder) instead of percent-encoding raw bytes in URLs.