URL Encoder & Decoder — Percent-Encode Query Values Online
Percent-encode spaces, &, =, and unicode so a value is safe inside a query string, and decode %xx sequences back to readable text. Build and debug URLs fast.
Examples
a b&c=d
a%20b%26c%3Dd
Space, &, and = are escaped so the whole string stays one value, not three parameters.
https%3A%2F%2Fexample.com%2Fsearch%3Fq%3D%EC%95%88%EB%85%95
https://example.com/search?q=안녕
Multi-byte UTF-8 sequences like %EC%95%88 decode back to the original unicode characters.
How to use this tool
- Choose Encode or Decode.
- Paste or type your text or URL component.
- View the converted result.
- Copy the output.
What is URL Encoder/Decoder?
URL Encoder/Decoder converts text to a URL-safe form and back using percent-encoding. Reserved characters like space, &, =, ?, and # carry special meaning inside a URL, so when they appear inside a value they must be escaped to sequences such as %20 and %26 — otherwise the value is misread as structure. The encoder mirrors JavaScript's encodeURIComponent, which escapes those reserved characters; the decoder reverses any valid %xx sequence back to the original character, including multi-byte unicode.
Specifications
| Standard | RFC 3986 percent-encoding |
|---|---|
| Encode mode | encodeURIComponent (escapes reserved chars) |
| Unicode | UTF-8 bytes, e.g. é to %C3%A9 |
| Reversible | Yes — decode restores the exact input |
Tips & gotchas
- Encode each value separately (encodeURIComponent), not the whole URL — encoding a full URL with encodeURI leaves /, ?, &, and = intact, which keeps the structure but does not escape values.
- The reserved characters that must be escaped inside a value are space, & ? # = + and /.
- Percent-encoding is not encryption — anyone can decode it; never use it to hide secrets.
- Decoding fails on a stray % or an incomplete sequence like %2 — fix the input before decoding.
Features
- Encode a value with encodeURIComponent semantics
- Decode percent-encoded (%xx) sequences
- Handles spaces, reserved symbols, and unicode
- Clear error on malformed percent sequences
- Copy the result instantly
When to use it
- Building a query string by hand and needing one parameter value escaped.
- Reading an encoded redirect or callback URL from server logs.
- Pasting a search URL with %xx noise to see the human-readable query.
- Preparing a value for a fetch() request without double-encoding it.
This tool runs in your browser. Your files and text are not uploaded to our servers, and we do not store your input.
Frequently asked questions
What is the difference from encoding a full URL?+
This tool encodes components (a single query value), so characters such as & and = are escaped. Encoding a whole URL (encodeURI) deliberately leaves those structural characters alone, so encode each part separately when assembling a URL.
Why did decoding fail?+
A malformed percent sequence — a lone % or a truncated code like %2 — cannot be decoded. The tool shows an error so you can correct the input.
Does encoding keep my data private or encrypted?+
No. Percent-encoding is a reversible text transform, not encryption — anyone can decode it. It only makes characters safe to put in a URL.
Related tools
Related guides
Looking for more Developer Tools?
Browse the full collection of free, browser-based tools.