URL Encode
Percent-encode a URL or a single query value so it is safe to send. Free, and runs entirely in your browser — nothing you enter is uploaded or stored.
About URL Encoder
Percent-encoding replaces characters that have a reserved meaning in a URL with a % escape of their UTF-8 bytes. It is what keeps a query value containing &, =, ? or a space from being read as URL structure by the server.
The scope switch is the part that trips people up. Component encoding escapes &, =, ?, / and #, which is right for a single query value or path segment. Whole-URL encoding leaves that punctuation alone so a complete address stays usable, and only escapes spaces and other unsafe characters.
Where it helps
- Both directions, so you can build a link or read one back out of a log.
- Component and whole-URL scopes cover the two situations that actually differ.
- UTF-8 aware, so non-ASCII characters encode to the same bytes a browser would send.
- Runs locally — tokens embedded in URLs are not sent anywhere.
Limits
- Encoding a whole URL will not fix a malformed one; the structure has to be valid first.
- Decoding a string containing a stray
%that is not a valid escape fails rather than guessing. - A
+in a query string means a space in form-encoded data but a literal plus here, so form payloads need care.
Frequently asked questions
Component or whole URL — which do I want?
Component for one value you are inserting into a URL. Whole URL when you are cleaning up an entire address and want its slashes and question marks left intact.
Why does encoding a full URL leave & untouched?
Because at that scope & is structure, not data. Escaping it would break the query string into a single meaningless value.
Can I decode a URL twice?
Yes — run it through again. Values that pass through several redirects are often double-encoded, which shows up as %253A instead of %3A.
Does it handle emoji and non-Latin scripts?
Yes. They are encoded as their UTF-8 bytes, which is exactly what browsers and servers expect.
Related tools
- Base64 — Encode or decode UTF-8 text and URL-safe Base64
- HTML Entities — Escape and unescape HTML entities
- Unicode Converter — Escape, unescape and inspect code points
- HTTP Headers — Grade a site's security headers from A+ to F, see every response header, and get the fix for your server
- Base32 — Encode or decode Base32 in the RFC 4648, extended hex and Crockford alphabets
- Base58 — Encode or decode Base58, and verify the Base58Check checksum an address carries
More Encoders & Decoders tools
- Base64 — Encode or decode UTF-8 text and URL-safe Base64
- Base32 — Encode or decode Base32 in the RFC 4648, extended hex and Crockford alphabets
- Base58 — Encode or decode Base58, and verify the Base58Check checksum an address carries
- URL Encoder — Percent-encode components or whole URLs
- HTML Entities — Escape and unescape HTML entities
- JWT — Read, verify and sign JSON Web Tokens
- Punycode — Convert internationalised domain names to and from their ASCII form
- Unicode Converter — Escape, unescape and inspect code points
- Unicode Inspector — Analyse every character: category, script, block and encoding
- Number Base Converter — Binary, octal, decimal and hexadecimal, with the bits explained
- Hex and Text Converter — Text to hexadecimal bytes and back, with a dump
- Gzip Compressor and Decompressor — Compress and expand gzip, zlib and raw deflate