Choose a mode, paste your text, and hit the button. The output appears below and live-previews as you type.

Modes

  • Encode Component — use for individual query parameter values. Encodes everything except A–Z a–z 0–9 - _ . ! ~ * ' ( ). This is the most common mode.
  • Encode URI — use when encoding a complete URL. Preserves : / ? # [ ] @ ! $ & ' ( ) * + , ; = which have structural meaning in a URL.
  • Decode — converts %XX sequences and + signs (treated as spaces) back to readable text.
Tip: When in doubt, use "Encode Component" — it's what you want for form data and API query params.
Output
How URL encoding works

URLs can only safely carry a limited set of ASCII characters. Any character outside that set — spaces, accented letters, symbols like & or = — must be percent-encoded: replaced by % followed by two hex digits. The space character becomes %20, an ampersand becomes %26, and so on.

Encode Component vs Encode URL

Use Encode Component for values inside query strings — it encodes &, =, /, and ? so they don't break the URL structure. Use Encode URL for a full URL you want to preserve — it leaves structural characters like :// and ? untouched.

Common encodings

Space → %20, &%26, =%3D, +%2B, /%2F, ?%3F, #%23. Letters, digits, and - _ . ~ are never encoded.

+ vs %20

Both represent a space, but in different contexts. + is the HTML form encoding (only valid in query strings). %20 is the RFC-standard encoding valid everywhere, including URL paths. When in doubt, use %20. This decoder treats both as spaces.

When to decode

Paste encoded URLs from server logs, redirect chains, or link previews to read them clearly. %C3%A9 is é, %E2%80%99 is '. Decode before editing a URL, then re-encode after making changes so the modified URL stays valid.