Skip to content

URL encoder and decoder

Encode and decode URLs and inspect their parameters.

DeveloperRuns in your browser

Encode or decode

URL parser

This tool encodes and decodes URLs with percent-encoding, the format that turns spaces, accented letters and symbols into sequences such as %20 or %C3%B1 so they travel safely in a web address. It also includes a parser that splits a URL into protocol, host, port, path, fragment and query parameters.

It is handy for developers, for anyone building campaign links with UTM parameters, or for making sense of a long URL copied from an email. Everything runs in your browser.

How to use

  1. 1Choose “Encode” or “Decode”.
  2. 2Pick the mode: component (for parameters) or full URL.
  3. 3Paste the text and copy the result; enable “+ as space” for form data.
  4. 4Use the parser to view and edit a URL's parameters and rebuild it.

What you can do

  • encodeURIComponent and encodeURI
  • Decoding with error detection
  • Breakdown of protocol, host, path and parameters

encodeURIComponent vs encodeURI

encodeURIComponent encodes every reserved character (/, ?, &, =, #…) and is the right choice for a parameter value. encodeURI leaves those characters alone and is for encoding a full URL without breaking its structure. Using the wrong mode is the most common cause of broken links.

The + sign and spaces

In HTML forms (application/x-www-form-urlencoded) spaces are encoded as + instead of %20. Enable “Treat + as space” to decode data coming from a form or from some APIs correctly.

URL parser

Paste any address to see its parts separately and a table of already-decoded parameters. You can edit, add or remove parameters and the tool rebuilds the URL with correct encoding.

  • Review and clean up marketing UTM parameters.
  • Debug API calls with many parameters.
  • Find out where a redirect URL actually points.

Frequently asked questions

What is URL encoding?

Percent-encoding: every character not allowed in a URL is replaced by % followed by its hexadecimal (UTF-8) code. For example, a space is %20 and ñ is %C3%B1.

Why does decoding fail?

Because the input has a malformed % sequence, such as a lone % or bytes that are not valid UTF-8. The tool tells you the input is invalid instead of returning garbled text.

When should I use %20 and when +?

%20 is valid anywhere in a URL. + only means a space in the query part of form submissions; in the path, + is a literal plus sign.

Does my data leave the browser?

No. Encoding and parsing happen locally.

More in Developer