🔗 URL Encoder Decoder
Encode special characters into percent format or decode percent-encoded URLs back to readable text — instantly and privately in your browser.
Encode or Decode a URL
Enter a full URL, a query parameter value, or any text you need to encode or decode.
Please enter some text to process.
Choose whether to encode or decode your input.
Use Component for query values; Full URL for entire URLs.
Common URL Encoding Reference
| Character | Encoded (Component) | Encoded (Full URL) | Description |
|---|---|---|---|
| Space | %20 | %20 | Whitespace character |
| ! | %21 | ! | Exclamation mark |
| # | %23 | # | Hash / fragment identifier |
| $ | %24 | $ | Dollar sign |
| & | %26 | & | Ampersand / param separator |
| + | %2B | + | Plus sign |
| , | %2C | , | Comma |
| / | %2F | / | Path separator |
| : | %3A | : | Colon |
| = | %3D | = | Equals sign |
| ? | %3F | ? | Query string start |
| @ | %40 | @ | At sign |
| [ | %5B | %5B | Left bracket |
| ] | %5D | %5D | Right bracket |
| % | %25 | %25 | Percent sign |
How to Use the URL Encoder Decoder
Paste your text or URL — Enter a full URL, a query parameter value, a path segment, or any text containing characters that need encoding or decoding.
Select the operation — Choose Encode to convert special characters to percent format, or Decode to convert percent sequences back to readable characters.
Choose encoding type — Select Component mode for encoding individual query values (encodes &, =, ?, / and more). Select Full URL mode for encoding entire URLs while preserving structural characters.
Click Encode or Decode — The result appears instantly below with character count statistics comparing input and output length.
Copy or download — Use the Copy button to grab the output or click Download to save it as a file.
Key Features
Full Percent Encoding
Correctly encodes all unsafe characters including spaces, punctuation, and Unicode characters using RFC 3986 compliant percent encoding.
Accurate Decoding
Decodes percent-encoded sequences back to their original characters, handling multi-byte UTF-8 sequences for non-Latin scripts correctly.
Two Encoding Modes
Choose between encodeURIComponent for query values and encodeURI for full URLs — the right function for every use case.
Unicode & Indian Language Support
Fully handles Hindi, Tamil, Telugu, Bengali, Arabic, Japanese, and all other UTF-8 encoded scripts in both encode and decode directions.
Length Comparison Stats
Instantly shows input length, output length, and size change so you can understand the impact of encoding on your URL or data.
100% Browser-Side Privacy
All processing happens locally in JavaScript. Your URLs and sensitive query parameters are never sent to any server.
How It Works
The URL Encoder Decoder uses two native JavaScript functions depending on the mode selected. For encoding, encodeURIComponent() converts every character that is not an unreserved character (letters, digits, -_.~) into its UTF-8 byte representation expressed as percent-encoded triplets. encodeURI() does the same but preserves the reserved characters that define URL structure: ; , / ? : @ & = + $ #.
For decoding, decodeURIComponent() reverses the process — reading each %XX sequence and converting the hex bytes back to their UTF-8 characters. For multi-byte characters (like Hindi script), the browser handles reassembling the byte sequences into the correct Unicode code point automatically.
If an invalid percent sequence is encountered during decoding (for example, a bare % not followed by two hex digits), the function throws a URIError. The tool catches this and displays a clear, actionable error message rather than a generic crash.
Practical Examples
🇮🇳 Hindi Search Query Encoding
A developer at an Indian news portal needs to build a search URL with a Hindi keyword. The raw query string must be encoded before being appended to the URL.
Input: q=भारत समाचार
Encoded: q%3D%E0%A4%AD%E0%A4%BE%E0%A4%B0%E0%A4%A4%20%E0%A4%B8%E0%A4%AE%E0%A4%BE%E0%A4%9A%E0%A4%BE%E0%A4%B0Using Component mode ensures the = sign and Devanagari characters are both encoded, preventing the query from breaking the URL structure.
🇮🇳 E-Commerce Redirect URL Encoding
A Mumbai-based e-commerce developer builds a login redirect that includes the original destination URL as a query parameter. The destination URL contains slashes and question marks that must be encoded.
Input: https://shop.example.in/cart?item=452&qty=2
Component encoded: https%3A%2F%2Fshop.example.in%2Fcart%3Fitem%3D452%26qty%3D2Without encoding, the & in the nested URL would be interpreted as a parameter separator in the outer URL, breaking both.
🌍 Decoding a Received Webhook URL
A London-based SaaS team receives a webhook callback URL containing an encoded redirect URI. They paste the encoded value into the decoder to inspect the original destination before processing it.
Input: https%3A%2F%2Fapi.partner.com%2Fcallback%3Fref%3DORD-8821%26status%3Dsuccess
Decoded: https://api.partner.com/callback?ref=ORD-8821&status=success🇮🇳 Tamil Product Name in URL Slug
A Chennai-based developer building a regional language product page needs to include a Tamil product name as a URL parameter for analytics tracking.
Input: product=தமிழ் புத்தகம்
Encoded: product%3D%E0%AE%A4%E0%AE%AE%E0%AE%BF%E0%AE%B4%E0%AF%8D%20%E0%AE%AA%E0%AF%81%E0%AE%A4%E0%AF%8D%E0%AE%A4%E0%AE%95%E0%AE%AE%E0%AF%8DWhat Is URL Encoding & Decoding?
URL encoding, formally called percent encoding, is a mechanism for encoding information in a Uniform Resource Identifier (URI) under certain circumstances. URLs can only be sent over the internet using the ASCII character set. Since URLs often contain characters outside this set — spaces, non-Latin alphabets, punctuation, and special symbols — these characters must be converted to a format that can be transmitted safely. The conversion replaces each unsafe character with a percent sign (%) followed by two hexadecimal digits representing the character's byte value in UTF-8.
URL decoding is the reverse process — converting percent-encoded sequences back to their original human-readable characters. This is what your browser does automatically when displaying a URL in the address bar. Understanding when to encode, what to encode, and which encoding function to use is a fundamental skill for any web developer working with APIs, query strings, redirect URLs, or multilingual web applications.
URL Encoder Decoder in Multiple Languages
Want to understand URL encoding deeply — including when to use it and common pitfalls?
Read our complete URL encoding guide →Frequently Asked Questions
Is this tool free to use?
Yes, basic usage is available at no cost. Free users can run the tool a set number of times per day. Registered users and Pro members get higher daily limits and character allowances. The core feature works exactly the same for everyone.
What is URL encoding?
URL encoding (also called percent encoding) converts characters that are not allowed or have special meaning in URLs into a safe format. Each character is replaced by a percent sign followed by two hexadecimal digits representing its ASCII or UTF-8 byte value. For example, a space becomes %20.
What is the difference between encodeURI and encodeURIComponent?
encodeURI encodes a full URL and leaves reserved characters like /, ?, #, and & intact because they have structural meaning in a URL. encodeURIComponent encodes everything including those reserved characters, making it suitable for encoding individual query parameter values where those characters should not be treated as URL structure.
When should I encode a URL?
You should encode a URL when it contains spaces, special characters, non-ASCII characters (like Hindi or Arabic text), or symbols that browsers and servers might misinterpret. Always encode query parameter values before appending them to a URL.
Why does a space become %20 or + in URLs?
In standard percent encoding (RFC 3986), a space becomes %20. In HTML form encoding (application/x-www-form-urlencoded), a space becomes +. Both are valid in their respective contexts. This tool uses the RFC 3986 standard where spaces become %20.
Can this tool decode malformed URLs?
If the input contains invalid percent sequences (like a lone % not followed by two hex digits), the tool reports a clear error message rather than crashing. It processes whatever valid sequences it can identify and flags the problem.
Does the tool support Unicode and Indian language characters?
Yes. The tool fully supports Unicode including Devanagari (Hindi), Tamil, Telugu, Bengali, Gujarati, and all other UTF-8 encoded scripts. Non-ASCII characters are encoded as their UTF-8 byte sequences in percent format.
What characters are safe in URLs and do not need encoding?
The unreserved characters that do not need encoding in URLs are letters (A-Z, a-z), digits (0-9), and the four symbols: hyphen (-), underscore (_), period (.), and tilde (~). All other characters should be percent-encoded when used in a URL context.
Can I use this for encoding query parameters?
Yes. Use Component mode to encode individual query parameter values. This ensures characters like &, =, +, and ? in your values are properly encoded so they do not break the URL structure when the parameter is appended.
Is my data sent to any server?
No. All encoding and decoding is performed entirely in your browser using native JavaScript functions. Your input is never sent to any server and is not stored or logged anywhere.
Recommended Hosting
Hostinger
If you are building a website for your tools, blog, or store, reliable hosting matters for speed and uptime. Hostinger is a popular option used worldwide.
Visit Hostinger →Disclosure: This is a sponsored link.
Contact Us
Related Tools You May Like
Share This Tool
Found this tool useful? Share it with friends and colleagues.