URL Encoder/Decoder

Runs in your browserDeveloper Tools#Encoding#Web

Encode and decode URLs and query values, and see a link's parameters in a table.

Encode as

For a query value or path part: encodes everything except letters, digits and - _ . ! ~ * ' ( ).

How to use, limits & privacy

About URL Encoder/Decoder

Percent-encode and decode URLs and query values as you type. Choose Component for a single value or Full URL to keep a whole link working. Decoding treats + as a space if you want, keeps a stray % instead of failing, and breaks a link's query string into a table, which makes UTM and tracking links easy to read. It runs in your browser.

How to Use

1

Pick Encode or Decode

For encoding, choose Component (a query value or part of a path) or Full URL (a whole link).

2

Paste your text or link

Type or paste into the left box, or click Example. The result appears on the right as you type.

3

Check the details

When decoding, keep "+ means space" on for form data and query strings. A link with ? parameters also gets a Query parameters table below.

4

Copy or swap

Click Copy, send the result to another tool, or click Swap to reverse the conversion.

Privacy & Processing

  • Mode: local
  • Files Leave Browser: Local tool processing; review details below
  • Max Input Size: Device memory limits
  • Account Required: No
  • Data Stored Locally: Nothing is saved; your text is cleared when you close the page.
  • Network Processing: Assets or models may require an initial download

Everything is converted in your browser. Nothing you paste is uploaded.

Rules & Limitations

  • Component encodes everything except letters, digits and - _ . ! ~ * ' ( ), so / ? & = and spaces become %2F %3F %26 %3D %20.
  • Full URL keeps : / ? & = # and any %XX already in the link, so encoding a link twice does not double-encode it.
  • Text is encoded as UTF-8: a Hindi or emoji character becomes several %XX codes.
  • A malformed escape, such as a % not followed by two hex digits, is kept as it is and its position is shown.
  • With "Each line separately" on, every line is encoded on its own and line breaks are kept.

Top Suggestions

  • Reading a long UTM or affiliate link parameter by parameter
  • Encoding a value before putting it in a query string or API call
  • Fixing links with spaces or Hindi text so they work when shared
  • Decoding a redirect or callback URL nested inside another link
  • Encoding a list of search terms or links, one per line

URL Encoder/Decoder FAQ

How do I decode a URL?

Click Decode and paste the link. %20 becomes a space, %2F a slash, and so on. If the link has ? parameters, each one is listed with its decoded value in the Query parameters table.

What is the difference between Component and Full URL encoding?

Component (encodeURIComponent) encodes the characters that have a meaning in URLs, such as / ? & =, so use it for one value. Full URL (encodeURI) leaves those characters alone so the link still works, and only encodes spaces and other unsafe characters.

Why is + shown as a space?

In form data and most query strings, + stands for a space. Keep "+ means space" on to read them that way. Turn it off when decoding a path, where + is a real plus sign; an encoded plus is always %2B.

How do I read the parameters of a UTM link?

Paste the whole link with Decode selected. The Query parameters table shows utm_source, utm_medium, utm_campaign and every other parameter with its decoded value, plus the #fragment if there is one.

Why does decoding say a % sequence is malformed?

A % must be followed by two hexadecimal digits, as in %20. A text like "100%" or a broken copy has a % without them. The tool keeps that % as it is, decodes the rest, and tells you where the problem is. A literal % should be written %25.

Is my URL sent anywhere?

No. Encoding and decoding run in your browser, so links with tokens or personal data never leave your device.