URL Encoder and Decoder — Percent-Encoding Tool
Encode or decode URL strings using percent-encoding. Choose between encodeURIComponent (encode everything) or encodeURI (preserve URL structure). Batch mode for multiple URLs.
URL Encoder and Decoder — Percent-Encoding Made Simple
Encode any text into URL-safe percent-encoded form, or decode percent-encoded URLs back to plain text. The tool uses your browser’s native encoding functions for maximum reliability — perfectly handles Unicode characters (é, 日本語, emoji), special characters, and edge cases. Everything runs locally.
Encode vs Decode
- Encode: turns “Hello World!” into “Hello%20World%21” — safe for URLs
- Decode: turns “Hello%20World%21” back into “Hello World!”
Component vs Full URL
- Component (default): escapes EVERY special character including : / ? & = #. Use this for query parameter values, path segments, anchor names — anywhere a single piece of data is being embedded into a URL
- Full URL: preserves URL structural characters (: / ? & = #). Use this when you have a complete URL and just want to make non-ASCII chars safe — e.g. “https://example.com/café?q=test”
Examples
| Input | Mode | Output |
|---|---|---|
| Hello World | Encode (component) | Hello%20World |
| café & crème | Encode (component) | caf%C3%A9%20%26%20cr%C3%A8me |
| https://example.com/café | Encode (full) | https://example.com/caf%C3%A9 |
| %E4%BD%A0%E5%A5%BD | Decode (component) | 你好 |
Batch mode
Toggle “Batch mode” to process each line separately. Useful for converting a list of URLs or a list of query values in one go. Empty lines are preserved.
Swap button
Need to verify that a decoded value re-encodes back to the original? Click “Swap” — it moves the output to the input field and flips the mode. Click again to flip back.
Common uses
- Building query strings for API calls
- Debugging redirect URLs with %-escaped parameters
- Encoding filenames for download URLs
- Normalizing URLs scraped from various sources
- Working with international domain content (non-ASCII paths)
Privacy
Everything runs in your browser. Your text and URLs are never uploaded.