Copies this page address only, without URL inputs, tracking parameters or a section anchor. It does not share calculation results.
URL encode, both ways.
Percent-encode query values, Unicode, and emoji — and decode them back. Choose component (value) or full URL.
Getting ready. Input becomes available when the tool is ready. If this message stays, reload or check that JavaScript is enabled.
Output appears here.
Component vs full URL — pick the right scope
Component uses encodeURIComponent and escapes reserved characters like / ? # & = — use it for a single query value or path segment. Full URL uses encodeURI and leaves delimiters intact, but only for URL text that has not yet been percent-encoded. Re-encoding %20 produces %2520. To build a new query, pass the raw value to URL.searchParams.set.
The “+ means space” gotcha
URLSearchParams("q=a+b").get("q") returns a b because query parsing uses form-urlencoded rules. decodeURIComponent("a+b") returns a+b. Use %2B for a literal plus in a query. “Treat + as space” applies only in Component mode to a manually copied query/form value; Full URL mode preserves + everywhere.
Unicode round-trips cleanly
Korean, Japanese, and emoji encode to UTF-8 percent sequences and decode back exactly. Broken sequences (like a truncated %) are reported instead of producing garbage.
FAQ
Why is my slash being encoded?
/. Switch to Full URL to keep path separators readable.