TuttiTools
%

URL Encoder / Decoder

Encode and decode URL components

Encoding

What is URL Encoding?

URLs can only contain a limited set of characters. Letters, numbers, and a few symbols like hyphens and underscores are always safe. Characters like spaces, accented letters, ampersands, and question marks need to be encoded before being placed in a URL — otherwise they can break the link or be misinterpreted by browsers and servers.

URL encoding (also called percent-encoding) replaces unsafe characters with a % followed by two hexadecimal digits. A space becomes %20, an ampersand becomes %26, and an accented é becomes %C3%A9 in UTF-8.

Smart Auto-Detection

This tool automatically detects whether you’re encoding a complete URL or an individual value and applies the correct behavior:

This distinction matters because encoding a full URL like a component value would destroy the URL structure, turning https:// into https%3A%2F%2F.

Available Options

Encoding

Controls how non-ASCII bytes are represented:

Multiline

When enabled, each line is encoded or decoded independently. Useful for processing a list of URLs or values in bulk.

How to Use This Tool

  1. Select Encode or Decode mode.
  2. Paste your URL or value in the input area.
  3. The result appears immediately — no button to click.
  4. Use the copy button to grab the output.

Common Use Cases

Frequently Asked Questions

Why does this tool sometimes keep ? and & unencoded?

When the input is recognized as a complete URL, structural characters like ?, &, =, :, and / are intentionally preserved — encoding them would break the URL. For individual values (a search term, a parameter value), those characters are encoded because they would otherwise interfere with the URL structure.

Is my data private?

Yes. All encoding and decoding runs locally in your browser. Nothing is sent to a server.

What's the difference between %20 and + for spaces?

Both represent a space, but in different contexts. %20 is the standard percent-encoding defined by RFC 3986 and works everywhere. + is a form-encoding convention (application/x-www-form-urlencoded) valid only in query strings. Select Form encoding if you need + instead of %20.

What does Latin-1 encoding do?

Latin-1 (ISO 8859-1) encodes each character as a single byte. It’s a legacy encoding used by older systems. Characters outside the Latin-1 range (such as Chinese, Arabic, or emoji) cannot be represented and will produce an error. Use UTF-8 for modern applications.

Related Tools