Type a tool name, for example "keyword density" or "transcript".
Enter the text that you wish to encode or decode
A URL encoder decoder converts text into a safe percent-encoded form for web addresses, and turns encoded strings back into readable text. This free tool is for developers, marketers and SEOs who work with query strings, API calls and tracking links. Paste your text, pick an encoding type, and the result appears as you type.
URL encoding, also called percent encoding, replaces characters that are not safe in a web address with a percent sign followed by two hexadecimal digits. A space becomes %20 and an ampersand becomes %26. Characters outside basic ASCII, such as accented letters or emoji, are first converted to UTF-8 bytes and each byte is then percent-encoded.
Web addresses can only carry a limited set of characters. Some characters also have a special job: ? starts the query string, & separates parameters, = separates a name from its value and # starts a fragment. If your data contains one of these as plain content, encoding keeps it from being misread.
| Character | Encoded | Why it matters |
|---|---|---|
| Space | %20 | Spaces break links |
| & | %26 | Splits parameters |
| = | %3D | Splits name and value |
| # | %23 | Starts a fragment |
| % | %25 | Starts every escape |
The tool offers four encoding types, and picking the right one is the most important decision you make. Each answers a different question.
Use this when you have a whole address. It encodes spaces, quotes and non-ASCII characters but leaves structural characters such as :, /, ?, &, = and # untouched, so the link keeps working.
Use this when you have one piece of data that will sit inside a URL, such as a search term or a redirect target. It also encodes the structural characters, so & becomes %26 and / becomes %2F.
Base64 rewrites text using 64 plain characters (letters, digits, plus, slash and equals). It is not percent encoding and it is not encryption. It handles UTF-8 text, so accented characters survive a round trip.
This mode swaps five characters for entities: the ampersand, less-than, greater-than, double quote and single quote. Use it when text must appear safely inside an HTML page, not inside a URL.
You can encode or decode a string in four quick steps, and the output updates live without a submit button.
The Swap button moves the output into the input, which is handy for checking a round trip: encode a string, press Swap, switch to Decode, and confirm you get your original text back.
These three examples show how the same kind of input changes with the encoding type, and what the length summary tells you.
Input: https://example.com/search?q=red shoes&size=10 (46 characters). With Encode and URL Encode, the output is https://example.com/search?q=red%20shoes&size=10 (48 characters). Only the space changed. The tool reports that the output is 2 characters longer (4% increase). The link structure is intact and the address is now valid.
Input: red shoes & socks (17 characters). With URL Component, the output is red%20shoes%20%26%20socks (25 characters), which is 8 characters longer (47% increase). The ampersand became %26, so the value can sit inside a query string without splitting it into two parameters. With URL Encode instead, the ampersand would stay as it is, and the parameter would break.
Input: hello (5 characters). With Base64, the output is aGVsbG8= (8 characters), 3 characters longer (60% increase). Base64 output is usually about one third larger than the input, plus padding.
The Output box shows the converted text, and a summary line under it tells you how many characters longer or shorter the result is. A longer result after encoding is normal. A shorter result after decoding is also normal, because each three-character escape collapses into one character.
To decode a URL-encoded string, switch to Decode, choose URL Component (or URL Encode), and paste the string. Each %XX group turns back into its character. For example, caf%C3%A9%20menu decodes to café menu.
Developers often search for how to decode in Java, Python, C# or JavaScript. Every language follows the same percent-encoding rules, so you can use this page to check what your own code should produce. If your code and this output disagree, the usual cause is that one side treated a plus sign as a space.
URL Encode decoding leaves sequences like %26 and %2F as they are, because those characters are reserved. If you need them turned back into & and /, use URL Component.
Anyone who moves text between a human-readable form and a web address will find it useful.
If you are reading a link hidden inside a code image, first pull the text out with the QR code decoder, then paste it here to decode any percent-encoded parts. After cleaning a long link, the URL shortener can make it easier to share, and the bulk URL shortener handles many at once.
Most encoding bugs come from using the wrong mode or encoding twice. These habits prevent both.
Encode each parameter value with URL Component, then join the pieces with the real ?, & and =. If you run a finished query string through URL Component, the separators are encoded too and the link stops working.
If you see %2520 in a link, the string was encoded twice: the percent sign in %20 became %25. Decode once, check that you get %20, and decode again to reach the plain text.
In HTML form submissions, a plus sign often stands for a space. This tool treats a plus as a plus when decoding. If your data came from a form and shows plus signs where you expect spaces, replace them with spaces before decoding.
Anyone can decode Base64. Never use it to hide passwords or secrets. The same applies to a password placed inside a URL: encode special characters in it, but remember the link still exposes the password.
Use URL Encode or URL Component for addresses, and HTML Entities only for text shown on a page. Mixing them gives output that looks right but fails in the place it is used.
The tool converts exactly what you paste and does not check whether the final address exists or loads. It does not rewrite paths or shorten links, so for readable permalinks try the URL rewriting tool. Decoding fails on malformed input rather than guessing, which is deliberate: a visible error is safer than silent corruption. Lone surrogate characters in the input can also cause an error when encoding.
Base64 here is meant for text. It is not an image or file converter. For converting text to binary instead, see the binary translator, and browse more utilities in the online calculators and utilities category.
Paste your string into the encoder at the top of this page, choose the right encoding type, and copy a clean result in seconds. Use Swap to confirm the round trip before you ship the link or API call.
Your report has been submitted. We will look into this issue.
A VPN changes your network exit. It does not guarantee anonymity.
Themes, plugins, code, video, audio, graphics & more from 90,000+ authors.
Web Development
Design & Media
Unlimited Access
Explore Envato Market