URL Encoder / Decoder
Percent-encode and decode URLs and URL components.
A single value, e.g. a query parameter. Encodes & = / ? # too.
Text
Encoded
How to use the URL encoder and decoder
- Choose Encode or Decode.
- Pick the type: Component for a single value, Full URL for a complete address, or Form data for HTML form submissions.
- Type or paste your input. The result updates instantly.
Component vs full URL
Component encoding (JavaScript's encodeURIComponent) escapes every character with a special meaning in URLs, including &, =, /, ? and #. Use it for query parameter values and path segments.
Full URL encoding (encodeURI) leaves those characters alone so the URL keeps working, and only escapes spaces, non-ASCII characters and a few others.
- Component:
a b&c→a%20b%26c - Full URL:
https://example.com/a b?q=é→https://example.com/a%20b?q=%C3%A9 - Form data:
a b&c→a+b%26c
Frequently asked questions
Why do I get "Malformed percent-encoding"?
A % must be followed by two hex digits, and multi-byte sequences must form valid UTF-8. A literal percent sign is written %25. The error shows where the problem is.
Should a space be %20 or +?
Both are common. %20 is correct everywhere in a URL. + means a space only in form-encoded data and query strings produced by HTML forms. Choose Form data to decode + as a space.
Is my input uploaded?
No. Everything runs in your browser.
Related tools
All tools- Base64 Encoder / DecoderEncode text to Base64 and decode Base64 to text, with UTF-8 and URL-safe support.
- JSON FormatterFormat, validate and minify JSON with syntax highlighting and precise error locations.
- JSON ValidatorValidate JSON, see the exact line and column of syntax errors, and fix common mistakes.
- JSON MinifierRemove whitespace from JSON and see the original size, minified size and savings.
- JSON ↔ YAML ConverterConvert JSON to YAML and YAML to JSON without losing large numbers, with anchors, merge keys and safe quoting.