CalcTimer

URL Encoder

Encodes characters that cannot appear directly in a URL into percent-encoded form.

How to use the URL Encoder

  1. Put the single value or path piece you want encoded into the input box.
  2. The output box updates as you type, showing the percent-encoded form.
  3. Press the copy button and drop the result into the URL where it belongs.

Encode one piece of a URL, not the whole address

This escapes the delimiters that hold an address together, so a full URL fed through it comes back as https%3A%2F%2Fexample.com and stops working. Run it on one query value or one path segment, then build the address around the result.

CharacterBecomes
space%20
/%2F
?%3F
&%26
=%3D
#%23

Letters, digits and - _ . ~ ! * ' ( ) pass through unchanged.

Non-Latin text becomes one group per UTF-8 byte

Anything outside that unchanged set is turned into UTF-8 bytes, and each byte is written as a percent sign with two hex digits. A Hangul syllable takes three bytes, arriving as %ED%95%9C, and an emoji takes four.

Frequently asked questions

Does it handle non-Latin text?

Yes. Korean, Japanese, Arabic and other scripts are encoded to UTF-8 percent sequences.

Can it decode?

This page encodes only.

Should a space be %20 or a plus sign?

This page always writes %20, which is right in a path or a query value. Only form data sent as x-www-form-urlencoded uses a plus for a space.

Why is my apostrophe left alone?

Because ! * ' ( ) and ~ are left untouched along with letters, digits and - _ . Replace them by hand if a server rejects the address.

How do I turn an encoded string back?

Not on this page, which encodes only. Run decodeURIComponent on the string in a browser console and the percent groups become readable again.