Home › Tools › Developer Tools › URL Encoder and Decoder
Free Developer Tool

URL Encoder and Decoder

Turn messy links full of %20 and %3A back into readable text, or safely encode text for a URL. Double encoded tracking links are unwrapped, and every parameter is laid out in a table so you can check it.

Input

Result

0Layers Decoded
0URL Parameters
0Characters

      
Copied!

What Is URL Encoding?

URLs can only contain a small set of characters. Spaces, accents, emoji and symbols such as &, ? and # have to be written as a percent sign plus two hex digits. A space becomes %20, a colon becomes %3A and the rupee sign becomes %E2%82%B9. This is called percent encoding, and it is defined in RFC 3986.

Decoding does the reverse and turns an unreadable link back into plain text. This tool does both, line by line, and also lays out every part of a URL in a table. It is built for the jobs marketers and developers face every week: checking tracking links, building redirect and share links, and fixing links that were encoded twice.

How to Use the URL Encoder and Decoder

  1. Choose Decode or Encode at the top of the input box.
  2. Paste a link or text. Put several on separate lines to process them all at once.
  3. When decoding, keep Decode every layer ticked to unwrap links that were encoded two or three times, such as %2520.
  4. When encoding, pick what the text is for: a parameter value, a full URL, or form data.
  5. Check the URL breakdown under the result, then copy it or use it as the new input.

Which Encoding Should You Use?

OptionUse it forWhat stays as is
Parameter valueA value after =, such as a URL inside ?url= or a campaign nameLetters, digits and - _ . ! ~ * ' ( )
Full URLMaking a whole link with spaces or accents safe to shareAlso : / ? # & = + , ; @ $, and existing %XX codes
Form dataText sent like an HTML form, application/x-www-form-urlencodedSame as parameter value, but spaces become +
Strict RFC 3986Signed API requests and systems that reject ! ' ( ) *Only letters, digits and - _ . ~

The parameter and full URL options match the browser functions encodeURIComponent and encodeURI, so the result is exactly what JavaScript would produce. Text is encoded as UTF 8, which is what every modern browser and server expects.

Tips for Clean Links

Build Better URLs

Learn how query strings affect crawling in URL parameters explained, tag campaigns properly with UTM parameters explained, and plan readable paths with URL structure for AI SEO. Building a campaign link from scratch? Use the UTM builder, and check any JSON payload with the JSON formatter and validator.

Frequently Asked Questions

1What does %20 mean in a URL?

%20 is the encoded form of a space. Every special character in a URL is written as a percent sign and two hex digits, so %3A is a colon, %2F is a slash and %26 is an ampersand. Decoding turns them back into normal characters.

2What is double encoding and how do I fix it?

Double encoding happens when already encoded text is encoded again, so %20 becomes %2520. Paste the link here with Decode every layer ticked and the tool unwraps all layers and tells you how many there were.

3Should a space be %20 or +?

In the path of a URL a space must be %20. In a query string or form data, + is also read as a space by most servers. Use the Form data option if a system expects +, and %20 everywhere else.

4What is the difference between encodeURI and encodeURIComponent?

encodeURI keeps the characters that give a URL its structure, such as : / ? & and =, so it is for whole links. encodeURIComponent encodes those too, so it is for a single value placed inside a link, such as a redirect target.

Related Articles

More Free Developer Tools

See all developer tools →  |  Browse every free tool →