CalculatorsConvertersDeveloperTextAll toolsDirectory
Submit your tool Sign in
Theme
Home/Answers/Security
How-to

How do I convert an international domain name to punycode?

Short answer

Domains with non-ASCII characters are stored in DNS as punycode: an ASCII encoding that starts with xn--, so münchen.example becomes xn--mnchen-3ya.example. Converting a display name to punycode shows the form DNS and registrars actually use, and converting back reveals what an xn-- domain really displays as. A browser-based punycode converter does both directions offline on your own device.

Two names for the same domain

DNS only carries ASCII, so internationalized domain names live a double life: the unicode form people see and type, and the punycode form starting with xn-- that resolvers, registrars and certificates operate on. Whenever you register, configure DNS for, or debug an internationalized domain, you need the punycode form, and a converter translates between the two instantly using the browser's own URL machinery.

The security angle: lookalike domains

Unicode includes characters from many scripts that render almost identically to Latin letters, which means two visually identical-looking domains can be entirely different names, a trick used in phishing. Converting a suspicious link's domain to punycode exposes its true ASCII form: a domain that looks like a familiar brand but converts to an xn-- string is not the domain it appears to be. To isolate the domain from a full link first, a local URL parser splits the link into protocol, host and path. Both checks run entirely offline in your browser, so the link you are inspecting is never sent anywhere.

Step by step

  1. Paste the domain. Open the punycode converter and paste the unicode domain, or an xn-- domain to decode.
  2. Convert. See the punycode form of a unicode name, or the displayed form of a punycode name.
  3. Use or verify it. Use the xn-- form in DNS and registrar settings, or compare the decoded form against the domain you expected.

Frequently asked questions

What does xn-- mean at the start of a domain?

It marks a punycode-encoded label, meaning the domain contains non-ASCII characters in its display form.

Why check a suspicious link with punycode?

Lookalike unicode characters can make a phishing domain appear identical to a real brand. The punycode form reveals the actual registered name.

Does the conversion need a network connection?

No. It uses the browser's built-in URL engine and runs fully offline once the page is loaded.

Related answers