Developer tools

URL encoder / decoder

Prepare a query value or path segment, or turn percent-encoded text back into readable characters.

Processed in your browser
Options
Up to 200,000 input characters

Ready when you are.

A practical example

Input or settings

Café & tea + cake

Example result

Caf%C3%A9%20%26%20tea%20%2B%20cake

When this helps

Useful for individual query values and path segments containing spaces, accents or punctuation. Paste one component, not a complete URL you want to keep navigable.

How it works and its limits

Encoding uses UTF-8 percent escapes and also escapes !, apostrophes, parentheses and *. Reserved characters such as /, ?, #, & and = are encoded because the input is treated as one component.

By default spaces become %20 and a literal + is encoded as %2B. Decoding keeps a + as a plus sign. Form mode instead writes spaces as + and reads + as a space.

Decoding runs once. Malformed percent escapes, invalid UTF-8 bytes and unpaired Unicode surrogates are rejected. Encoding does not validate a URL, make an unsafe link safe or replace context-specific HTML escaping.

Useful details

Should I paste an entire URL?

Use this for a component. Encoding a whole URL also encodes its structural separators.

Why did a plus sign stay a plus sign?

That is the default component behavior. Enable form mode to interpret + as a space.

Does %2520 become a space?

Not in one pass. It becomes %20; decode again only if that is what the source requires.

More developer tools