Free exact browser converter
URL Encoder
Encode UTF-8 text for a URL component. Choose RFC 3986 escapes, JavaScript component encoding, or form values with + for spaces.
Interactive tool
URL Encoder
Ready
Choose a clear output representation.
Detailed conversion guide
How URL Encoder Works
A URL component represents bytes as percent escapes. This page first encodes Unicode as UTF-8, then escapes reserved characters so a value cannot turn into extra query parameters.
RFC 3986 mode also escapes !, apostrophe, parentheses and *. JavaScript component mode retains those characters. Form mode follows application/x-www-form-urlencoded and writes spaces as +.
| Input | Output | Meaning |
|---|---|---|
a b+ | a%20b%2B | Default example |
你好 | %E4%BD%A0%E5%A5%BD | Boundary example |
JavaScript Example
Runnable example for the default sample. The tool also validates its full input contract.
const encoded = encodeURIComponent(input).replace(/[!'()*]/g, c =>
"%" + c.charCodeAt(0).toString(16).toUpperCase());Formats, Boundaries and Limitations
Do not encode a complete URL with this tool when you want to preserve its scheme and separators. Split the URL and encode each value. A percent sign is encoded again, so %20 becomes %2520.
The tool rejects unpaired UTF-16 surrogates. It does not open a URL, send a request, validate a destination or encrypt the value.
Related converters
More Text and Encoding Tools
Choose the tool that matches your text or byte workflow.