URL Encode & Decode

Convert special characters, spaces, and Unicode into percent-encoded triplets (%XX) or decode URLs back to readable text according to RFC 3986 standards. Includes an interactive URL query parameter inspector and line-by-line batch processing.

How to use

1

Choose whether you want to Encode or Decode text.

2

Select your encoding standard: Component (RFC 3986), Strict RFC 3986, Full URI, or Form URL-encoded (spaces as +).

3

Enter or paste your text, query parameters, or full URL into the input field.

4

Inspect the instant output, copy the converted string, or view parsed query parameters in the interactive breakdown table.

How URL percent-encoding works

Uniform Resource Identifiers (URIs) are constrained to a limited set of ASCII characters defined in RFC 3986. Characters outside the unreserved character set must be represented using percent-encoding (also known as URL encoding). In percent-encoding, non-permitted bytes are converted into a three-character sequence consisting of the percent symbol % followed by two hexadecimal digits representing the byte value in UTF-8.

RFC 3986 character classification

CategoryCharactersEncoding Behavior
UnreservedA-Z, a-z, 0-9, -, _, ., ~Never percent-encoded in RFC 3986.
Reserved / Delimiters:, /, ?, #, [, ], @, !, $, &, ', (, ), *, +, ,, ;, =Encoded when appearing inside parameter values to prevent delimiter collisions.
WhitespaceSpace characterEncoded as %20 in RFC 3986, or as + in application/x-www-form-urlencoded form submissions.
Unicode / Multi-byteEmojis, accents, non-Latin scripts (e.g., ü, 你好)Converted to UTF-8 octets, then each octet is percent-encoded (e.g., ü → %C3%BC).

Difference between encodeURI and encodeURIComponent

In web development, two distinct methods exist:

  • encodeURIComponent (Component Mode): Encodes all reserved characters including slashes, question marks, ampersands, and colons. This must be used when encoding individual query parameter values (such as search queries or redirect URLs).
  • encodeURI (Full URI Mode): Preserves structural URI delimiters (://, /, ?, &, #) while encoding illegal characters like spaces and Unicode glyphs. This is used when sanitizing an entire URL address.
  • application/x-www-form-urlencoded: Traditional HTML form submission encoding where spaces are substituted with + rather than %20.

Interactive query parameter inspector

Complex API requests frequently chain nested query parameters, tracking tokens, and authentication payloads. Our built-in query parameter inspector automatically parses input URLs into their constituent components (protocol, hostname, path, hash, and parameter key-value pairs). You can edit parameters inline, toggle individual values, and view the re-encoded URL updated in real time.

Zero server transmission guarantee

URLs frequently contain sensitive authentication tokens, OAuth redirect callbacks, private API keys, or internal enterprise endpoints. All parsing, percent-encoding, and string manipulation execute strictly inside your local web browser. No URL strings or parameters are transmitted across the network.

Frequently asked questions

What is the difference between %20 and + for spaces?

RFC 3986 specifies %20 as the standard percent-encoding for a space character. The plus sign (+) is specific to the application/x-www-form-urlencoded standard used in classic HTML form query strings.

Why does encodeURIComponent not encode characters like ! * ' ( ) by default?

JavaScript's built-in encodeURIComponent leaves ! * ' ( ) unencoded according to RFC 2396. Our Strict RFC 3986 mode percent-encodes these characters (%21, %2A, %27, %28, %29) to ensure compatibility with strict OAuth and AWS signature standards.

How does the tool handle Unicode characters and emojis?

Non-ASCII characters and emojis are first converted into their UTF-8 byte representation, and each resulting byte is converted into a %XX hex triplet.

What causes a URI malformed decoding error?

This occurs when a percent sign (%) is not followed by two valid hexadecimal digits (0-9, A-F), or when multi-byte UTF-8 sequences are truncated or invalid.

Are my URLs and API query tokens stored or logged?

No. All encoding and decoding operations run client-side in your web browser. No text or URLs are sent to any external server.