URL Encoder/Decoder

Encode or decode URLs

Runs in your browser

Info

  • Standard (encodeURIComponent): Encodes all special characters, suitable for URL parameter values
  • Full URI (encodeURI): Preserves URL special characters like :, /, ?, &
  • Unsafe characters will be converted to %XX format (hex encoding)

What is URL encoding?

URL encoding is the process of converting special characters in URLs into a safe format that can be transmitted over the internet. This tool supports two encoding types: Standard (encodeURIComponent) for parameter values and Full URI (encodeURI) for entire URLs.

Use cases

  • Encode URL parameters to transmit data safely
  • Handle URLs with special characters or Unicode characters
  • Decode encoded URLs to make them readable
  • Process query strings in APIs or web applications

When to use?

Use this tool when you need to encode or decode URLs, especially when working with APIs, processing query parameters, or need to ensure URLs are safe and valid. Very useful for web developers and anyone working with URLs.

Examples

  1. Encode a value for a query parameter (Standard)

    Input

    price=10€ & size=M

    Output

    price%3D10%E2%82%AC%20%26%20size%3DM

  2. Encode a full address (Full URI)

    Input

    https://example.com/search?q=café menu&page=2

    Output

    https://example.com/search?q=caf%C3%A9%20menu&page=2

  3. Decode an encoded URL

    Input

    %E1%BA%A3nh%20th%E1%BA%BB%202026

    Output

    ảnh thẻ 2026

Questions and answers

Should I use Standard or Full URI?

Use Standard for a single value you put inside a URL, such as a search term. Use Full URI for a complete address: it keeps characters like :, /, ? and & so the link still works.

Why is a space written as %20 and not +?

Percent-encoding writes a space as %20, which works everywhere in a URL. The + form is only used by HTML forms, and when decoding, a + stays a plus sign.

What does "Invalid data" mean when decoding?

The text contains a % that is not followed by two hexadecimal digits, for example "100%". Text like that needs to be encoded, not decoded.

All Tools