URL utility

URL Encoder and Decoder, without the guesswork.

Encode or decode URL text instantly and privately. Your input never leaves this browser.

Format help

Component — query values & text.

RFC 3986 — stricter reserved-character encoding.

Form encoded — spaces become +.

Full URL — keeps URL structure intact.

Try an example

Try a query value, URL, or plain text.

Encoded result
Your converted result will appear here.

Updates automatically as you type.

Processed locally in your browser

URL encoding guide

How to use a URL encoder and decoder

A URL encoder and decoder converts text into a format that browsers and web servers can read safely. URLs use certain characters for structure: a question mark starts a query string, an ampersand separates parameters, and a hash points to a fragment. When one of those characters is part of the actual value you want to send, it needs encoding. This free URL encoder turns those characters into percent-encoded values such as %20 for a space and %26 for an ampersand. The result is a clean, shareable URL that preserves the meaning of your data.

Encode URL values before you share them

Use a URL encoder when you are adding user-entered text to a link, building a search query, creating a redirect, or preparing an API request. For example, a search phrase like tea & coffee must be encoded before it becomes part of ?q=; otherwise the ampersand can be interpreted as the start of another parameter. The default Component format is the best choice for most individual values, including query parameters, path segments, labels, and form fields. If you need to preserve the punctuation that already gives a complete URL its shape, choose the Full URL option instead.

Use URL decode online to read encoded text

URL decode online when you receive a link containing values like %2F, %3F, or %E2%9C%93 and need to see the original text. A URL decoder reverses percent encoding, making debugging redirects, tracking links, API responses, and copied query strings much easier. Paste the encoded value, select Decode, and the tool updates as you type. If the value contains malformed percent encoding, the URL decoder shows a clear warning instead of silently changing your data. This is especially helpful when diagnosing links that were edited manually or encoded more than once.

Choose the right URL encoding format

URL encoding is not one-size-fits-all. Component encoding is based on encodeURIComponent() and encodes reserved characters so a value can safely live inside another URL. RFC 3986 mode is a stricter URL encoder for cases that require every reserved character to be handled consistently. Form encoded mode follows the common HTML form convention where spaces become a plus sign. Full URL mode follows encodeURI(), keeping structural characters such as slashes, colons, and question marks intact. Selecting the right format prevents accidental changes to a URL while still protecting the data inside it.

URL decode and encode with Python

If you are writing scripts, Python URL decode operations use the standard library. Import unquote from urllib.parse to decode a value, or use quote to encode one. The browser tool on this page is useful for checking the result before you add it to code, comparing an API payload, or testing a problematic link without sending the text anywhere. Whether you need a Python URL decode for a log entry or a quick URL decoder online for a copied link, the encoding rules are the same: preserve URL structure and encode data that could be mistaken for syntax.

JavaScript
const encoded = encodeURIComponent("tea & coffee");
const decoded = decodeURIComponent("tea%20%26%20coffee");
Python
from urllib.parse import quote, unquote
encoded = quote("tea & coffee", safe="")
decoded = unquote("tea%20%26%20coffee")
Common characters
Space%20Ampersand%26
Question mark%3FSlash%2F

Private, fast, and easy to check

This URL encoder and decoder runs entirely in your browser. The text you paste is processed locally, so you can inspect sensitive query strings, callback URLs, and API parameters without uploading them to a server. Use it as a quick URL decoder for troubleshooting, a URL encoder for creating links, or a dependable reference when you need to confirm how a character will be represented. Start with the default Component format, switch between Encode and Decode as needed, and copy the result when it looks right.

FAQ

URL encoder and decoder questions, answered.

Clear guidance for encoding URLs, decoding URL text online, and choosing the right format.

What is a URL encoder and decoder?

A URL encoder and decoder converts text between readable characters and the percent-encoded format URLs use safely. Encode a value before placing it in a URL; decode an encoded URL when you need to read or edit it.

Which URL encoding format should I use?

Use Component for a query value, path segment, or standalone text. Use Full URL when encoding an entire URL and you need to keep its structural characters such as /, ?, and &. Form format is useful for form data because it writes spaces as +, while RFC 3986 is the strictest option.

What is the difference between encodeURI and encodeURIComponent?

encodeURI is intended for a complete URL, so it preserves URL separators. encodeURIComponent is intended for one URL component, so it encodes separators such as &, =, and ? that could otherwise change the meaning of a query value.

Can I URL decode online without uploading my input?

Yes. This URL decoder online processes text locally in your browser. Your input is not sent to a server, so you can inspect private query strings and URL values with confidence.

Why does URL decode show an invalid percent encoding warning?

A percent sign must be followed by two hexadecimal characters, such as %20. If a value contains a broken sequence like %GG, the tool decodes the valid parts it can and shows a warning so you can correct the malformed text.

How are spaces, ampersands, and Unicode characters encoded?

In Component and RFC 3986 formats, a space becomes %20 and an ampersand becomes %26. Unicode text, including accented letters and emoji, is converted using UTF-8 before percent encoding. Form format uses + for spaces.

Does this tool help with Python URL decode values?

Yes. The encoded values shown here are compatible with Python URL decode workflows such as urllib.parse.unquote. You can use the tool to quickly check a value before adding the same logic to your Python code.