SupperTools

Useful Online Tools & Utilities to Make Everyday Tasks Easier.

Punycode to Unicode Converter for International Domain Names

Decode punycode domain names such as xn--mnchen-3ya back into readable Unicode text, so internationalised domains can be read and checked easily.

Domain names were designed around plain ASCII letters, yet the web's users write in hundreds of scripts. The bridge between the two is punycode, the encoding that turns a name like münchen.de into the ASCII form xn--mnchen-3ya.de that the DNS actually stores. The Punycode to Unicode converter walks back across that bridge, decoding punycode strings into the readable international characters they represent.

Why Domain Names Need Punycode

The domain name system predates the global web and accepts only letters, digits and hyphens. Internationalised domain names (IDNs) solve the mismatch by encoding Unicode text with an algorithm defined in RFC 3492: the Unicode label is analysed, its non ASCII characters are compressed and encoded, and the result is prefixed with xn-- to signal that decoding is needed. Browsers do this silently, showing you the friendly name while quietly registering and resolving the encoded one.

The encoded forms surface in real work more often than you might expect: in DNS records and zone files, in server and SSL configuration, in analytics and log files, in WHOIS results, and in links pasted from emails or documents where the encoding was never decoded for display. At that point you need to read them, and strings like xn--bcher-kva are not readable by eye.

What the Punycode to Unicode Converter Does

  • Decodes any punycode label or full domain back into its original Unicode characters, accents, umlauts, Cyrillic, CJK and all.
  • Handles the xn-- prefix correctly, the marker that distinguishes an encoded label from ordinary ASCII text.
  • Produces a result you can copy with the Copy button, ready to paste into a document, ticket or report.
  • Works in the opposite direction too when paired with its sibling tool: encode fresh names with the Unicode to Punycode converter.

How to Decode a Punycode Domain

  1. Copy the punycode text exactly as you found it, for example xn--mnchen-3ya.de from a DNS record or certificate.
  2. Paste it into the converter's input field, keeping the xn-- prefix in place.
  3. Click Convert to decode the string.
  4. Read the Unicode result: the example above becomes münchen.de, the German city of Munich.
  5. Click Copy if you need the decoded name elsewhere, for instance in a support reply explaining what a domain really says.
  6. For a full domain with several labels, decode it as one string; only the labels carrying the xn-- prefix are encoded.

Worked Example: From xn-- to a Readable Domain

Take the domain xn--bcher-kva.example, a classic test case. The label bcher contains the plain ASCII letters of the word, while the suffix after the hyphen, kva, encodes the missing ü and its position. Decoding restores bücher.example, the German word for "books". Nothing about the ASCII form hints at the ü, which is precisely why a converter is needed rather than intuition.

The encoding is not limited to letters, either. The domain xn--n3h.net decodes to a single snowman character followed by .net, a well known demonstration that symbols as well as scripts pass through punycode, and a reminder that an innocent looking xn-- string can hide almost anything.

A second real world case: an analytics report lists traffic to xn--mnchen-3ya.de. Before acting on the data, decoding confirms the visitors were on münchen.de and not on some lookalike string. If you regularly audit domains, the IDN Punycode Detector helps flag which names in a list are internationalised in the first place.

Tips for Checking Domains Safely

Decode before you trust. Punycode is a favourite tool of phishing because an encoded label can decode to characters that imitate a famous brand in another script, a homograph attack. Decoding a suspicious domain and reading its true characters is a quick, meaningful check, though it does not replace checking where a link actually leads.

Copy, do not retype. A single wrong character in the encoded suffix changes the decoded output or breaks it entirely. The commonest practical mistake is transcribing xn-- strings by hand from a screenshot.

Remember the prefix belongs to each label. In a name like xn--mnchen-3ya.example.com, only the first label is encoded. Expecting the whole string to transform at once leads to confusion when subdomains stay as they are.

Know the limit of decoding. The converter reveals what an encoded name says, not who owns it or whether it is safe. Ownership questions belong to WHOIS, and safety questions to your security tooling.

Frequently Asked Questions About Punycode

What does the xn-- prefix mean?

It marks an ASCII label as punycode encoded under the IDNA standard. When a browser sees it, it knows to decode the rest of the label into Unicode for display.

Is punycode the same as URL encoding?

No. Percent encoding (like %C3%BC) escapes bytes inside URLs, while punycode is a specific algorithm for squeezing Unicode domain labels into the restricted DNS character set.

Why do I see punycode in certificates and DNS records?

Because the underlying systems store the ASCII encoded form. The friendly Unicode name is a display layer that browsers add, so technical records show the encoded original.

Can any language be decoded this way?

Yes. Punycode handles the whole Unicode range, so accented Latin, Greek, Cyrillic, Arabic, Chinese and other scripts all round trip through the same encoding.

What happens if I enter plain text without the xn-- prefix?

Ordinary ASCII text has nothing to decode, so it passes through essentially unchanged. The prefix is what tells the converter a label is encoded.

How can I create a punycode domain from Unicode text?

Use the reverse converter, Unicode to Punycode, which produces the xn-- form you would register or enter into DNS and server configuration.

Read International Domains at a Glance

Punycode keeps the global web's names working inside a restricted old system, but it hides their meaning from human readers. This converter restores that meaning in one click, whether you are auditing DNS records, checking a suspicious link or simply curious what an xn-- name really says.

Related Tools