Input Data

Processed Output

Encoded result will appear here

Supports URL encoding/decoding with full URL structure parsing

What Is URL Encoder / Decoder?

URL encoding (percent-encoding) is a mechanism defined in RFC 3986 for representing special characters in URLs. ToolRunner's URL Encoder / Decoder converts text to and from percent-encoded format instantly in your browser — no data ever leaves your device.

Supported Standards

  • RFC 3986 — URI Generic Syntax and percent-encoding rules
  • encodeURIComponent / decodeURIComponent — JavaScript standard encoding that converts all non-alphanumeric characters except - _ . ! ~ * ' ( )
  • Full URL parsing using the Web URL API — breaks down protocol, host, path, query parameters, and fragment
  • UTF-8 multi-byte encoding — correctly handles CJK characters, emoji, and other Unicode text

Key Features

  • Real-time encoding and decoding as you type with debounced updates
  • One-click mode switching between Encode and Decode
  • Swap button to instantly exchange input and output with automatic mode reversal
  • Full URL structure parsing with query parameter breakdown table
  • Copy input or output to clipboard with visual feedback
  • Upload .txt files for batch encoding/decoding
  • Download results as a text file
  • Clean vertical layout and fullscreen mode for comfortable editing

How to Use

Type or paste text into the input area. Click ENCODE to percent-encode the text, or DECODE to convert percent-encoded text back to readable form. The result appears instantly below. Switch to the Parsed URL view to see a breakdown of URL components when the input is a valid URL. Use the Swap button to flip the input and output — handy for round-trip testing.

Why Use a Browser-Based URL Encoder?

URLs often contain API keys, session tokens, redirect URIs, and other sensitive parameters. Online encoding tools that send your data to a server expose this information to third parties. ToolRunner processes everything client-side with JavaScript, so your URLs and query strings never leave your machine. It also works offline after the first page load.

Common Use Cases

  • Encoding query parameters for REST API calls during development
  • Decoding percent-encoded URLs from server logs or analytics tools
  • Debugging OAuth redirect_uri parameters and callback URLs
  • Encoding internationalized text (Korean, Japanese, Chinese) for URL-safe transmission
  • Inspecting and validating URL structure with the Parsed URL view
  • Preparing encoded form data for application/x-www-form-urlencoded content types

Frequently Asked Questions

What is the difference between encodeURI and encodeURIComponent?
encodeURI encodes a full URI but preserves characters that have special meaning in URLs (such as :, /, ?, #, &). encodeURIComponent encodes everything except a handful of unreserved characters, making it suitable for encoding individual query parameter values. This tool uses encodeURIComponent, which is the correct choice for encoding arbitrary text to be placed inside a URL.
How are Korean and other CJK characters encoded?
Characters outside the ASCII range are first converted to their UTF-8 byte sequence, then each byte is percent-encoded. For example, the Korean character '서' becomes %EC%84%9C (three bytes in UTF-8, each prefixed with %).
Is my data sent to any server?
No. All encoding and decoding happens entirely in your browser using JavaScript's built-in encodeURIComponent and decodeURIComponent functions. Your data never leaves your device.
Can I use this tool offline?
Yes. After the page has loaded, the URL Encoder / Decoder works without an internet connection because all processing is client-side.
What happens with double-encoded text?
If you decode text that was encoded twice (e.g., %2520 instead of %20), a single decode pass will produce the once-encoded form (%20). You can decode again to get the final plain text. The tool does not automatically detect or handle double encoding — this is intentional so you can inspect each encoding layer.