DuckyTools
Home Developer URL Encoder

URL Encoder Developer

Percent-encode text for safe use in URLs and query strings.

URL Encoder is a free online tool that percent-encode text for safe use in URLs and query strings. It runs entirely in your web browser using plain JavaScript, so files are processed on your own device and never uploaded to a server. There is no sign-up, no file size limit imposed by the site, no watermark and no paid tier.

Price
Free — no account, no quota, no watermark
Category
Developer
Where it runs
In your browser, on your device
Files uploaded
None
Technology
plain JavaScript
Settings
1
Works offline
Yes, after the first visit

About URL Encoder

Percent-encoding replaces characters that are unsafe in a URL with `%` followed by their byte value in hexadecimal, as defined in RFC 3986. The distinction that matters: `encodeURIComponent` escapes `&`, `=`, `?`, `/` and `#`, and `encodeURI` does not — because the first is for a single value and the second is for a whole URL whose structural characters must survive. This tool escapes as a component, which is the safe default.

How to use it

  1. Paste the text you want to run through url encoder.
  2. Set encode.

The one setting

SettingWhat it doesDefault
EncodeChoose from 2: Component (encodes & = ? /), Full URI (keeps & = ? /).Component (encodes & = ? /)

Under the hood

Runs onplain JavaScript — runs the whole thing
ControlsEncode

Questions

Why is a space sometimes %20 and sometimes +?

Both appear in the wild. `%20` is correct percent-encoding and works anywhere in a URL. `+` means space only inside an `application/x-www-form-urlencoded` query string — the old HTML form format. Inside a path segment, a `+` is a literal plus sign.

Which characters are never escaped?

The unreserved set from RFC 3986: A–Z, a–z, 0–9, and the four marks `-`, `_`, `.` and `~`. Everything else is escaped when encoding a component.