← All tools
🔗

URL Encoder / Decoder

Encode or decode URLs and percent-encoding online. Free, instant developer tool.

Free · No sign-up
📚 Read the full guide: How to use URL Encoder / DecoderOpen →

How to use URL Encoder / Decoder

  1. 1. Type or paste the text, URL or query-string value you want to convert into the top box. It can be a single word or several lines.
  2. 2. Click Encode → to percent-encode it, turning spaces, &, ?, / and other special characters into codes such as %20, %26 and %2F. Pick Full URL mode to keep a link’s :, /, ? and & intact, or Form data for + instead of %20.
  3. 3. Or click ← Decode to turn percent-encoded text such as %20 or %C3%A9 back into readable characters (tick Treat + as space for form data); malformed input shows “Invalid percent-encoding” and points to the stray %.
  4. 4. Check the result in the bottom box, then click Copy and paste it into your link, code, API request or spreadsheet.

Frequently asked questions

Is the URL encoder and decoder free?

Yes, it’s free, needs no sign-up and has no usage limits. Encode or decode as much text as you like, as often as you like, in any modern browser on desktop or mobile.

Does the URL decoder send my links to a server?

No. Encoding and decoding use your browser’s built-in JavaScript functions, so the URLs, tokens and query strings you paste stay on your device and aren’t sent to or logged by GrabCast.

How do I encode spaces in a URL?

Paste the text and click Encode, and each space becomes %20, which is valid anywhere in a URL. HTML forms send spaces as + instead: choose the Form data encode mode to produce that format, and tick “Treat + as space (form encoding)” when decoding form data or query strings so every + turns back into a space.

Why do I get “Invalid” when I decode a URL?

Decoding fails when the text contains a % that isn’t followed by two hex digits, such as “100%” or “%zz,” or when a multi-byte character sequence is incomplete. Fix the stray %, or encode it as %25, and decode again.

Should I URL-encode the whole link or just the parameters?

Usually just the values. The default Component mode works like JavaScript’s encodeURIComponent, so it also converts :, /, ? and & — ideal for a query value or path segment. To clean up a whole address such as https://example.com/my page?q=café, switch to Full URL mode (encodeURI), which keeps :, /, ?, &, = and # and encodes only spaces and other unsafe characters.

Does the URL encoder support emoji and non-English characters?

Yes. Text is encoded as UTF-8, so é becomes %C3%A9 and an emoji becomes four percent-encoded bytes, matching what browsers and servers expect. Decoding reverses the process and restores the original characters.

🛠️ Browse all text & developer guides and tools →