URL Encoder & Decoder (Percent-Encoding)

100% freeRuns in your browserNo sign-up

About the URL Encoder / Decoder

URLs may only contain a limited set of ASCII characters, so spaces, accents and symbols are written as %XX percent-escapes. This tool encodes plain text into that safe form and decodes escaped URLs back to readable text.

Two modes mirror JavaScript's two functions: component mode (encodeURIComponent) escapes every reserved character including / and ?, for query parameter values; URI mode (encodeURI) keeps the URL structure intact, for whole addresses.

How to use the URL Encoder / Decoder

  1. Paste the text or URL to encode (or the escaped URL to decode).
  2. Pick component mode for parameter values or URI mode for whole URLs.
  3. Click Encode or Decode and copy the result.

Percent-encoding rules

Unreserved characters (A–Z a–z 0–9 - _ . ~) are never escaped. Everything else becomes one or more %XX bytes of its UTF-8 encoding: space → %20 (or + in form data), é → %C3%A9, 中 → %E4%B8%AD.

Frequently asked questions

Why does a space sometimes become + instead of %20?

The + convention comes from HTML form encoding (application/x-www-form-urlencoded). In proper URLs a space is %20; this tool uses %20.

When should I use component mode vs URI mode?

Use component mode for a single query-string value, where / and ? must be escaped. Use URI mode when encoding a complete URL whose structure characters should stay intact.

Can it fix double-encoded URLs?

Yes — decode repeatedly until the result stops changing to peel off layers of accidental double encoding like %2520.

Related tools