URL encoder and decoder
Percent-encode or decode a URL, query value or form data, choosing between component, whole-URI and form rules.
- Runs in your browser
- No upload
- Result stays on your device
Privacy & limitsRuns in your browser. Nothing is uploaded.
Input content stays in this tab; Refentra does not upload or store it. Optional aggregate action counts are sent only with your usage consent. Clear the workspace when finished.
Supported profile: URI component, whole URI and form encoding are separate; malformed escapes fail.
Maximum text: 200,000 UTF-16 units; parser limits can be smaller. Worker time limit: 15 seconds (regex 1.5 seconds).
Check the input and the result
- Prepare and choose the operation
Choose component, complete URI or form mode before you encode. Each one escapes different parts of an address.
- Check a concrete example
Use this sample and compare the indicated result: a b+c → component → a%20b%2Bc; form → a+b%2Bc
- Check the output before you reuse it
Decode only the layer the sender intended. Decoding repeatedly can turn harmless percent text into reserved delimiters.
Answers for this task
Why does + sometimes become a space?
Form encoding uses + for spaces, while component mode treats a literal plus differently. Choose the format the sender used.
What should I check if the input fails?
Fix incomplete percent escapes such as %2 and invalid UTF-8 sequences. Take care not to encode a whole URL as a single query value by accident.
Where does this tool stop?
Encoding doesn't validate a destination, prevent every kind of injection or fetch the URL. You still need escaping that suits the context.