Accepted upload: .txt · max 5 MB. Uses encodeURIComponent so Unicode and emoji are preserved.
Input
Plain text or URL-encoded
Output
Encode or decode result
About this URL encoder
Encode or decode URI components using encodeURIComponent-style percent encoding. The tool detects whether input looks plain or already encoded, supports Encode, Decode, Swap, a sample string, and .txt upload up to 5 MB (roughly 1.5 million characters). Copy or download results in the browser.
How to use
- Paste a URL fragment, query value, or path segment—or upload .txt (5 MB max).
- Note the plain vs encoded detection hint, then click Encode or Decode.
- Use Swap to move output back to the input field for another pass.
- Try Sample for a quick example, then Copy or Download the result.
Component encoding vs full URLs
encodeURIComponent escapes characters that are not unreserved in URI components (for example query parameter values). It is not the same as encoding an entire URL with encodeURI, which leaves more characters untouched. Decode reverses percent-encoding when the string is valid.
Common uses
- Build query strings with spaces, Unicode, or emoji.
- Read percent-encoded values from server logs.
- Verify encoding before pasting into fetch URLs or curl commands.
Tips
- Encode individual parameter values, not always the whole URL—double-encoding breaks links.
- If decode looks wrong, confirm whether the source used + for spaces (form style) vs %20.
- Stay within the stated character limit for smooth performance.
Privacy
URLs and text you paste are handled locally. Nothing is transmitted to ToolsArk for encoding or decoding.
Limitations
- Focused on encodeURIComponent / decodeURIComponent behavior, not every legacy encoding scheme.
- Detection of “already encoded” input is heuristic and can mislabel ambiguous strings.
- Roughly 1.5M character practical limit and 5 MB file upload cap.
Frequently asked questions
Common questions about the URL Encoder/Decoder.
How does the URL Encoder/Decoder work?
Paste text into Input, then click Encode or Decode. Encode uses encodeURIComponent so reserved characters become percent-encoded (for example, spaces become %20). Decode reverses that. Swap moves Output back into Input for another pass.
Does my text leave my device?
No. Encoding and decoding run in your browser. ToolsArk does not upload your input.
When should I encode a URL?
Encode query values, form fields, or any text that must travel safely inside a URL. Encoding prevents reserved characters from breaking the structure of the link.
Why does Encode change spaces and punctuation?
Characters that are reserved or unsafe in URLs are replaced with %HH sequences. That is intentional. Decode restores the original characters when the string is valid percent-encoding.
What are the size limits?
You can paste large text or upload a .txt file up to 5 MB. Extremely long strings (around 1.5 million characters) may be rejected to keep the browser responsive.
Tags
Continue with these utilities
People frequently use these utilities together.