Advance Text / IDN to Punycode Converter

Bi-directional converter for Internationalized Domain Names (IDN) and Punycode formats.

This Tool is Totally Free

Supports both Unicode (International) and Punycode (ASCII) formats

What is IDN and Punycode?

Internationalized Domain Names (IDNs) are domain names that contain characters from non-Latin scripts (like Arabic, Chinese, Cyrillic) or Latin format with diacritics (like German umlauts 'ü', Spanish 'ñ').

Punycode is a way to represent these Unicode characters using only the limited ASCII character set (A-Z, 0-9, hyphens) supported by the Domain Name System (DNS). Punycode domains always start with the prefix xn--. For example, the domain münchen.de becomes xn--mnchen-3ya.de in Punycode.

Why Use This Converter?

  • DNS Compatibility: Most DNS servers only understand ASCII. To register or configure an international domain, you often need its Punycode equivalent.
  • Email Configuration: Setting up email servers for IDNs often requires the Punycode version of the domain in configuration files.
  • Verification: Verify that a Punycode string decodes to the correct domain name to avoid phishing attacks (homograph attacks).

How to Convert IDN/Punycode

  1. Enter Input: Type or paste your domain name in the input box above. You can enter a standard Unicode domain (e.g., bücher.example) or a Punycode string (e.g., xn--bcher-kva.example).
  2. Convert: Click the "Convert Now" button. Our tool automatically detects the input format.
  3. View Results: Instantly see both the Unicode and Punycode versions of your domain.
  4. Copy: Use the copy button to grab the format you need for your configuration.

Frequently Asked Questions

What is the 'xn--' prefix in domain names?
The 'xn--' prefix is known as the ACE (ASCII-Compatible Encoding) prefix. It indicates that the domain name is an Internationalized Domain Name (IDN) encoded in Punycode. This prefix allows existing DNS infrastructure, which only supports ASCII characters, to resolve domains containing non-Latin characters (like é, ñ, or Chinese characters).
Why do I need to convert IDN to Punycode?
You need to convert IDN to Punycode for DNS compatibility. Most Domain Name System (DNS) servers and email servers only understand ASCII characters (A-Z, 0-9, hyphen). If you want to register, host, or configure email for a domain with special characters (e.g., münchen.de), you must use its Punycode equivalent (e.g., xn--mnchen-3ya.de) in your server configuration files.
What is the maximum length of a Punycode label?
A single Punycode label (the part between dots in a domain name) cannot exceed 63 characters. This limit is imposed by the DNS protocol itself (RFC 1035). If your IDN converts to a Punycode string longer than 63 characters, it is invalid and cannot be registered as a standard domain name.
What is the difference between IDNA2003 and IDNA2008?
IDNA2003 and IDNA2008 are standards for handling IDNs. IDNA2003 was the original standard, while IDNA2008 is the newer, stricter revision. A key difference is how they handle symbols; for example, 'ß' (German sharp S) is converted to 'ss' in IDNA2003 but remains 'ß' in IDNA2008 (if supported). Modern browsers and registries generally prefer IDNA2008, but legacy systems may still use IDNA2003.
Can I convert Emoji domains to Punycode?
Yes, Emoji domains are technically IDNs. Since emojis are Unicode characters, they can be converted to Punycode. For example, '❤️.com' converts to 'xn--q9j.com'. However, distinct top-level domains (TLDs) have different policies regarding emoji registration, so you should check with your registrar first.
How to fix 'The punycode module is deprecated' error in Node.js?
This warning (DEP0040) appears because the core 'punycode' module in Node.js v21+ is deprecated. To fix this, you should switch to a userland library like 'punycode.js' or use the modern 'whatwg-url' API which handles domain parsing and IDN conversion natively suitable for modern web development.
Is Punycode case-sensitive?
No, Punycode is not case-sensitive. Domain names in the DNS are case-insensitive. While the Punycode encoding process itself outputs lowercase letters by convention, 'xn--EXAMPLE-1NA' and 'xn--example-1na' resolve to the same domain. Best practice is to always use lowercase for consistency.
What are Homograph Attacks related to IDN?
An IDN Homograph Attack is a deception technique where an attacker uses characters that look alike (homoglyphs) to spoof a domain. For instance, using a Cyrillic 'a' instead of a Latin 'a' to create a fake 'apple.com'. Punycode helps identify these attacks because the fake domain will have a completely different Punycode string (e.g., xn--pple-43d.com) compared to the real one.

Did you know?

The "xn--" prefix is called the ACE prefix (ASCII Compatible Encoding). It signals to applications that the following string is a Punycode-encoded Unicode domain.