LOCAL TOOL · DEV

URL Encoder / Decoder

Percent-encoding both ways, with the encodeURIComponent and encodeURI difference shown.

Scope

How to use

  1. Paste the text or the URL. The result appears as you type.
  2. Encode or decode with the toggle; the arrow button moves the result back into the input.
  3. Component escapes a single value. Full URL leaves / ? & = # alone, for a whole address.

Examples

A Korean search term in a query string

Encoding 한글 gives %ED%95%9C%EA%B8%80 — three bytes per character, because the text becomes UTF-8 first and each byte is then written as %XX.

A link that breaks

A value containing & splits the query string in two. Component mode escapes it to %26 and the link survives; Full URL mode leaves it as a separator.

A pasted address full of %20

Decode turns it back into readable text. If the paste was cut mid-sequence the tool says so instead of showing a mangled result.

Romanising a name is a different job

Percent-encoding keeps the Korean as Korean; it does not turn 홍길동 into Hong Gildong. Korean Romanizer

FAQ

encodeURIComponent or encodeURI?

Component for one piece going into a URL — a query value, a path segment, a hash. Full URL for an address you have already assembled, because it leaves alone the reserved characters / ? & = # : that hold a URL together.

Is my text sent anywhere?

No. Encoding and decoding both run in your browser; nothing is uploaded or logged.

Why does one Korean character become nine?

A URL may only carry ASCII, so the text is encoded as UTF-8 and every byte is written as %XX. Most Hangul syllables are three bytes, which is three %XX groups.

Decoding failed — what does that mean?

The input is not valid percent-encoding: a stray %, a pair like %ZZ, or a multi-byte sequence cut short by a truncated copy-paste. Check the end of the string first.

What about the plus signs in a form URL?

In form submissions a plus means a space, but in a path it means a plus. Tick the option when you are decoding a query string.

Is this Base64?

No. Percent-encoding makes text safe inside a URL and keeps it readable; Base64 rewrites bytes into a different alphabet. Different purpose, different output.