Back to all tools

URL Encoder / Decoder

Encode or decode URL-safe strings using percent-encoding instantly.

No files are stored on our servers
Plain Text
0 chars

How to use

  1. 1

    Pick Encode or Decode.

  2. 2

    Paste your text or URL-encoded string.

  3. 3

    Click the action button and copy the result.

Free URL Encoder & Decoder Online — Percent-Encode Any Text

Encode text to URL-safe percent-encoded format or decode %XX sequences back to readable text. Supports full Unicode, Arabic, emojis. Free, instant, no signup.

URL encoding (also called percent-encoding) converts characters that are not allowed in URLs — including spaces, ampersands, question marks, hash symbols, and non-ASCII characters — into safe %XX hexadecimal sequences. This is essential when building query strings, constructing API endpoints, sharing search result URLs, or passing arbitrary text through HTTP parameters.

Skycally's URL Encoder uses the browser's native encodeURIComponent and decodeURIComponent APIs, which correctly handle the full Unicode character set including Arabic, Chinese, Japanese, Korean, emojis, and any other non-ASCII characters. Each character is encoded as its UTF-8 byte representation in %XX format.

URL decoding is the reverse process — it takes a percent-encoded string like 'Hello%20World%21' and converts it back to the original readable text 'Hello World!'. This is useful for reading garbled URLs copied from browser address bars, debugging API request logs, or understanding encoded form submissions.

Common characters that require URL encoding include: space → %20, & → %26, = → %3D, + → %2B, # → %23, / → %2F, ? → %3F, @ → %40. Most programming languages have built-in URL encoding functions, but this tool lets you quickly test encoding without writing code.

Frequently Asked Questions

What is URL encoding?

URL encoding (percent-encoding) converts reserved and non-ASCII characters into %XX hexadecimal escape sequences so they can be safely included in URLs. For example, a space becomes %20 and & becomes %26.

What is the difference between encodeURI and encodeURIComponent?

encodeURI encodes a full URL and leaves characters like /, ?, &, and = intact because they have meaning in URLs. encodeURIComponent (used by this tool) encodes individual parameter values and encodes those characters too, making it the correct choice for query string values.

Does it support Unicode, Arabic, and emojis?

Yes. The tool uses the browser's native encodeURIComponent which handles the full Unicode character set. Arabic text, Chinese characters, Japanese, emojis, and all other non-ASCII characters are correctly encoded as their UTF-8 byte sequences in %XX format.

Is my text sent to a server?

No. All encoding and decoding runs locally in your browser using JavaScript's built-in encodeURIComponent and decodeURIComponent functions. Nothing is transmitted anywhere.

How do I URL-encode a space?

A space encodes to %20 using encodeURIComponent (used by this tool). Some systems use + to represent a space in query strings, but %20 is the standard and more universally compatible encoding.

What is the difference between URL encoding and Base64 encoding?

URL encoding makes arbitrary text safe for use in URLs by encoding special characters as %XX sequences. Base64 encoding converts binary data into ASCII text for transmission in systems that only handle text. They serve different purposes and are not interchangeable.

Why does my URL contain %20 or %3D?

These are percent-encoded characters. %20 is a space, %3D is =, %26 is &, %3F is ?. Paste the encoded URL into the Decode field of this tool to see the original readable text.

Can I URL-encode an entire URL?

You can, but usually you should only encode the individual query parameter values, not the full URL. Encoding the full URL would also encode the / and ? characters, making the URL unusable. Use encodeURIComponent on each value before appending it to the URL.

You might also like

Other tools you might find useful.