Skip to content
TextArray
100% local

Punycode converter

Convert internationalized domain names to punycode (xn--) and back.

Input
Output

Punycode converter

Domain names with accents, umlauts or non-Latin scripts — münchen.de, bücher.example, 例え.jp — cannot be stored in DNS directly, because DNS only understands ASCII. Punycode (RFC 3492) bridges that gap: every label containing international characters is converted to an ASCII form starting with xn--, so münchen.de becomes xn--mnchen-3ya.de. Browsers do this silently in the address bar; this converter makes the transformation visible in both directions.

Paste one domain per line. In the default automatic mode the tool decides per label: labels starting with xn-- are decoded back to Unicode, labels containing non-ASCII characters are encoded to punycode, and plain ASCII labels pass through untouched — a mixed list converts correctly in one run. The direction selector forces encoding or decoding when you need one specific result, and the output is lowercased, matching how DNS treats names. Emoji domains work too: 💩.la encodes to xn--ls8h.la.

Typical uses: preparing DNS zone files and TLS certificate requests, which need the xn-- form; checking what a suspicious xn-- link in an email really says, since homograph phishing hides look-alike characters behind punycode; auditing server logs and referrer lists; registering internationalized domains, where the registrar counts the length of the encoded form, not the pretty one.

The converter implements the RFC 3492 algorithm entirely in your browser. Nothing you paste is sent anywhere — domain lists from logs, zone files and audits stay on your machine. An invalid punycode label produces a clear message naming the offending label instead of a silently wrong result.

FAQ

What is punycode?
Punycode (RFC 3492) is the encoding that lets internationalized domain names live in the ASCII-only DNS. Each label with non-ASCII characters is rewritten as an ASCII string and prefixed with xn--, so münchen becomes xn--mnchen-3ya.
Why do some domains start with xn--?
xn-- is the ACE prefix that marks a punycode-encoded label. When you see xn--mnchen-3ya.de in a log or certificate, it is the DNS form of münchen.de. Paste it here to see the readable Unicode version.
Can punycode reveal phishing domains?
It helps. Homograph attacks register domains with look-alike characters — a Cyrillic а instead of a Latin a. Decoding an xn-- link, or encoding a domain you were sent, shows whether the name is really what it appears to be.
Do emoji domains work?
Yes. Emoji are ordinary Unicode code points to the algorithm, so 💩.la converts to xn--ls8h.la and back. Whether a registry actually accepts emoji domains is up to the individual TLD.
Is my text uploaded anywhere?
No. The RFC 3492 algorithm runs entirely in your browser and nothing you paste leaves your device — safe for internal hostnames and unpublished domain lists.