Skip to content
SmaftyTools

URL Encode/Decode

Encode or decode URLs and query strings online. Free URL encoder/decoder for percent-encoding special characters.

About URL Encode/Decode

The URL Encode/Decode tool is a free uri encoder that converts text to percent-encoded form and back, instantly and in your browser. URL encoding (percent encoding) replaces characters that aren't safe inside a URL — spaces, ampersands, question marks, slashes, non-ASCII characters — with a % sign followed by their hexadecimal byte value, so the resulting string stays a valid, unambiguous URL. It's a tool every web developer needs sooner or later, whether building links by hand or untangling one that's already broken.

Use it to url encode query-string parameters before building a link programmatically, url decode a URL you copied out of server access logs or an email tracking link, or work out why a request is failing because a value contains an unescaped & or = that's being parsed as a second parameter. It's also useful for peeling back multiple layers of encoding — some analytics and redirect systems percent-encode a URL, then encode the whole thing again, and doing that by hand is tedious and error-prone. Query strings, path segments, form submissions and redirect URLs all rely on correct encoding — get it wrong and a browser, server or API can silently misinterpret where one parameter ends and the next begins.

The tool implements full UTF-8-aware percent encoding, so accented characters, currency symbols and non-Latin scripts (Chinese, Korean, Arabic, Cyrillic) all encode and decode correctly — a common source of mojibake in hand-rolled encoding code that only handles ASCII. Malformed encoded input, like a stray % not followed by two hex digits, is caught and reported instead of throwing an opaque browser error. It also round-trips reserved characters like +, which some systems use as a legacy stand-in for a space in query strings — a frequent source of confusion when comparing two 'equivalent' encoded URLs that look different but decode to the same result.

Encoding and decoding happen instantly as you type, entirely client-side, so URLs containing session tokens or internal query parameters never leave your device.

How to Use the URL Encode/Decode

  1. Select Encode or Decode mode.
  2. Paste the text or URL into the input box.
  3. Read the converted output that appears instantly.
  4. Click Copy to use the result in your code or browser.

Features

  • Instant percent encoding and decoding
  • Full UTF-8 support for international characters
  • Handles complete URLs or individual query parameters
  • Clear errors for malformed encoded input

Examples

Encoding a query string value

Input

hello world & more

Output

hello%20world%20%26%20more

Decoding a URL from a server log

Input

search%3Fq%3Dnode.js%26lang%3Den

Output

search?q=node.js&lang=en

Encoding a non-ASCII query parameter

Input

café

Output

caf%C3%A9

Frequently Asked Questions

When do I need to URL encode text?

Whenever you put user text into a URL — query parameters, path segments or form submissions. Characters like spaces, &, ?, # and = have special meaning in URLs and must be encoded to be treated as data.

What does %20 mean in a URL?

%20 is the percent-encoded form of a space character. Each encoded character is a % sign followed by the character's byte value in hexadecimal.

What's the difference between encodeURI and encodeURIComponent?

encodeURIComponent (what this tool uses for parameter values) escapes almost every special character, including &, = and ?, making it safe for a single query value. encodeURI leaves URL-structure characters like /, & and ? untouched because it expects a complete URL, not one piece of it.

Is the URL encoder free?

Yes, the URL encoder is completely free with no usage limits. No signup, no account and no installation required.

Is my data safe?

Yes. All processing happens locally in your browser using JavaScript — nothing you type is uploaded or stored on our servers.