URL Encoder & Decoder

Encode and decode URLs and query strings. Parse URL components. Convert special characters to percent-encoding.

Free Always No Account Needed 100% Client-Side

About this tool

URLs can only contain a limited set of ASCII characters. Special characters like spaces, &, =, and non-ASCII characters must be percent-encoded (e.g., space → %20, & → %26) to be safely transmitted.

This tool provides:

URL Encode — converts a plain string to percent-encoded format suitable for use in URLs. Handles both full URLs (encoding only unsafe characters) and query parameter values (encoding all special characters).

URL Decode — converts percent-encoded text back to human-readable form. Handles %XX sequences and + signs (used as space in form data).

URL Parser — breaks any URL into its components: protocol, hostname, port, pathname, query parameters (as a key-value table), and fragment. Useful for debugging API endpoints.

Query String Builder — build and encode query strings from a key-value editor without worrying about encoding.

Frequently Asked Questions

What is percent-encoding?
Percent-encoding replaces unsafe URL characters with a % followed by two hex digits representing the character's ASCII code. Space = %20, & = %26.
What's the difference between encodeURI and encodeURIComponent?
encodeURI encodes a full URL (preserving ://?&#). encodeURIComponent encodes a component value (encodes those too). Use encodeURIComponent for query parameter values.
What does '+' mean in a URL?
In form-encoded data (application/x-www-form-urlencoded), + represents a space. In URL paths and modern query strings, use %20 for spaces.
Can I encode non-ASCII characters?
Yes. Non-ASCII characters are first UTF-8 encoded, then each byte is percent-encoded. Example: é → %C3%A9.

Related Tools