Encode special characters in URLs using percent-encoding (RFC 3986) or decode URL-encoded strings back to plain text.
| Character | Encoded | Notes |
|---|---|---|
| Space | %20 | Also written as + in query strings |
| ! | %21 | — |
| # | %23 | Hash / anchor |
| $ | %24 | — |
| & | %26 | Query string separator |
| ' | %27 | Single quote |
| + | %2B | Plus sign (+ means space in query) |
| / | %2F | Path separator - safe in encodeURI |
| : | %3A | Colon - safe in encodeURI |
| = | %3D | Query param assignment |
| ? | %3F | Query string start - safe in encodeURI |
| @ | %40 | Safe in encodeURI |
URL encoding, formally called percent-encoding, is a mechanism defined in RFC 3986 (published in 2005) that converts characters not permitted in a URL into a safe format using a percent sign followed by two hexadecimal digits. For example, a space becomes %20 and the rupee symbol (Rs.) becomes %E2%82%B9. Without this encoding, browsers and servers cannot reliably transmit URLs containing special characters, query strings with Indian language parameters, or file paths with spaces.
Indian web developers frequently encounter URL encoding when building APIs for Aadhaar-linked services, UPI payment gateways, or government e-commerce portals. Search queries in Hindi, Tamil, or Bengali must be encoded before being appended to a URL. Tools like this are also used to decode webhook payloads from payment providers such as Razorpay, Paytm, and PhonePe that transmit data in percent-encoded form. Backend developers preparing for technical interviews at Indian IT firms are often tested on this concept.
Encoding converts a raw string to its URL-safe representation, while decoding reverses the process. This tool handles both directions and also identifies which characters are being changed, making it useful for debugging broken links, fixing malformed query parameters, or preparing data for REST API calls in frameworks like Laravel or Node.js commonly used in Indian startup tech stacks.