SEO Tools

URL Encoder

Percent-encode URLs, query parameters, and special characters according to RFC 3986 to prevent broken links and HTTP routing errors.

Free to use No registration Mobile friendly Unlimited usage

What is the URL Encoder?

Uniform Resource Identifiers (URIs), standardized under IETF RFC 3986, form the structural addressing foundation of the World Wide Web. A URI operates under strict syntactical constraints: only a limited subset of US-ASCII characters may appear literally in a web address. Characters outside this permitted set—including spaces, non-ASCII Unicode glyphs, and reserved structural delimiters—must be converted into a standardized format known as Percent-Encoding (or URL Encoding). Failing to encode query parameters properly results in broken hyperlinks, truncated HTTP requests, and severe application routing bugs.

The TU Web Tools URL Encoder translates raw strings, query parameters, and complete URIs into compliant, percent-encoded strings according to RFC 3986 specifications, ensuring safe transmission across web servers, APIs, and browsers.

Reserved vs. Unreserved Characters (RFC 3986)

RFC 3986 divides the ASCII character set into three distinct categories:

Character Category Literal Characters Encoding Behavior
Unreserved Characters A-Z, a-z, 0-9, -, _, ., ~ Never encoded; transmitted literally in all contexts.
Reserved Characters :, /, ?, #, [, ], @, !, $, &, ', (, ), *, +, ,, ;, = Encoded as percent-triplets (%HH) when appearing as literal data within query values.
Illegal Characters Spaces, control characters, non-ASCII Unicode (e.g., emojis, accents) Always converted to UTF-8 bytes and encoded as percent-triplets.

The Critical Difference: encodeURI vs. encodeURIComponent

In JavaScript development, confusing encodeURI() with encodeURIComponent() is one of the most common causes of URL corruption: - encodeURI(): Intended for complete URLs. It leaves protocol and domain delimiters (:, /, ?, &, =) intact so the overall URL remains routable. - encodeURIComponent(): Intended strictly for query string key/value pairs. It encodes all delimiters, converting https://example.com?query=a&b into https%3A%2F%2Fexample.com%3Fquery%3Da%26b so that & and = inside values do not break query parsing.

Programmatic Implementation in Python & JavaScript

# Python standard library URL encoding
import urllib.parse

# Encoding query parameter values (RFC 3986 compliant)
param = "search & rescue=yes"
encoded = urllib.parse.quote(param, safe='')
print(f"?query={encoded}")
# Output: ?query=search%20%26%20rescue%3Dyes
// JavaScript RFC 3986 encoding function
function rfc3986Encode(str) {
    return encodeURIComponent(str).replace(/[!'()*]/g, c => '%' + c.charCodeAt(0).toString(16).toUpperCase());
}

Zero-Knowledge Client-Side Security

Sensitive redirect URLs, OAuth callback tokens, and user credentials encoded via the TU Web Tools URL Encoder are processed entirely within your local browser tab with zero data uploaded to remote servers.

Benefits of using the URL Encoder

Two modes, clearly separated

Component mode for a single value, full URL mode for a whole address - the distinction that causes most encoding bugs.

Prevents parameter injection

Encoding a redirect target properly stops its internal ampersands from leaking into the outer query string.

Plus or %20 for spaces

Match whichever convention the system you are integrating with expects, rather than guessing.

Batch encoding

Line-by-line mode prepares a whole column of search terms or values in one pass.

How to use the tool

Step 1

Choose component mode for a single value, or full URL mode for a complete address

Step 2

Paste the text you need encoded

Step 3

Turn on plus signs for spaces only if you are matching a form-encoded system

Step 4

Press Encode URL and copy the result

Popular use cases

  • Query string parameters
  • Redirect target URLs
  • Search terms in links
  • UTM tracking parameters
  • API request parameters
  • Filenames in download links
  • Non-Latin text in addresses
  • Deep links in mobile apps

Frequently asked questions

Percent-encoding represents characters as a percent sign (%) followed by two hexadecimal digits representing their byte value. Reserved characters have special syntactic meaning in URIs (such as : / ? # [ ] @ ! $ & ' ( ) * + , ; =). When these characters appear as literal data, they must be percent-encoded.

In the URI path portion (RFC 3986), a space MUST be encoded as %20. In HTML form submissions using application/x-www-form-urlencoded inside query strings, spaces were historically encoded as +. Modern APIs accept both, but %20 is universally valid everywhere.

Ready to start using TU Web Tools?

Free, browser based utilities for developers, SEO professionals, students and businesses.

Free to use  •  Mobile friendly  •  No installation required