Skip to content
JustTools

URL Encoder / Decoder

Percent-encode text for a URL or decode %-escaped links back into readable text — as you type. Pick the right encoding for a parameter, a whole URL or form data, and edit query parameters in a table.

Runs in your browser Free · no sign-up

At a glance

  • Three encodings for three jobs: parameter value (encodeURIComponent), whole URL (encodeURI) and form data (application/x-www-form-urlencoded, spaces as +).
  • Encodes text as UTF-8, so Hindi, other Indian scripts, ₹ and emoji become the %E0%A4… sequences every browser and server understands.
  • The decoder turns %20 and + back into spaces and shows exactly where an invalid sequence like “50%off” or broken UTF-8 is.
  • Spots double encoding (%2520) and decodes again with one click.
  • Paste a full URL to see its host, path, fragment and every query parameter decoded in a table — edit, add or remove parameters and copy the updated URL.
  • Optional strict RFC 3986 mode and line-by-line conversion. Everything runs in your browser.

Step by step

How to encode or decode a URL

  1. 1

    Choose Encode or Decode

    Pick Encode to make text safe for a URL, or Decode to read an encoded link.

  2. 2

    Pick what you’re encoding

    Use Parameter value for a single value, Whole URL for a complete link, or Form data for form posts.

  3. 3

    Paste your text

    The result appears as you type. Problems are pointed out with the exact character.

  4. 4

    Copy or edit

    Copy the result, or edit the query parameters in the URL parts table and copy the updated URL.

Features

Everything you need, nothing you don’t

Live, both ways

Results update as you type. Switch between Encode and Decode and the result carries over.

Right encoding, explained

Each mode says when to use it, so a URL doesn’t break because its slashes or ampersands were encoded.

Clear errors

Instead of “URIError: malformed URI”, see which character is wrong and why.

Query parameter editor

Read long tracking URLs at a glance, fix a value, remove a parameter, and get a correctly encoded URL back.

Batch mode

Turn on Each line separately to encode or decode a whole list of values or URLs at once.

Private

URLs with tokens or personal data never leave your device.

Which encoding should I use?

You haveUseExample
A value for ?q= or a path segmentParameter valuechai & samosa → chai%20%26%20samosa
A complete URL with spaces or HindiWhole URLhttps://x.in/a b → https://x.in/a%20b
Data for an HTML form or POST bodyForm datachai & samosa → chai+%26+samosa

Common percent-encodings

CharacterEncodedCharacterEncoded
space%20 (or + in forms)&%26
/%2F=%3D
?%3F#%23
%%25+%2B
@%40₹%E2%82%B9

FAQ

Frequently asked questions

What is URL encoding?

URLs may only contain a limited set of characters. URL (percent) encoding replaces any other character — spaces, &, non-English letters, emoji — with % followed by the hexadecimal value of each of its UTF-8 bytes, such as %20 for a space.

Should a space be %20 or +?

Both mean a space, in different places. %20 works everywhere in a URL; + means a space only in query strings and form data. When decoding, keep “+ means space” on for query strings and form data.

What’s the difference between encodeURI and encodeURIComponent?

encodeURI encodes a complete URL but leaves characters that structure it — : / ? & = # — alone. encodeURIComponent encodes those too, which is right for a single value you put inside a URL, but would break a whole URL.

Why does decoding fail with “malformed URI”?

The text contains a % that isn’t followed by two hexadecimal digits (like “50%off”), or bytes that aren’t valid UTF-8. The tool shows the exact character; encode a literal % as %25.

What is double encoding?

Encoding text that’s already encoded, so %20 becomes %2520. The tool notices when a decoded result still contains escapes and offers to decode it again.

Is my URL sent anywhere?

No. Encoding, decoding and parsing all happen in your browser.

Keep going

Browse every tool

Last updated Report a problem or suggest a feature