DT
Home/URL Encode / Decode

URL Encode / Decode

Encode or decode URL components and query parameters.

How to Encode or Decode URLs

  1. 1Select "Encode" to percent-encode a string, or "Decode" to convert percent-encoded text back to readable form.
  2. 2Choose between "Component" mode (encodeURIComponent — for query parameters) or "Full URL" mode (encodeURI — preserves URL structure).
  3. 3Paste your text or URL in the input field.
  4. 4Click "Convert" to encode or decode the input.
  5. 5Copy the result or use "Swap" to reverse the operation.

Features

URL-encode text using percent encoding (RFC 3986)
Decode percent-encoded URLs back to readable text
Two modes: Component (encodeURIComponent) and Full URL (encodeURI)
Handles special characters, spaces, and Unicode
Swap input and output with one click
Copy result to clipboard instantly
Runs entirely in your browser — no data sent to servers
Perfect for debugging query strings and API parameters

Frequently Asked Questions

What is URL encoding?
URL encoding (also called percent encoding) replaces unsafe characters in a URL with a '%' followed by their hexadecimal value. For example, a space becomes '%20' and '&' becomes '%26'. This ensures URLs are transmitted correctly over the internet.
What is the difference between encodeURI and encodeURIComponent?
encodeURI encodes a complete URL but preserves characters like ':', '/', '?', and '&' that are part of URL syntax. encodeURIComponent encodes everything, making it ideal for encoding query parameter values where those characters should be escaped.
When should I URL-encode my data?
You should URL-encode data when passing it as query parameters, form data, or any part of a URL that might contain special characters. This includes user input, file names, and any text that might contain spaces or symbols.
Why do spaces sometimes appear as '+' and sometimes as '%20'?
In application/x-www-form-urlencoded format (HTML forms), spaces are encoded as '+'. In standard percent encoding (RFC 3986), spaces are encoded as '%20'. Both are valid in their respective contexts. This tool uses '%20' (standard percent encoding).

More Developer Tools