URL Encode / Decode

Percent-encode, decode and take apart URLs, with a decoded query-parameter table.

Runs locally · nothing uploaded
Text
Encoded
URL parser

What it does

Percent-encoding replaces characters that are not allowed in a URL with %XX bytes. Which characters get escaped depends on where the text goes, so the encoder offers the three rules developers actually use:

  • Component (encodeURIComponent): for one query value or path segment. Escapes &, =, /, ? and #.
  • Full URL (encodeURI): keeps the URL structure and only escapes spaces, non-ASCII and unsafe characters.
  • RFC 3986: also escapes ! ' ( ) *, as required by OAuth 1.0 and AWS request signing.
  • Space as + switches to HTML form encoding (application/x-www-form-urlencoded) in both directions.

The decoder never gives up on bad input. An unescaped % or a byte sequence that is not valid UTF-8 is reported with its exact position and kept as-is, and text that was encoded twice is detected.

URL parser

Paste a URL to see its protocol, host, port (including the default), path, query and fragment, each with a copy button. Query parameters are listed in a table with decoded keys and values, repeated keys are flagged, and the whole set can be copied as JSON. Parameters in the fragment (#/route?tab=2), common in single-page apps, get their own table.

How to use it

Choose Encode or Decode and type: the output updates as you go. Swap feeds the result back in; Parse URL sends it to the parser.

Privacy

Everything runs in your browser and nothing is sent anywhere. Your last input and URL are kept in local storage; Clear removes them.