💻 Developer Tools

Punycode / IDN Converter

Convert internationalized domain names (IDN) — Japanese, German, and any other Unicode domains — to and from Punycode (xn--) notation. Paste a URL and only the hostname is converted. The RFC 3492 algorithm runs entirely in your browser; nothing is sent anywhere.

Direction

How to use

Enter a domain name. In auto-detect mode, input containing an xn-- label is decoded to its Unicode form, and input containing non-ASCII characters is encoded to Punycode. Conversion happens label by label (split on dots), and ASCII-only labels pass through unchanged. Paste a URL containing :// and only the hostname is converted — path and query stay intact. The reverse conversion of the result is shown underneath, so you can confirm the round trip matches.

Punycode is what makes domains like 日本語.jp (a Japanese IDN) work on a DNS infrastructure that only understands ASCII: browsers silently translate them to the xn-- form. Seeing that raw form matters in two situations — configuring DNS records or TLS certificates, where the xn-- name is the real name, and inspecting suspicious links, where a lookalike Unicode domain (e.g. using Cyrillic letters that resemble Latin ones) reveals itself once decoded.

Examples

  • 日本語.jpxn--wgv71a119e.jp
  • xn--eckwd4c7cu47r2wf.jpドメイン名例.jp
  • bücher.examplexn--bcher-kva.example
  • https://日本語.jp/path?q=1https://xn--wgv71a119e.jp/path?q=1 (hostname only)
  • example.comexample.com (ASCII-only passes through)

FAQ

Is my data sent to a server?
No. The conversion runs entirely in your browser; nothing is transmitted or stored externally, and no DNS lookups are made.
What is Punycode (xn--)?
An encoding (RFC 3492) that represents internationalized domain names (IDN) containing Unicode characters — Japanese, German umlauts and so on — using only the letters, digits and hyphens that DNS can handle. Encoded labels get the prefix xn--.
What happens when I paste a URL?
Input containing :// is treated as a URL: only the hostname is converted, while the path, query string, port number and user info are kept as they are.
How are uppercase letters and full-width dots handled?
Labels containing non-ASCII characters are NFKC-normalized — full-width letters and digits such as ABC or 123 are folded to their ASCII forms — and lowercased before encoding. Besides the regular period, the full-width dots 。 . 。 used in Japanese text are also accepted as label separators.
When does decoding fail?
A label that starts with xn-- but does not contain valid Punycode cannot be decoded, and an error is shown. Fix the input and the result appears again.