UFOZoo

URL Encoder/Decoder — Percent Encoding Online Tool Free

Encode text to URL-safe percent encoding or decode back to readable text. Supports UTF-8 characters including emojis. Drag-and-drop file upload.

Features

  • Encode or decode text for safe use in URLs
  • Supports UTF-8 including emoji, Chinese, and other Unicode
  • Space encoding options — %20 or + for form data
  • Instant results as you type
  • Works entirely in your browser — no data uploaded
  • Encode query string parameters individually or the entire URL at once
  • Decode percent-encoded strings back to their original readable text
  • Bidirectional conversion — switch between encode and decode with a single toggle
  • Options to control hex casing (uppercase %20 vs lowercase %20) for different API requirements
  • Real-time character and byte length counters in the status bar

How to Use

  1. 1Paste your text or URL into the input area.
  2. 2Toggle between Encode and Decode. Enable Spaces as "+" for form data.
  3. 3Results update instantly. Use Copy or Download to save.
  4. 4Encode a full URL by pasting it directly — the tool preserves the URL structure while encoding unsafe characters.
  5. 5Need to decode a query string? Paste the encoded parameter values and switch to Decode mode to see the original text.
  6. 6Enable Uppercase Hex when integrating with systems that expect uppercase percent-encoding (e.g., RFC 3986 compliant APIs).
  7. 7Use Spaces as + for HTML form submissions — this matches the application/x-www-form-urlencoded content type.
  8. 8Test API endpoints by encoding special characters in query parameters and inspecting the encoded output.
  9. 9Drag and drop a .txt file to batch-encode or decode multiple URLs or strings at once.
  10. 10Use the character counter to ensure your encoded URL stays within length limits for different browsers and CDNs.

Frequently Asked Questions

What is URL encoding?

URL encoding converts characters not allowed in URLs into a safe format. Characters like spaces, &, ?, and non-ASCII text are replaced with % followed by two hex digits (e.g., space becomes %20).

What does Spaces as "+" do?

When enabled, spaces are encoded as + instead of %20. This is the application/x-www-form-urlencoded format used in HTML forms. Use this for form submissions.

Is my data sent to a server?

No. All processing happens in your browser. Your data never leaves your device.

Does it support Unicode?

Yes. The tool handles all Unicode characters including emoji, Chinese, Japanese, accented letters, and any UTF-8 text.

What characters need to be URL-encoded?

Characters that must be encoded include: spaces (%20), special characters like &, ?, #, %, /, :, ;, =, @, $, commas, and all non-ASCII characters. Only letters A-Z, digits 0-9, and a few special characters (-, _, ., ~) are safe without encoding.

What's the difference between encoding a URL vs encoding query parameters?

When encoding a full URL, the :// and / path separators should remain readable. When encoding query parameters, encode the key and value separately. This tool handles both scenarios — paste a full URL or just the parameter values.

Should I use %20 or + for spaces?

Use %20 in URL path segments and query strings for standard URL encoding. Use + for spaces in application/x-www-form-urlencoded form data (like HTML form submissions). Our Spaces as + option lets you choose the right format.

Why do some encoded URLs have uppercase hex (%20) and others lowercase (%20)?

Both uppercase and lowercase hex digits are valid in URL encoding. RFC 3986 treats them as equivalent. Uppercase is more common in practice and preferred for readability. The tool lets you choose either format via the Uppercase Hex option.

How does URL encoding work for Chinese characters?

Chinese characters are encoded as UTF-8 bytes first, then each byte is percent-encoded. For example, '中' (U+4E2D) becomes %E4%B8%AD in UTF-8. The tool handles this automatically — just type the Chinese text and it will encode correctly.

Can I encode multiple parameters at once?

Yes. Paste your entire query string (e.g., 'name=value&foo=bar') and the tool will encode the parameter values while preserving the & and = separators. This is especially useful for preparing API request payloads.

What is double URL encoding and when would I need it?

Double encoding means encoding an already-encoded value (e.g., %20 becomes %2520). This is sometimes required when passing URLs as query parameters, or when a system decodes input before re-encoding it. Use Encode mode twice for double encoding.

Related Tools