All Tools

URL Encoder / Decoder

Percent-encode or decode URLs and query-string values. Runs in your browser — nothing is uploaded.

✓ Runs entirely in your browser. ✓ Nothing uploaded.

About the URL Encoder / Decoder

URLs can only safely contain a limited set of characters. Spaces, ampersands, question marks, slashes and non-English letters have to be percent-encoded (for example, a space becomes %20) so they don't break the link or get misread by a server. URL encoding converts those characters into a safe form, and decoding turns them back into readable text.

This tool encodes and decodes URLs and query-string values instantly in your browser using the standard encodeURIComponent and decodeURIComponent functions. Nothing is uploaded.

How to use it

  1. 1Paste the text or URL you want to convert into the input box.
  2. 2Click Encode to make it URL-safe, or Decode to turn an encoded string back into plain text.
  3. 3Use component encoding for individual query values and full-URL encoding for whole links.
  4. 4Check the output for the converted result.
  5. 5Copy it to use in your link, API request or code.

Common uses

  • Building a query string with values that contain spaces or symbols.
  • Decoding a messy tracking link to see the real destination and parameters.
  • Passing text safely inside a URL parameter in an API call.
  • Debugging why a link with special characters isn't working.
  • Encoding non-English text so it survives being placed in a URL.

Tips & good to know

  • Use component encoding (encodeURIComponent) for individual values — it escapes &, = and ? which full-URL encoding leaves alone.
  • Never put passwords or sensitive data in a URL, even encoded — URLs get logged.
  • Double-encoding is a common bug: encode a value once, not twice.

Frequently asked questions

What's the difference between encode and encode component?
Component encoding escapes reserved characters like & = ? for use inside a single value, while full-URL encoding preserves those so the overall link structure stays intact.
Is my input uploaded?
No. Encoding and decoding happen locally in your browser.
Why does a space become %20 or +?
In URL paths a space is encoded as %20; in form query strings it can appear as +. Both decode back to a space.