URL Encoder & Decoder

Turn special characters into safe %-codes — or decode them back to plain text — instantly.

⚡ Runs entirely in your browser

How it works

A URL can only contain a limited set of characters. Spaces, accents, ampersands and other symbols have to be “percent-encoded” so links and query strings stay valid.

1

Pick a mode

Choose Encode to make text URL-safe, or Decode to turn %-codes back into readable text.

2

Type or paste

Your result updates live as you type — no button to press. A space becomes %20, an ampersand becomes %26.

3

Copy it

Hit Copy to grab the result and drop it straight into your link, code or address bar.

What exactly is percent-encoding?

Every character that isn’t allowed in a URL is replaced by a % followed by its byte value in hexadecimal. This tool uses the browser’s built-in encodeURIComponent and decodeURIComponent — the same functions your favorite websites use — so results are standards-compliant and handle Unicode (like emoji and accented letters) correctly.

Which should I use, encode or decode?

Use encode when you’re building a link or query parameter from raw text. Use decode when you’ve got a messy string full of %20 and %3D and want to read what it actually says.

🔒

Private by design. Everything happens right here in your browser. Nothing you type is ever uploaded — we never see it.

Frequently Asked Questions

What is URL (percent) encoding?
A URL can only contain a limited set of characters, so anything else — spaces, accents, ampersands and other symbols — is replaced by a % followed by a code. For example a space becomes %20 and an ampersand becomes %26.
Should I use encode or decode?
Use Encode when you're building a link or query value from raw text, and Decode when you have a messy string full of %20 and %3D that you want to read as normal text.
Does it handle accented letters and emoji?
Yes. It uses your browser's standard encoding functions, so Unicode characters like accents and emoji are encoded and decoded correctly.
Does it encode every character, including slashes?
It encodes a single value as a self-contained piece, so reserved characters like /, ? and & are also escaped. That's ideal for a single query parameter; if you paste a whole URL it will escape those separators too.
Why do I get an error when decoding?
Decoding fails on malformed input — usually a stray % or an incomplete %-code. Check the text for a percent sign that isn't followed by two valid characters.
Is anything I type uploaded?
No. Everything happens in your browser — nothing you type is ever uploaded, and we never see it.