Stax

URL Encoder / Decoder

Encode or decode URLs and query strings instantly in your browser. Free, no login, 100% client-side. Supports percent-encoding and Unicode.

What is URL encoding?

URLs can only contain a limited set of characters. When you need to include spaces, punctuation, or non-ASCII characters (like ₹ or 中文) in a URL, they must be percent-encoded — replaced with %XX where XX is the hex value of the character.

This tool uses encodeURIComponent and decodeURIComponent — the same functions your browser and JavaScript use internally. It correctly handles Unicode, emoji, and multi-byte characters.

Common encoded characters

  • Space → %20
  • & → %26
  • = → %3D
  • ? → %3F
  • / → %2F
  • # → %23
  • + → %2B

Frequently asked questions

What is URL encoding?
URL encoding (also called percent-encoding) converts characters that aren't allowed in a URL into a safe format. Each unsafe character is replaced with a % sign followed by two hex digits. For example, a space becomes %20, and & becomes %26.
When do I need to encode a URL?
Whenever you include user input or special characters in a URL — query parameters, path segments, or form data. Characters like spaces, &, =, ?, #, and non-ASCII text (like ₹ or Hindi script) must be encoded to avoid breaking the URL structure.
What's the difference between encodeURI and encodeURIComponent?
encodeURI encodes a full URL and leaves structural characters like / ? & = intact. encodeURIComponent (what this tool uses) encodes everything except letters, digits, and - _ . ! ~ * ' ( ) — making it safe for individual query parameter values.
Is my data sent to a server?
No. Encoding and decoding happen in your browser using JavaScript's built-in encodeURIComponent and decodeURIComponent functions. Nothing is uploaded.

Related tools