Any file. Any shape.

URL Encode / Decode

Encode or decode URL text — free, unlimited, and entirely private. Nothing leaves your browser.

🔒 Your files never leave your browser

Parse a full URL

How it works

URLs can only safely contain a limited set of characters — letters, digits, and a handful of symbols. Everything else (spaces, punctuation, non-Latin text) needs to be percent-encoded before it can go into a query string or path segment. This tool encodes and decodes that percent-encoding directly inside your browser tab using JavaScript's built-in encodeURIComponent/decodeURIComponent, no server involved.

Encoding always produces plain ASCII output regardless of the input script, and decoding converts it back exactly. If decoding fails, it usually means the input contains a stray % not followed by two hex digits — a sign the text wasn't actually URL-encoded to begin with.

The parser below does the opposite of encoding: paste a full URL and it splits it into protocol, host, path, and hash using the browser's built-in URL API, then lists every query parameter as a decoded key/value pair in a table — no more manually splitting on & and = and decoding each piece by hand.

Limitations

The encode/decode tool works on individual URL components (query values, path segments) — it does not parse a full URL structure; use the parser section for that. The parser requires a complete URL including a protocol (https://) — a bare path or domain without a scheme won't parse. For very large inputs, your browser's memory is the only real limit — there is no artificial cap.

FAQ

Is this URL encoder really free?
Yes — completely free, with no size limits and no account required. Everything runs in your browser, so there's no server cost to recoup.
What's the difference between this and full-URL encoding?
This encodes text as a URL component — safe to drop into a query string value or path segment, matching JavaScript's encodeURIComponent. It also encodes characters like / and & that a full-URL encoder would leave alone, since those are often meaningful inside a single component.
Is my data uploaded anywhere?
No — encoding and decoding both happen locally in your browser using built-in JavaScript APIs. Nothing you paste here is ever sent over the network, which makes it safe to use with production data.
Why does decoding sometimes fail?
Decoding fails when the input contains a malformed %-escape sequence — usually a sign the text wasn't actually URL-encoded, or was double-encoded.
How is the URL parser different from the encode/decode tool above?
The encode/decode tool works on a single piece of text (like one query value), converting it to and from percent-encoding. The parser works on a whole, complete URL, splitting it into protocol, host, path, and hash, and listing every query parameter as an already-decoded key/value pair — no manual splitting required.