URL encoder and decoder
Fix escaped query values and paths.
Your inputs
Your results
Ready when you areYour results will appear here.
How it works
Percent-encode or decode a single URL component with explicit handling for plus signs from form-encoded query values.
Read the source reference ↗A few things to know
Do not encode a complete URL with component encoding if you want separators to retain their meaning. Invalid percent escapes or invalid UTF-8 fail. Maximum one million characters.
When to use this tool
Convert an individual query value or path segment. Encoding a whole URL would also encode its structural separators.
- Prepare a query parameter.
- Decode a URL value.
- Diagnose double encoding.
How to use url encoder and decoder
Prepare the inputs
Paste the original text and keep a copy of it.
Choose the settings
Choose the conversion settings; identifiers are preserved as text.
Review and export
Review the output and download it before using it elsewhere.
Try the supplied example
Inputs
text: tea & coffee / 50%; mode: Encode component; plus: Literal plus
Result
The default value becomes tea%20%26%20coffee%20%2F%2050%25.
What it means
Insert the encoded result into the correct URL component only.
Common mistakes to avoid
Encode values once at the insertion boundary
Encode values once at the insertion boundary.
Choose the correct plus-sign convention
Choose the correct plus-sign convention.
Frequently asked questions
Definitions, edge cases, and practical next steps for this tool. Search all tool FAQs ↗
Should I encode a whole URL?
No. This tool uses component encoding, which escapes URL separators too.
Why does a space become %20?
It is the percent encoding of the space byte in this component context.
When does + mean space?
In form-encoded query values. Choose Form space only for that context.
Why do I see %2520?
A percent sign was encoded again; the value has another encoding layer.
Are malformed escapes repaired?
No. Incomplete or invalid percent escapes produce a field error.
Can I decode Unicode?
Yes, when the percent-encoded bytes form valid UTF-8.
Are my inputs uploaded or stored?
Processing happens locally in your browser. This tool does not upload inputs. Downloads stay on your device; sharing or opening them in another service is your choice.
What should I check before using the output?
Do not encode a complete URL with component encoding if you want separators to retain their meaning. Invalid percent escapes or invalid UTF-8 fail. Maximum one million characters.
Explore the topic in the blog
Sources and method
Use the references below to check definitions and platform guidance. The model’s scope and limits are explained above. Read our editorial standards.