URL Encoder / Decoder

Encode and decode URL components or full URLs, handle plus-space form encoding, inspect query parameters, copy output, and swap direction.

Encode the right part of the URL

URL encoding is easy to get wrong because a full URL and a single query value follow different rules. This tool gives you both modes: component mode for values that will sit inside a path segment or query parameter, and full URL mode for preserving URL separators while encoding unsafe characters.

The query inspector shows decoded parameter names and values when the result contains a query string, which is useful when debugging OAuth redirects, analytics links, signed URLs, or copied API examples.

Loading tool...

When to use each mode

  • Use component mode for a single query value, path value, redirect URI value, search term, or copied token.
  • Use full URL mode when you want to keep characters such as colon, slash, question mark, ampersand, and hash as URL structure.
  • Enable plus-space handling for form-style query strings where spaces are represented as plus signs.
  • Decode first, inspect query parameters, then encode only the specific value you are changing.
  • Use swap to quickly verify whether the encoded value round-trips to the same readable text.

Common mistakes

Double-encoding is the classic bug: a percent sign becomes %25, then the already-encoded value no longer matches what the receiver expects. Another common issue is encoding a whole URL as a component when only the redirect URI value should be encoded. Keep an eye on whether reserved URL characters are supposed to remain structural or become data.

URL encoding FAQ

Should I encode a full URL or a component?

Encode a component when the value is data inside another URL. Encode a full URL only when you want to preserve URL separators.

Why do spaces sometimes become plus signs?

HTML form encoding often represents spaces as plus signs in query strings. Percent encoding uses %20.

Can this inspect query strings?

Yes. When the converted value contains query parameters, the table shows parameter names and decoded values.