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
- Paste the text you want to run through url encoder.
- Set encode.
The one setting
| Setting | What it does | Default |
|---|---|---|
| Encode | Choose from 2: Component (encodes & = ? /), Full URI (keeps & = ? /). | Component (encodes & = ? /) |
Under the hood
| Runs on | plain JavaScript — runs the whole thing |
| Controls | Encode |
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.