Encode special characters into
%XX
percent-escapes or decode them back to plain text. Live preview,
multiple modes, 100% browser-based.
Component, full URI, or strict RFC 3986 — pick what fits your context.
Output updates instantly as you type. No Submit button required.
Handle double or triple-encoded URLs in one click.
Everything runs in your browser. No data is ever sent to a server.
URL encoding (also called
percent-encoding) is the way special characters are
represented in URLs so they can be safely transmitted over the internet.
Defined by
RFC 3986, it replaces unsafe characters with a percent sign followed by two hex
digits — for example, a space becomes %20.
JavaScript provides two built-in encoders, and choosing the wrong one is one of the most common URL bugs:
encodeURI() assumes the input is a complete URL and
preserves reserved structural characters like
:, /, ?, #, and
&. Use it when encoding an entire URL.
encodeURIComponent() assumes the input is a
single piece of a URL — like a query parameter value —
and aggressively encodes everything that isn't unreserved. Use it for
individual components.
Building API request URLs with special characters in query strings, debugging encoded redirect URLs, decoding tracking links to inspect parameters, escaping user input for use in href attributes, and processing URLs from logs that have been encoded multiple times.