URL Encoder / Decoder

Enter text or a URL-encoded string, choose a direction, and get the encoded or decoded result instantly.

Last updated: September 5, 2026

Frequently asked questions

What does URL encoding do?

Converts characters that aren't safe in a URL (spaces, &, ?, #, and others) into a percent-sign followed by their hex code - for example, a space becomes %20 - so the text can be safely included in a URL, like a search query or parameter value.

Why does a space become %20 instead of a plus sign (+)?

Both are used in practice: %20 is the standard percent-encoding for a space anywhere in a URL, while + specifically means "space" only within URL query strings (form-encoded data), a legacy convention from HTML forms. This tool uses %20, the more universally correct encoding.

What happens if I try to decode text that isn't actually encoded?

Plain text without any % sequences decodes back to itself unchanged, since there's nothing to convert - decoding only fails if the text contains an incomplete or invalid % sequence (like a % not followed by two valid hex digits).

Is this the same as encodeURIComponent() in JavaScript?

Yes - encoding uses exactly that function, which is the standard way to safely encode a single value (like a query parameter) for use in a URL, as opposed to encodeURI() which is meant for encoding a whole URL and leaves characters like / and : untouched.

What does the & character become when encoded?

%26 - since & has special meaning in URLs (separating query parameters), it needs to be percent-encoded to %26 whenever it appears as literal data rather than as an actual parameter separator.

If I encode a URL that's already fully valid, like https://example.com, does it break it?

Encoding is meant for individual values (like a search query), not whole URLs - running a complete URL through this tool's encode mode will also convert its own slashes and colons (: becomes %3A, / becomes %2F), breaking it as a clickable link. Only encode the parameter value itself, not the surrounding URL structure.

Can I decode a URL that has both %20 and + representing spaces?

This tool's decode mode converts %XX percent-sequences back to their original characters, but a literal + in a query string is a separate legacy convention for spaces that percent-decoding alone won't touch - if your input mixes both conventions, you may need to replace + with a space manually before or after decoding.

Calculate