Home / Developer Tools / URL Encode / Decode
Developer Tools
Percent-encode query strings and paths safely.
URL Encode / Decode percent-encodes text so it can be safely embedded in a URL query string or path, and decodes percent-encoded strings back to plaintext.
Enter the text or URL you want to encode (or a percent-encoded string you want to decode) and run the tool. The probe detects the direction from the input and returns the converted result.
Input: Text or URL — e.g. a b&c=1.
The output shows the percent-encoded string (when encoding) or the decoded plaintext (when decoding). Spaces become %20 (or + in form data), and reserved characters like &, =, ? and # are encoded so they are treated as literal data rather than URL structure.
→ Encode a query-string parameter value containing spaces or symbols.
→ Decode a percent-encoded value from a URL or log entry.
→ Safely embed arbitrary text in a URL path.
→ Convert between %20 and + space encodings for form data.
Both encode a space. %20 is valid anywhere in a URL; + means space only in the application/x-www-form-urlencoded body (form data). In a URL path or query string, prefer %20; use + only when producing form-encoded bodies.
Reserved characters that have structural meaning (& = ? # / :) and unsafe characters (space, <, >, ", {, }, |, \, ^, ~, [ ], `) should be encoded when used as literal data. Unreserved characters (A–Z a–z 0–9 - _ . ~) never need encoding.
You likely decoded the whole URL, including its structural characters (& = ?), turning them into literal data. Decode only the individual parameter values, not the full URL, to preserve its structure.