URL Encoder & Decoder
Encode and decode URLs and URL components in your browser. Supports component-level and full URL modes.
Runs entirely in your browser. Nothing is sent to our servers.
About this tool
URL encoding (also called percent-encoding) replaces characters that are
unsafe or have special meaning in URLs with a % followed by
their hexadecimal byte value. Spaces become %20,
& becomes %26, and so on. This tool handles
encoding and decoding entirely in your browser.
Component vs Full URL
- Component mode uses
encodeURIComponent()and treats every reserved character as something to encode. Use it on individual pieces of a URL — a query string value, a path segment, a fragment — where you don't want/,?,&, or=to keep their structural meaning. - Full URL mode uses
encodeURI(), which leaves reserved characters intact. Use it on a complete URL where you needhttps://example.com/path?key=valueto remain a working URL after encoding.
When in doubt, component mode is the safer choice for embedded values.
Encoding a query string value with full-URL mode is a common bug — the
& inside your value won't be encoded and will break the
rest of the query string.
Spaces: %20 vs +
In URL paths, a space must be encoded as %20. In
application/x-www-form-urlencoded bodies (and historically in
query strings), spaces are encoded as +. This tool always
outputs %20, which is valid in both contexts. Decoders should
accept both.
Frequently asked questions
- Does this handle Unicode?
- Yes. Both
encodeURIComponentandencodeURIemit UTF-8 byte sequences. A character likeébecomes%C3%A9. - Why does my decoded URL still have <code>%25</code> in it?
- Because the input was double-encoded — the
%in the original encoding got encoded again to%25. Run the decode again to recover the original. - How do I encode a value going into a query string?
- Use component mode on each value, then assemble:
key=<encoded-value>&next=<encoded-next>. Encode each value separately — never encode the whole query string at once, or your&and=separators will get escaped. - Is percent-encoding the same as URL encoding?
- Yes — "URL encoding" and "percent-encoding" are the same thing. The official name is percent-encoding (RFC 3986); "URL encoding" is the common nickname.
Last updated: May 17, 2026