URL Encoder/Decoder — Percent-Encoding Made Simple
This free URL encoder and decoder percent-encodes text, query strings and whole URLs in your browser. It supports component encoding (for a single query value), whole-URL encoding (keeps ://, ?, & intact and encodes only what needs escaping), and a strict RFC 3986 mode. Decoding handles malformed input gracefully. No data is ever sent to a server.
What Is Percent-Encoding?
Percent-encoding (also called URL encoding) replaces characters outside the safe URL alphabet with a % followed by two hex digits, for example ä becomes %C3%A4 in UTF-8. Reserved characters like &, ?, = and spaces must be encoded when they appear inside a query value; otherwise a URL would be ambiguous or break.
Component vs Whole-URL Encoding
Component mode (encodeURIComponent) encodes every reserved character, so it is the safest choice for a single query value. Whole-URL mode (encodeURI) leaves URL structure (https://, ?, #, &, =) intact and is meant for complete addresses. Strict mode keeps only unreserved characters (A-Z a-z 0-9 - _ . ~) — the canonical form for signing and hashing URL-encoded payloads.
URL Encoder/Decoder FAQ
Is my data private? Yes — encoding and decoding run entirely in this tab, nothing is uploaded. Why did decoding fail? The tool shows an error state when the input contains invalid escapes such as a lone % or truncated %XX. UTF-8 or Latin-1? Modern percent-encoding is UTF-8; emoji and non-Latin scripts encode to multi-byte sequences, which this tool handles correctly.