URL Encode and Decode

Percent-encode text for a web address or decode it back, and break an address into its parts.

100% private, runs in browser Free, no sign-up
Encode or decode

Encoded in your browser. Nothing is sent anywhere.

How to use it

  1. Choose Encode or Decode and paste your text.
  2. Encoding one value (like a search term or a parameter) is the default. Tick "It's a whole address" to encode a full link but keep its structure.
  3. Paste a full address starting with https:// to see its parts and every query parameter, decoded.

How URL encoding works

Web addresses can only contain a small set of characters. Anything else, such as spaces, accents or symbols with a special meaning like & and ?, is turned into bytes using UTF-8 and each byte is written as % followed by two hexadecimal digits. This is called percent-encoding, and the rules are in RFC 3986.

space → %20 & → %26 = → %3D ? → %3F é → %C3%A9 (2 bytes in UTF-8) £ → %C2%A3 café & croissants = £3.50? → caf%C3%A9%20%26%20croissants%20%3D%20%C2%A33.50%3F

"Spaces as +" follows the older rule used when web forms send data (application/x-www-form-urlencoded), where a space becomes + instead of %20.

Frequently asked questions

Should I encode a value or the whole address?

Encode each value on its own before you put it into an address: a search term containing & would otherwise split into two parameters. "Whole address" mode is for fixing a full link that has spaces or accents in it, without breaking its slashes and question mark.

Why does decoding fail?

A % must be followed by two hexadecimal digits (0–9, A–F), and the bytes must make valid UTF-8 text. A lone % or a link cut short in the middle of a character can't be decoded.

Keep going

Related tools

All Developer tools

Disclaimer: results are estimates for planning only and are not tax, legal or financial advice. Rules and rates vary by country, state and personal situation. Check with a qualified accountant before making decisions. Read the full disclaimer.

Last updated: