PublicSoftTools

URL Encoder / Decoder Online Free

Percent-encode special characters for safe URL use, or decode encoded URL strings back to readable text instantly. No signup, runs entirely in your browser.

URL Encoder / Decoder

How to Use the Encoder / Decoder

  1. 1Paste or type the text you want to encode or decode into the input box.
  2. 2Click the operation you need: URL Encode, URL Decode, Base64 Encode, or Base64 Decode. The result appears below instantly.
  3. 3Click Copy to copy the output to your clipboard.
  4. 4To chain operations (e.g. Base64-encode a URL-encoded string), copy the output, paste it back into the input, and apply the next operation.

URL Encoding vs Base64 — When to Use Each

Both are text-safe encoding formats, but they serve different purposes and should not be used interchangeably.

Common Use Cases

Query String Parameters

URL-encode values passed in query strings. A search for "C++ tutorial" should be encoded as C%2B%2B%20tutorial to prevent the +'s and space from being misread as URL delimiters.

API Debugging

When a server returns garbled query parameter values, paste the raw URL parameter into the URL Decode field to read the original string — useful for debugging OAuth redirects, webhook payloads, and form submissions.

Redirect URLs

When building redirect flows (OAuth, SSO, post-login redirects), the destination URL must be percent-encoded before being appended as a parameter — otherwise the ?, &, and = in the inner URL will corrupt the outer URL structure.

Form Data Submissions

GET form submissions URL-encode field values automatically, but when constructing form payloads manually (e.g. for API testing or scripts), you need to encode values yourself to handle special characters correctly.

OAuth Parameters

OAuth 1.0a requires percent-encoding of the base string and parameter values using a strict subset of encodeURIComponent rules. Decode OAuth callback URLs here to inspect state parameters and error messages.

Webhook Payloads

Webhook URLs often include callback URLs or metadata as encoded query parameters. Decode them here to read the original values during integration testing or debugging without needing a dev environment.

Frequently Asked Questions

What is URL encoding (percent-encoding)?

URL encoding converts characters that are not allowed in a URL into a safe representation. Each unsafe character is replaced by a percent sign (%) followed by its two-digit hexadecimal ASCII code. For example, a space becomes %20, an ampersand becomes %26, and a hash becomes %23. This is necessary because URLs only allow a limited set of ASCII characters — letters, digits, and a small number of symbols.

When do I need to URL-encode text?

You need URL encoding whenever you include user-supplied data in a URL. Common scenarios: adding search query parameters (the "q" value in a search URL), constructing redirect URLs in code, building API request URLs with special characters in parameter values, and encoding form data submitted via GET. Most HTTP libraries and frameworks handle this automatically, but it is useful to understand and manually encode when debugging or constructing URLs by hand.

What is the difference between encodeURI and encodeURIComponent?

encodeURI encodes a full URL and leaves reserved characters like /, ?, =, &, and # intact because they have special meaning in URL structure. encodeURIComponent (which this tool uses) encodes a URL component — a single parameter value — and converts those reserved characters too, since within a value they would otherwise break the URL structure. Use encodeURIComponent for individual query parameter values; use encodeURI only for a complete URL string.

Is my text stored or sent anywhere?

No. All encoding and decoding runs entirely in your browser using JavaScript. Your input is never sent to a server, never logged, and never stored. Closing the tab discards everything. You can safely encode confidential strings, API keys, or personal data without any privacy concern.