URL Encoder / Decoder

Free URL encoder and decoder tool. Instantly encode plain text into percent-encoded URLs or decode encoded strings back to readable text.

What URL Encoder / Decoder Does

Takes a plain text string or raw URL as input and outputs a percent-encoded string where unsafe or reserved characters are replaced with their %XX hex equivalents. In decode mode, it reverses the transformation — converting a percent-encoded string back into its original readable form.

Who Uses This Tool

URL Encoder / Decoder is built for Web developers, backend engineers, QA testers, API integrators, SEO specialists, data analysts handling query strings, security researchers auditing encoded payloads. Whether you are processing data as part of an automated pipeline or need a quick one-off conversion in your browser, the tool requires no installation and no account — paste your input and get your result in seconds.

Primary Use Case

Encoding a URL or query string parameter so it can be safely transmitted in an HTTP request without breaking the URL structure.

The Problem It Solves

Manually replacing spaces, ampersands, and special characters with their percent-encoded equivalents is error-prone and slow. A missed character like an unencoded & or = silently corrupts query parameters, causing broken requests or misrouted data. This tool eliminates character-by-character substitution errors and handles edge cases like malformed sequences that would otherwise throw runtime exceptions.

Example

Input
https://example.com/search?q=hello world&lang=日本語
Output
https%3A%2F%2Fexample.com%2Fsearch%3Fq%3Dhello%20world%26lang%3D%E6%97%A5%E6%9C%AC%E8%AA%9E

When to Use This Tool

Use this tool when preparing URLs for APIs, encoding query parameters, debugging redirects, testing web requests, or decoding encoded links during development.

What to Do With the Output

Paste into HTTP request headers or API call parameters, embed in href attributes in HTML, store in configuration files requiring encoded URLs, validate against server-side decoding logic, or insert into curl commands and Postman requests.

Common Mistakes to Avoid

Double-encoding: running an already-encoded string through encode again produces %2520 instead of %20. Encoding the full URL instead of only the parameter value breaks the protocol slashes and colons. Assuming spaces always encode to + — this tool uses %20 via encodeURIComponent, not the application/x-www-form-urlencoded + convention. Pasting encoded strings with surrounding whitespace can cause decode failures if not trimmed.

How It Works

Encode mode calls JavaScript's native encodeURIComponent(), which converts all characters except A–Z a–z 0–9 - _ . ! ~ * ' ( ) into their UTF-8 byte sequences expressed as %XX hex pairs. Decode mode calls decodeURIComponent() with a fallback that escapes any bare % signs not followed by two hex digits before retrying, preventing exceptions on malformed sequences. The extract function scans input for http:// or https:// patterns using a regex and returns each matched URL on a new line.

Pro Tip

Use the Extract URLs function on raw HTML source or server log dumps to pull all URLs out at once, then pipe each result back through decode mode to normalize any percent-encoded paths before comparison or deduplication — avoiding false mismatches between %2F and / variants of the same URL.

Also Known As

URL Encoder / Decoder is also commonly referred to as percent encoder, URL escape tool, URL unescape tool, encode URI component, decode URI component, URL percent decoder, URL string encoder, URL encode special characters, URL decode online, percent-encoding converter. All of these terms describe the same conversion — no matter what you call it, this tool handles it.

Frequently Asked Questions

Encoding a full URL converts structural characters like ://, /, and ? into percent sequences, making it unusable as a link. Only the value portion of a query parameter should be encoded, preserving the surrounding URL structure.
The string may be double-encoded. One decode pass removes one layer. If the result still contains % sequences, run it through decode a second time to reach the original value.
It encodes spaces as %20 using encodeURIComponent. The + convention applies only to application/x-www-form-urlencoded form data, not to URL components.
The tool's safe-decode fallback automatically escapes malformed % characters not followed by two valid hex digits, re-encodes them as %25, and retries decoding — returning a result instead of throwing an error.
Yes. The Extract URLs function scans any pasted text for strings beginning with http:// or https:// and returns each match on its own line, regardless of surrounding markup or log formatting.
No. This tool uses encodeURIComponent, which encodes a broader set of characters including /, ?, #, and &. encodeURI leaves those characters unencoded because it assumes the input is a complete URL rather than a parameter value.