URL Encoder / Decoder

URL encode or decode text instantly. Handles %20 spaces, special characters, full URLs, query strings. Free, no signup, runs in your browser.

Input
Awaiting input

About URL Encoder / Decoder

Frequently asked questions

URL encoding (also called percent-encoding) replaces characters that have special meaning in a URL — like spaces, slashes, question marks, hashes — with a percent sign and two hex digits. A space becomes %20, an at-sign becomes %40, and so on. It's the mechanism that lets URLs carry arbitrary text safely in query strings, anchors, and form submissions.

Whenever text needs to be placed inside a URL and that text could contain characters with reserved URL meaning. Common cases: query string values (?q=hello+world), redirect parameters that contain another URL (?next=https%3A%2F%2Fexample.com), API request bodies sent as application/x-www-form-urlencoded, and OAuth state parameters.

encodeURI is meant for encoding a complete URL — it leaves reserved characters like /, ?, #, and : alone because they have structural meaning. encodeURIComponent is for encoding a single piece of a URL (a query value, a path segment) — it encodes everything that isn't a letter, digit, or one of -_.!~*'(). For most use cases (encoding a value to put inside a query string), you want Component mode.

Probably a double-encoding issue — the text was URL-encoded twice and you're only decoding it once. Try decoding the output again. The opposite case (decoding text that wasn't actually URL-encoded) usually surfaces as a 'URI malformed' error, which the tool flags.