Built and fact-checked by the DocNectar team — see our editorial standards
Key Features
Instant Calculation
Get accurate results in real time with our optimized algorithm.
Mobile Friendly
Fully responsive design. Works on all devices & screen sizes.
Privacy Focused
Your data stays on your device. We don't store any inputs.
100% Free
No hidden costs. This tool is completely free forever.
URLs can only safely contain a limited set of characters — letters, digits, and a handful of symbols. Anything else (spaces, ampersands, slashes within a value, non-ASCII characters) needs to be percent-encoded, replaced with a % followed by its hex byte value, or it risks breaking the URL or being misinterpreted by the receiving server.
This tool encodes text into that safe percent-encoded form, or decodes a percent-encoded string back into readable plain text — using the same RFC 3986 encoding rules as JavaScript's encodeURIComponent, not the older form-encoding convention that turns spaces into "+".
How it works
Choose encode or decode mode and paste your text. In encode mode, every character outside the URL-safe set (letters, digits, and a few symbols like - _ . ~) is replaced with its percent-encoded equivalent, including spaces becoming %20. In decode mode, percent-encoded sequences are converted back to their original characters.
- Choose encode or decode.
- Paste your text into the input box.
- Read the result instantly, or save it to download as a PDF.
Examples
Encoding a query parameter value
Encoding "hello world & more" produces "hello%20world%20%26%20more" — safe to place inside a URL's query string without breaking it.
Decoding a URL received from a log or link
Decoding "search%3Fq%3Dlaravel%2Btips" reveals the original readable text, useful when reading URLs from server logs or shared links.
Who should use it
- Encoding a value before inserting it into a URL query string or path segment.
- Decoding a URL from a server log or shared link to read it clearly.
- Preparing text with spaces or special characters for safe use in a link.
Industry applications
- Web development and API integration
- Debugging and log analysis
- Digital marketing (building and reading tracked links)
Advantages
- Uses the modern RFC 3986 standard, matching JavaScript's encodeURIComponent behavior.
- Works both directions — encode and decode — in one tool.
- Correctly handles non-ASCII characters and symbols, not just spaces.
Limitations
- Encodes an entire input as one value — doesn't selectively encode only part of a string.
- Doesn't distinguish between encoding a full URL vs. a single component, so applying it to structural URL characters isn't recommended.
- Uses RFC 3986 encoding only, not the legacy application/x-www-form-urlencoded convention.
Common mistakes to avoid
- Encoding an entire URL instead of just the specific value being inserted into it, breaking the URL's structural characters.
- Assuming spaces should become "+" for general URL encoding, which is a form-submission-specific convention, not the general standard.
- Double-encoding a value that was already percent-encoded, producing % turning into %25.
Best practices
- Encode only the specific value you're inserting into a URL, never the URL's structural characters.
- Check whether a value is already encoded before encoding it again, to avoid double-encoding.
- Use decode mode to inspect URLs from logs or shared links that look garbled with % sequences.
Tips
- If a URL you're debugging is full of % characters, decode it first to read the actual intended value.
- When building a URL programmatically, encode each parameter value individually rather than the assembled URL as a whole.