← All tools
// ENCODERS

URL Encoder online

Encode text to URL-safe percent-encoding — choose full or component mode.

URL Encoder logo
by
CHUNKY
MUNSTER
PLAIN TEXT INPUT0 CHARS
ENCODED OUTPUT0 CHARS

About URL Encoding

encodeURIComponent encodes all characters except letters, digits and - _ . ! ~ * ' ( ). Use this for encoding individual query parameter values.

encodeURI encodes everything except characters that are legal in a complete URI (like /, ?, #, &). Use this for encoding full URLs.

How to Use the URL Encoder

  1. Paste or enter your input into the text field.
  2. Configure any options (format, delimiter, encoding, or mode) using the controls above the output.
  3. The result updates instantly — no submit button required for most operations.
  4. Click Copy or Download to take the output to your next step.

Percent-encode strings so they can travel safely inside a URL. The encoder uses the browser’s native encodeURIComponent, which converts every character outside the unreserved set ([A-Za-z0-9-_.!~*'()]) into one or more %HH escapes via UTF-8 bytes. That means accented letters, CJK ideographs, and emoji all encode correctly without any setup.

How the URL Encoder Works

Switch to encodeURI mode when you want to keep structural characters (/, ?, #, &) literal — useful for encoding a whole URL where only the unsafe parts should change. A second toggle outputs spaces as + instead of %20 for form-urlencoded payloads.

Frequently Asked Questions

When should I use encodeURI vs encodeURIComponent?

encodeURI keeps URL-structural characters (/, ?, #, &) literal — use it for whole URLs you want to remain valid. encodeURIComponent escapes everything except a small set of unreserved characters — use it for individual query parameter values or path segments.

Why does the tool produce %20 instead of +?

%20 is the canonical RFC 3986 encoding of a space and works in every part of a URL. + only means space inside application/x-www-form-urlencoded data — toggle the form-encoding option to switch.

How are non-ASCII characters encoded?

They are first converted to UTF-8 bytes and each byte is then percent-encoded. So é becomes %C3%A9 and 😀 becomes %F0%9F%98%80, which is what every modern server expects.

Is the input sent to any server?

No — encoding uses the browser’s native encodeURI / encodeURIComponent. Nothing leaves the page.

Explore the full suite of ENCODERS tools and 290+ other free utilities at Chunky Munster.

📖 Reference: RFC 3986 — Uniform Resource Identifier (URI): Generic Syntax