URL Encode/Decode

Run parsing, conversion, and validation in your browser. No input is sent to a server. Use it for first-pass format troubleshooting.

Status

Runs in your browser. No input is sent to a server. Use this as a first-pass diagnostic step.

How to use

Paste a value and click Encode/Decode. If you paste a full URL, the query part after ? is shown in a readable view.

Notes (this tool)

  • This tool mirrors encodeURIComponent (value-level). Use a dedicated approach for full-URL normalization.
  • For form-urlencoded contexts where + means space, convert manually.

About this page

What does this tool do?

Encode/decode URLs and query strings to make pasted strings readable.

Useful for checking parameter values and debugging encoding issues.

What is URL encoding?

URL encoding (percent-encoding) converts characters that have special meaning in URLs—or non-ASCII characters—into a safe “%XX” form.

In query parameters, characters like “&”, “=”, “?”, and “#” are treated as delimiters, so you must encode them if they are part of a value.

Typical use cases

  • Put non-ASCII text or spaces into query parameters
  • Encode JSON/text before putting it into a URL parameter
  • Debug double-encoding (e.g., %2520) by decoding

Debugging workflow (recommended)

  • Encode the raw text first to get the expected format
  • Decode the actual URL string and compare differences
  • If %25 appears frequently, suspect double-encoding
  • If values contain & / = / #, encode the value part explicitly

Recommendations (practical)

  • Encode each query value with encodeURIComponent-like behavior
  • Do not mix full-URL encoding with query-value encoding
  • Store decoded snapshots with logs to speed up reproduction

What this tool does

  • URL encode (encodeURIComponent)
  • URL decode (decodeURIComponent)
  • Pretty display of query strings

Common pitfalls

  • Decoding fails when stray % remains (invalid escape)
  • Re-encoding values that are already encoded
  • Misreading form-style + values without converting them to spaces

encodeURI vs encodeURIComponent

This tool mirrors encodeURIComponent for parameter values. Keep it distinct from encoding a full URL with encodeURI.

  • Encode a value: encodeURIComponent is typical
  • Encode a full URL: encodeURI can be used in some cases

Operational notes

  • The same string can be interpreted differently by context. Prioritize destination specifications.
  • Watch for upstream auto-conversion such as spaces, line breaks, and URL decoding.

Referenced specs

  • RFC 3986 (URI)
  • WHATWG URL Standard (application/x-www-form-urlencoded)
  • ECMAScript encodeURIComponent/decodeURIComponent

FAQ

encodeURI vs encodeURIComponent?

This tool uses encodeURIComponent for parameter values. It is not intended to encode a full URL.

Is “+” treated as a space?

decodeURIComponent keeps “+” as “+”. If you want it as space, you need to convert manually.

What is the difference between %20 and +?

%20 is a percent-encoded space. “+” may be treated as a space in application/x-www-form-urlencoded contexts. Interpretation depends on context.

Why do I get NG: Invalid encoding on decode?

It is usually caused by incomplete percent escapes (for example %2) or invalid byte sequences. Also check for double processing.

Can I paste a full URL?

Yes, but this tool is value-oriented; use a dedicated parser for full URL normalization and structural validation.

References

  1. RFC 3986 (URI)
  2. WHATWG URL Standard (form-urlencoded)
  3. ECMAScript: encodeURIComponent

These links are generated from site_map rules in recommended diagnostic order.

  1. Query String Parser — Parse query strings and list parameters
  2. Base64 — Encode/decode Base64 with UTF-8 handling
  3. UTM Builder — Build URLs with UTM parameters
  4. Text Counter — Count characters including newline and full/half-width views

Example

a+b=c → a%2Bb%3Dc
こんにちは → %E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF