URL Encode / Decode

A URL may only contain a limited alphabet, so spaces, ampersands, question marks and non-ASCII text must be percent-encoded before they can travel inside one. This tool handles both jobs — encoding text for safe transport and decoding strings back into readable form — and it offers the two modes that are constantly confused with each other.

url-encode-decode runs 100% locally
Component mode escapes reserved characters — the right choice for a single query value.

How to use it

  1. Paste the text to encode, or the encoded string to decode.
  2. Leave the "full URI" box unchecked for a single parameter value, or check it for a whole address.
  3. Press Encode or Decode and copy the output.

Key facts

About this tool

A URL may only contain a limited alphabet, so spaces, ampersands, question marks and non-ASCII text must be percent-encoded before they can travel inside one. This tool handles both jobs — encoding text for safe transport and decoding strings back into readable form — and it offers the two modes that are constantly confused with each other.

Component mode escapes the structural characters (&, =, ?, /) so a single value cannot break out of its query parameter; full-URI mode leaves the structure of a whole address intact and escapes only what is illegal anywhere in a URL. Malformed percent sequences are flagged rather than guessed at.

Like every TextKit tool, the URL Encode / Decode runs entirely on your device. There is no account, no upload and no record of the content you process — close the tab and everything is gone.

Frequently asked questions

When should I use component mode versus full URI mode?

Encoding one value that will sit inside a query string or path segment: component mode, so an & or = inside the value cannot split parameters. Encoding a complete URL: full URI mode, so the ://, / and ? that give it structure survive.

Why do I see + instead of %20 in some query strings?

HTML form submissions encode spaces as + under the application/x-www-form-urlencoded rules. %20 is the plain percent-encoding and is safe in every part of a URL.

Why does decoding fail on my string?

Almost always a stray % — copied from a price, a percentage or truncated text — or a sequence cut short. The tool reports malformed input instead of returning corrupted text.

Related tools

~/tool/base64-encode-decode

Base64 Encode / Decode

Encode text to Base64 or decode it back, with full Unicode support.

~/tool/hash-generator

Hash Generator (SHA)

Compute SHA-1, SHA-256 and SHA-512 digests of any text, instantly.

~/tool/json-formatter

JSON Formatter & Validator

Pretty-print, minify and validate JSON, with the exact error location when it breaks.