inyourbrowser.com

URL Decode

Paste a percent-encoded URL or query string and get the readable version back. Runs in your browser.

Input
Output

URL TOOLS

URL Decode

Decodes percent-encoded characters back to their original form (decodeURIComponent). Tick “Treat + as a space” for form-encoded query strings.

Runs entirely in your browser

How it works

The tool passes your text to decodeURIComponent, which turns each %XX sequence back into a byte and reads the bytes as UTF-8. With Treat + as a space ticked, every + is replaced with a space first, which matches HTML form encoding. A malformed sequence shows an error and leaves your input as it is.

Processing runs in your browser

All encoding, decoding, and parsing happens inside your browser tab. Our servers are not involved at any point. You can see this yourself in your browser's DevTools Network tab.

Technical specification

Percent-encoding (URL encoding) is defined in RFC 3986 §2.1 (IETF, 2005). Each octet is written as % followed by two uppercase hexadecimal digits. Unreserved characters (A-Z, a-z, 0-9, -._~) never need encoding, and reserved characters (:/?#[]@!$&'()*+,;=) are encoded when they appear inside a value. This tool uses JavaScript's encodeURIComponent and decodeURIComponent, defined in the ECMAScript standard (ECMA-262). encodeURIComponent also leaves ! ' ( ) * as they are, so a system that expects strict RFC 3986 output may need those five escaped. Query string parsing uses URLSearchParams from the WHATWG URL Standard, which reads + as a space.

Standard
RFC 3986. Uniform Resource Identifier (URI): Generic Syntax
Encoding unit
One octet → %XX (two uppercase hex digits)
Space encoding
%20 per RFC 3986; + in HTML form data (RFC 1866)
Browser API
encodeURIComponent() / URLSearchParams

Related operations

To encode binary blobs as text, try Base64. For escaping reserved markup characters, use HTML entities. To inspect the encoded query body of a JSON request, see the JSON formatter.

Frequently asked questions

What does URL decoding do?
It converts percent-encoded sequences (like %20 or %2F) back into their original characters.
Does it decode accented letters and emoji?
Multi-byte sequences are read as UTF-8, so %C3%A9 decodes to é. A sequence that is not valid UTF-8 on its own, such as a lone %C3, shows an error instead of a broken character.
What about + signs?
In query strings, + is sometimes used instead of %20 for spaces. By default the decoder leaves + as it is, because elsewhere in a URL it is a literal plus. Tick "Treat + as a space" to decode form-encoded query strings.
Why does text with a % sign fail to decode?
A % must be followed by two hex digits. Text such as 100% or %zz is not valid percent-encoding, so the tool shows an error and leaves your input as it is. A literal percent sign is written %25.

Last reviewed September 30, 2026

Other pages for this tool

Related tools

Base64
Encode text or files to Base64, decode Base64, or convert images to data URIs.
HTML entity encoder
Encode special characters to HTML entities and decode them back. Instant, in your browser.
Slug generator
Convert any text into a URL-safe slug. Handles diacritics, special characters, and custom separators.
QR code generator
Generate QR codes for URLs, plain text, or Wi-Fi credentials. Download as PNG or copy as SVG. Runs in your browser.