Skip to content
FreeRuns in your browser

URL Encoder/Decoder

Percent-encode or decode URLs and query parameters so special characters never break your links.

Use the URL Encoder/Decoder

Loading tool...

What is the URL Encoder/Decoder?

URLs may only contain a limited set of ASCII characters. Anything else, including spaces, accented letters, emoji and reserved characters like &, ? and # when used as data, must be percent-encoded: each byte is written as % followed by two hexadecimal digits. A space becomes %20, and the letter é becomes %C3%A9 because it is two bytes in UTF-8.

There are two common modes. Component encoding (encodeURIComponent) escapes everything except letters, digits and - _ . ! ~ * ' ( ), and is what you want for a single query value. Full URL encoding (encodeURI) leaves the structural characters : / ? # & = alone so an entire address stays valid.

When to use the URL Encoder/Decoder

Use it when building links by hand, debugging redirects that lose parameters, preparing values for an API request, or reading a long tracking URL full of percent signs. It is also handy for decoding search queries copied from server logs, checking why a link with an ampersand or hash sign breaks, and building OAuth redirect URIs that must be encoded exactly. When a parameter value itself contains a URL, encode it as a component first so its own question marks and ampersands are not mistaken for part of the outer address.

How to use the URL Encoder/Decoder

  1. Select Encode or Decode.
  2. Choose Component for a single value or Full URL for a whole address.
  3. Paste the text or URL into the input.
  4. Read the converted output, which updates as you type.
  5. Copy it into your code, browser or API client.

Examples

Input:      coffee & cream = 5€
Component:  coffee%20%26%20cream%20%3D%205%E2%82%AC

Input:      https://example.com/search?q=déjà vu
Full URL:   https://example.com/search?q=d%C3%A9j%C3%A0%20vu

Decoding %E2%9C%93 returns the check mark character.

Common errors and tips

  • Encode each query value separately, then join them with &; do not encode the whole query string as a component.
  • + means a space only in application/x-www-form-urlencoded bodies; in a path it is a literal plus sign.
  • Malformed URI sequence errors mean a % is not followed by two hex digits; encode literal percent signs as %25.
  • Double encoding (%2520) happens when an already encoded string is encoded again.
  • Never encode the scheme (https://) as a component.

Privacy: runs entirely in your browser

Query strings often contain tokens or emails; here they are encoded locally and never leave your browser. This tool runs entirely in your browser: nothing you enter is uploaded, stored or logged on our servers, and it keeps working even if you go offline after the page has loaded.

Frequently asked questions

What is the difference between encodeURI and encodeURIComponent?
encodeURI keeps characters that have meaning in a URL, such as / ? # & =. encodeURIComponent escapes them as well, which is correct for individual parameter values.
Why is a space encoded as %20 and sometimes as +?

%20 is valid everywhere. The plus sign represents a space only in HTML form encoding (query strings and POST form bodies).

How are non-English characters encoded?

They are converted to UTF-8 bytes and each byte is written as %XX, so "é" becomes %C3%A9.

What does "URI malformed" mean?

The decoder found a % that is not followed by two hexadecimal digits or an invalid UTF-8 sequence. Fix the stray percent sign or encode it as %25.

Ratings & reviews

–

0 reviews

5 star
0 reviews (0%)
4 star
0 reviews (0%)
3 star
0 reviews (0%)
2 star
0 reviews (0%)
1 star
0 reviews (0%)

No reviews yet — be the first to share your experience.

Write a review

Reviews are moderated before they appear.

Your rating *

Photos or videos (optional)

Drag files here or

JPG, PNG, WebP, GIF up to 5 MB. MP4 or WebM up to 25 MB.

  • Featured

    Beautify, minify and validate JSON instantly, with exact line and column for every syntax error.

    Use tool
  • Featured

    Encode text to Base64 or decode Base64 back to readable UTF-8, including URL-safe Base64.

    Use tool
  • Featured

    Generate random v4 and time-ordered v7 UUIDs in bulk, with one-click copy and format options.

    Use tool
  • Regex Tester

    Developer

    Featured

    Test JavaScript regular expressions live, with highlighted matches, capture groups and flag toggles.

    Use tool
  • JWT Decoder

    Developer

    Featured

    Decode JSON Web Tokens to inspect the header, payload and expiry, all without sending the token anywhere.

    Use tool
  • Featured

    Convert Unix timestamps to readable dates and back, in UTC or your local timezone, in seconds or milliseconds.

    Use tool