URL Encoder / Decoder

Percent-encode or decode URLs and query strings.

100% client-side — your data never leaves your browser.

Encoded output
Your result will appear here.

About the URL Encoder / Decoder

Percent-encode any URL, query parameter, or text for safe use in links and APIs — or decode an encoded URL back into readable form. The tool is Unicode-safe and runs entirely in your browser using the standard encodeURIComponent / decodeURIComponent APIs.

How to use the URL Encoder / Decoder

  1. 1Pick a mode: Encode (text → percent-encoded) or Decode (percent-encoded → text).
  2. 2Paste your input into the editor.
  3. 3See the converted output update live below.
  4. 4Click "Copy" to grab the result for your URL or API call.

Why use our URL Encoder / Decoder

  • Two-way conversion

    Switch instantly between encoding and decoding with a single toggle.

  • Unicode-safe

    Built on encodeURIComponent / decodeURIComponent — handles every UTF-8 character correctly.

  • Error-tolerant decoding

    Malformed percent-escapes show a clear error instead of failing silently.

  • Completely private

    Conversion happens locally — your URLs and data are never uploaded.

Frequently asked questions

When do I need to URL-encode something?+

Encode any text you place inside a URL — especially query string values — that may contain spaces, &, =, ?, #, +, or non-ASCII characters. Without encoding, those characters can break the URL or change its meaning.

What's the difference between encodeURI and encodeURIComponent?+

encodeURI leaves reserved URL characters (like /, ?, &) untouched because it's meant for entire URLs. encodeURIComponent encodes those too, which is what you want for individual query values — and what this tool uses.

Why does the decoder show an error?+

Decoding fails if the input has a stray % or an incomplete percent-escape (like %A without a second hex digit). Fix the malformed sequence and decoding will succeed.

Is my input sent anywhere?+

No. Encoding and decoding run entirely in your browser; nothing is sent to a server or stored.