URL Encoder & Decoder

Encode text for safe use in URLs or decode percent-encoded strings back to plain text. Handles spaces, &, ?, =, and all special characters.

Enter your details
Result
Enter your details on the left, then press Calculate.

Runs entirely in your browser. No text is sent to any server.

Related calculators

Frequently asked questions

Why do URLs need to be encoded?

URLs can only contain a limited set of ASCII characters. Spaces, &, ?, =, #, and most non-ASCII characters have special meaning in URLs or are not permitted. Percent-encoding converts these to % followed by their hexadecimal ASCII code (space becomes %20, & becomes %26), ensuring the URL is transmitted without ambiguity.

Which characters need encoding in URLs?

Unreserved characters that are always safe: A-Z, a-z, 0-9, -, _, ., ~ — never encode these. Reserved characters safe only in specific URL positions: : / ? # [ ] @ ! $ & ' ( ) * + , ; = — encode these when they appear in query parameter values. All other characters (spaces, accented letters, Chinese characters, emojis) must be encoded.

What is the difference between URL encoding and HTML encoding?

URL encoding (percent-encoding) converts characters to %XX format for use in URLs. HTML encoding (HTML entities) converts characters to &, <, > etc. for use in HTML markup. They solve different problems: URL encoding prevents URL parsing ambiguity; HTML encoding prevents XSS and markup injection.