Punycode converter help

How to use the tool?

  • Place multiple items on multiple lines
  • If you enter a whole URL (must properly begin with a protocol name, e.g. http://), the domain name will be Punycode encoded/decoded, the path will be URL encoded/decoded
  • The tool uses the IDNA2008 standard, but with Unicode TR#46 Compatibility Processing. Therefore, some conflicting characters are encoded using the old IDNA2003 standard

Input formats

The converter accepts several input formats:

  • Plain text: Enter Unicode characters (e.g., münchen) and the tool encodes them to Punycode (xn--mnchen-3ya)
  • Domain names: Enter full domain names like münchen.de and get xn--mnchen-3ya.de
  • Full URLs: Enter http://münchen.de/path and the domain part will be Punycode-encoded while the path will be URL-encoded
  • Punycode strings: Enter xn--mnchen-3ya on the right side to decode back to Unicode

Multiple items

You can convert multiple items at once by placing each on a separate line. Each line is processed independently, so you can mix different types of input.

Standards

The converter implements:

  • IDNA2008 (RFC 5891) — the current standard for internationalized domain names
  • Unicode TR#46 — compatibility processing that handles edge cases between IDNA2003 and IDNA2008
  • Punycode (RFC 3492) — the encoding algorithm itself

Updated: March 3, 2026