URL Encoder / Decoder
Percent-encode text for URLs, or turn %20 soup back into readable text. Two encode modes for the two real situations.
Processed in your browser — URLs and tokens never leave this page.
The characters that need encoding
| Character | Encoded | Why it breaks URLs |
|---|---|---|
| space | %20 | Ends the URL in many parsers |
| & | %26 | Starts a new query parameter |
| = | %3D | Separates key from value |
| ? | %3F | Starts the query string |
| # | %23 | Starts the fragment — everything after is dropped from requests |
Common questions
What is URL encoding?
Converting characters that aren't allowed in URLs (spaces, &, ?, non-Latin letters) into percent-codes — a space becomes %20, an ampersand %26. Without it, those characters break links and query strings.
What's the difference between the two encode buttons?
Encode component encodes everything including / ? & = — use it for a single value going into a query string. Encode full URL preserves URL structure characters — use it on a complete address that just has spaces or special characters in it.
Why does my decoded text show a ⚠ error?
A stray % not followed by two hex digits makes the encoding malformed — usually a truncated copy. Find the lone percent sign and the rest will decode.
Is what I paste sent anywhere?
No — encoding and decoding use your browser's built-in functions, on your device. URLs often contain tokens and session IDs, so that matters.