URLs can only contain a limited set of characters. Percent-encoding converts everything else — spaces, accents, &, ? — into %XX sequences that are safe to send.
How to use the URL Encoder / Decoder
- 1 Choose Encode or Decode.
- 2 Choose "Component" for query values or "Full URL" to keep : / ? & intact.
- 3 Paste your text and copy the result.
Formula
Each unsafe byte (UTF-8) → '%' + two hex digits space → %20 (or + in form encoding)
Worked examples
Input: name=Zoë & co
Result: name%3DZo%C3%AB%20%26%20co
For a single query value
Input: https://toolsfort.com/a b?x=1
Result: https://toolsfort.com/a%20b?x=1
Structure preserved
Component vs. full URL
Component (encodeURIComponent) encodes everything except letters, digits and - _ . ! ~ * ' ( ), so it is right for individual query parameter values and path segments. Full URL (encodeURI) leaves URL structure characters such as : / ? # & = alone.
%20 or +?
In URL paths a space must be %20. In HTML form submissions (application/x-www-form-urlencoded) spaces are written as +. Tick the option to use that convention.
Runs locally
Everything happens in your browser — nothing you paste is uploaded or logged, so it is safe to use with API responses, tokens and internal data.
Frequently asked questions
What does %20 mean?
It is an encoded space character (hex 20 = decimal 32).
Why do I get "Malformed percent-encoding"?
The input contains a % not followed by two hex digits, or an invalid UTF-8 sequence.
Should I encode the whole URL?
Usually you only encode individual parameter values with Component mode.
Related tools
JSON Formatter & Validator
Format, beautify, minify and validate JSON with syntax highlighting, key sorting and precise error locations.
Base64 Encoder
Encode text to Base64 (UTF-8 safe), with URL-safe and MIME line-wrapping options.
Base64 Decoder
Decode Base64 and URL-safe Base64 back to UTF-8 text, with clear errors for invalid input.
HTML Entity Encoder / Decoder
HTML entity encoder and decoder: escape special characters to entities, or decode named and numeric entities back to text.
Regex Tester
Regex tester for JavaScript regular expressions: live match highlighting, capture groups and replace preview.
Hash Generator
Generate MD5, SHA-1, SHA-256, SHA-384 and SHA-512 hashes of text or files, and verify checksums.