URL Encode
Convert any text into a URL-safe percent-encoded string. Useful for query parameters, form data, and API requests.
URL TOOLS
Encodes special characters using percent-encoding (encodeURIComponent). Safe for use in query string values.
How it works
URL encoding uses the browser's built-in encodeURIComponent and decodeURIComponent functions. Query string parsing uses the native URLSearchParams API. Everything runs locally using browser-native APIs.
Processing runs in your browser
All encoding, decoding, and parsing happens inside your browser tab. Our servers are not involved at any point. You can see this yourselfin your browser's DevTools Network tab.
Technical specification
Percent-encoding (URL encoding) is defined in RFC 3986 §2.1 (IETF, 2005). Each octet is represented as a % followed by two uppercase hexadecimal digits. Unreserved characters (A–Z, a–z, 0–9, -._~) are never encoded. Reserved characters (:/?#[]@!$&'()*+,;=) are encoded when used outside their syntactic role. This tool uses the browser's native encodeURIComponent / decodeURIComponent functions, which follow the WHATWG URL Standard built on RFC 3986.
- Standard
- RFC 3986. Uniform Resource Identifier (URI): Generic Syntax
- Encoding unit
- One octet →
%XX(two uppercase hex digits) - Space encoding
%20per RFC 3986;+in HTML form data (RFC 1866)- Browser API
encodeURIComponent()/URLSearchParams
Related operations
To encode binary blobs as text, try Base64. For escaping reserved markup characters, use HTML entities. To inspect the encoded query body of a JSON request, see the JSON formatter.
Frequently asked questions
- What is URL encoding?
- URL encoding (percent-encoding) replaces unsafe characters with a % followed by two hex digits, e.g. space becomes %20.
- What's the difference between encodeURI and encodeURIComponent?
- encodeURIComponent encodes all special characters including & = +, use it for individual values. encodeURI leaves URL-structural characters like / ? & intact.
- Is my data sent to a server?
- All processing runs in your browser using JavaScript's built-in encodeURIComponent.