URL Encoder & Decoder β€” Online Free

Percent-encode text for safe use in URLs and query parameters, or decode a percent-encoded URL back to readable text. Supports UTF-8, two encoding modes, live conversion.

Runs in your browser.

What is URL encoding?

URL encoding (also called percent-encoding) replaces "unsafe" characters in a URL with %XX sequences where XX is the hex value of the character's byte. The reason: URLs can only safely use a limited set of ASCII characters. Spaces, accented letters, emojis, quotes, and many punctuation marks must be encoded to travel through HTTP servers, proxies and parsers without breaking. Encoded properly, Hello World! becomes Hello%20World%21 β€” completely safe in any URL.

Two main use cases: building URLs that include user-supplied text (search queries, form values, file names), and reading URLs that look garbled because the percent-encoded sequences need decoding to be human-readable.

Component vs full URI encoding

JavaScript provides two encoding functions; this tool exposes both:

If unsure, pick Component β€” it's safer. Use Full URI only when you have a complete URL like https://example.com/path?q=x and want to encode only the parts that are broken.

Common cases

Common URL encoding pitfalls

Tips

FAQs

What's the difference between encodeURI and encodeURIComponent?

encodeURI preserves URL structure; encodeURIComponent encodes everything that's not a basic letter/number. Pick Component when encoding a value that goes inside a URL.

Why does my encoded URL still look broken?

You may need Component mode instead of Full URI. Component encodes more aggressively.

Is anything uploaded?

No. Runs in your browser.

Does it handle UTF-8 / Unicode?

Yes β€” JavaScript's native encoders use UTF-8 by default.

Related encoder tools