URL Encoder / Decoder
Encode or decode URL/percent-encoded strings.
Frequently asked questions
What exactly does this encode?
It percent-encodes characters that aren't safe in a URL component — spaces, &, ?, =, and other reserved characters become %XX sequences, the same behavior as JavaScript's encodeURIComponent.
Why does encoding a full URL also encode the // and : ?
Because this encodes a URL component (a piece of data), not a full structured URL — it treats every character as data, including ones that are structurally meaningful in a complete URL. Encode only the individual value you're inserting (like a query parameter) rather than the whole URL.
Why did decoding fail with an error?
The input contains a % that isn't followed by a valid two-digit hex code, meaning it isn't validly percent-encoded — double-check you're decoding text that was actually URL-encoded.