Paste your text or URL
One item, or a list with one address per line.
Paste text or a web address to encode it with percent signs, or paste an encoded address to read it. Choose whether you are encoding a value or a whole URL.
100% private — your text is processed in your browser and never sent to any server.
Keep going with your result in another tool. Nothing is uploaded.
One item, or a list with one address per line.
And whether it is a value (a query parameter) or a whole address.
Use it in a link, an API call, a redirect or a spreadsheet.
A web address can contain only a limited set of characters. Spaces, accented letters, emoji and characters that have a meaning in a URL, such as &, ?, # and /, cannot appear as they are. They are replaced by a percent sign followed by two hexadecimal digits, so a space becomes %20 and the letter é becomes %C3%A9. This is called percent-encoding or URL encoding, and you meet it in shared links, query strings, redirects, API parameters and tracking codes.
The right way to encode depends on what you are encoding. A value, such as a search phrase that will go after ?q=, must have everything encoded, including &, =, / and ?, otherwise they would be read as part of the URL structure. A whole address already contains those structural characters, so they must be kept, and only the unsafe characters, such as spaces and accents, are encoded. Choosing the wrong one is the most common mistake: encoding a whole address as a value produces something like https%3A%2F%2F… that no longer works as a link.
Decoding turns %20, %C3%A9 and the like back into readable characters, which is what you need to read a long shared link, a redirect target or a value from a server log. Multi-byte characters such as accented letters and emoji are rebuilt correctly. If a line contains an invalid sequence, such as a stray percent sign, that line is left as it was, and the tool tells you how many lines could not be converted.
In a path a space is %20. In form submissions and some query strings, a plus sign is also used for a space. The option "Use + for spaces" switches to that style when encoding, and reads it when decoding.
The tool encodes and decodes text; it does not check that the address exists or fix a broken link. Encoding a value twice produces %2520, so encode once and decode once. To clean tracking parameters from links, use the URL cleaner.
More utilities that also run without leaving your browser.