← All tools

URL Encoder and Decoder

Encode and decode URLs, query parameters, and form text online with Unicode support. Everything stays in your browser.

This tool runs entirely in your browser. Your input is never uploaded.

Plain text
Encoded result

What is URL encoding?

URL encoding, also called percent encoding, converts characters that should not be sent directly in a URL into % followed by two hexadecimal digits. For example, a space becomes %20, while Unicode text is represented as UTF-8 bytes.

URL encoding is not encryption. Anyone can decode an encoded value, so it should not be used to protect passwords or keys.

Three encoding modes

URL component

URL component mode uses encodeURIComponent and encodes reserved characters such as /, ?, &, and =. It is suitable for a query parameter value, path segment, or individual parameter name.

Full URL

Full URL mode uses encodeURI and preserves the protocol, hostname, path separators, query structure, and fragment. It is useful for a complete URL containing spaces or Unicode characters.

Form encoding

Form encoding follows application/x-www-form-urlencoded. It represents spaces as +, while a literal plus sign becomes %2B. During decoding, + is converted back to a space.

%20 versus +

%20 is the general percent-encoded representation of a space. + is primarily a space representation in traditional form encoding and usually means a literal plus sign in a regular URL component. This tool handles each according to the selected mode.

Repeated encoding

The tool does not guess whether input has already been encoded. Encoding %20 again produces %2520 because the % character becomes %25. This is standard behavior, not an error.

Privacy and security

Input and output are processed locally in your browser and are never sent to a server. The tool does not put input into the URL or local storage.

Frequently asked questions

What is the difference between encodeURI and encodeURIComponent?

encodeURI preserves characters needed for a complete URL structure. encodeURIComponent encodes those characters and is therefore better for an individual parameter value.

Why does decoding fail?

Common causes include a % that is not followed by two hexadecimal digits or a percent sequence that is not valid UTF-8. Regular spaces and Unicode text are supported.

What is the difference between URL encoding and Base64?

URL encoding handles special characters in URLs, while Base64 represents binary data as text. They solve different problems and neither provides encryption.

Related tools

A growing collection of browser-only tools. Your data stays on your device whenever the browser can handle the task.