πŸ”— URL Encoder & Decoder

Encode strings for use in URLs and query params, or decode percent-encoded URLs back to plain text. UTF-8 safe. Runs entirely in your browser.

Input 0 chars
Output
Input Β· one per line0 lines
Output
Copied to clipboard

About URL Encoder

URL Encoder is a free browser-based tool for encoding and decoding percent-encoded URLs. Paste a string with special characters β€” spaces, question marks, ampersands, non-Latin scripts β€” and get back a safely-encoded version ready to drop into a URL or query parameter. Or paste a percent-encoded URL and get back the readable original.

Percent encoding (also called URL encoding) is how URLs represent characters that would otherwise be ambiguous or forbidden. A space becomes %20 (or + in form data), & becomes %26, and non-ASCII characters get UTF-8-encoded byte sequences like %E4%B8%96%E7%95%8C for "δΈ–η•Œ".

Our encoder supports two modes: component (aggressive β€” encodes everything not safe inside a URL segment, like encodeURIComponent) and full URL (preserves URL structure like :// and ?, like encodeURI). Plus a batch mode for handling many URLs at once.

100% client-side: Runs in your browser via encodeURIComponent and decodeURIComponent. Nothing is uploaded. Safe for sensitive URLs (API tokens in query params, session IDs, PII).

How to use URL Encoder

Get an encoded (or decoded) URL in three simple steps:

1

Pick a mode

Text for a single string. Batch to process many URLs at once β€” one per line, one result per line.

2

Choose encoding style

Component escapes everything (safest for query values). Full URL preserves the URL structure. Toggle "space β†’ +" for form-encoded style.

3

Encode or Decode

Hit the button, then Copy the result to your clipboard or Download it as .txt.

Key Features

Component vs Full URL modes

Component mode uses encodeURIComponent β€” encodes every reserved character, safest for inserting user data into a URL segment. Full URL mode uses encodeURI β€” preserves URL structure (://, ?, #, &, =), good for encoding a whole URL that already has structure.

UTF-8 safe encoding

Non-ASCII characters (emoji, CJK, accented Latin, Arabic, Devanagari) are correctly encoded as their UTF-8 byte sequences. Decoding recovers the original characters.

Form-encoded style (space β†’ +)

Optional post-processing swaps %20 for + β€” the form-encoded style used in HTTP POST bodies and some GET query strings. Decoder handles both automatically.

Batch mode

Paste many URLs, one per line. Encode or decode all at once. Empty lines and malformed rows preserve their line number so your input and output stay row-aligned.

Bidirectional with Swap

Encode β†’ Decode round-trip works both ways. The Swap button moves output back to input so you can chain conversions.

Copy + Download + Sample

Copy sends the result to your clipboard with a toast. Download saves as .txt. Load Sample fills in a realistic URL with special characters so you can try it immediately.

Keyboard shortcut

Ctrl+Enter (or Cmd+Enter) triggers Encode in text mode β€” the fastest possible round-trip.

Common Use Cases

  • Build a search query URL with a user's input safely escaped
  • Decode a URL from a browser's address bar back to readable text
  • Encode a redirect URL to pass as a query parameter (?next=...)
  • Prepare a URL for a QR code or shortlink service
  • Fix broken URLs where characters were double-encoded
  • Batch-encode a list of URLs pulled from a spreadsheet
  • Convert form-encoded POST body values to readable strings
  • Debug an API that expects percent-encoded auth tokens or filter values

Security & Privacy

URLs often contain sensitive data β€” session tokens, API keys, personal identifiers. Here's how we keep yours safe:

  • 100% client-side: encoding and decoding use built-in JavaScript APIs (encodeURIComponent, decodeURIComponent). Nothing hits our servers.
  • Works offline: once the page has loaded, disconnect and it still works.
  • No logging of content: your URLs are never seen, logged, or stored by us. There's nothing to see.
  • No accounts required: fully anonymous. Use it as often as you want.
  • Browser-native only: no third-party dependencies β€” just standard web APIs.

Frequently Asked Questions

Component (encodeURIComponent) escapes EVERY reserved char including /, ?, and = β€” safest for a single query value. Full URL (encodeURI) preserves URL structure, so https://example.com/path?a=1 stays intact. Use component for user input, full URL for whole URLs.
HTML form submissions traditionally encode spaces as + instead of %20. If you're building a URL that mimics form-encoded data (or need to match another service's convention), toggle this option. The decoder handles both automatically.
Yes β€” JavaScript's built-in encoder correctly UTF-8-encodes any Unicode character. Try our sample: "Hello, δΈ–η•Œ! πŸ‘‹" round-trips perfectly.
No. Everything runs in your browser. Safe to paste URLs containing auth tokens, session IDs, or any other sensitive data.
Yes β€” decode once, and if the result still looks encoded (contains %25 patterns), paste the result back and decode again. Repeat until you get plain text.
Yes. Free for everyone. No signup, no ads.