Use our free Punycode converter online to instantly convert Unicode to Punycode for DNS setup, or decode Punycode to Unicode to reveal the real name behind xn-- prefix domains. This IDN to ASCII converter supports internationalized domain name conversion for Arabic, Chinese, Cyrillic, and all non-Latin scripts. Built as a professional online ACE (ASCII Compatible Encoding) tool with batch conversion, homograph phishing attack detection, script identification, and full IDNA2008 / RFC 3492 Bootstring algorithm compliance. The best Punycode converter for developers and sysadmins.
Quick Answer: What Is Punycode?
Punycode converts Unicode domain names (münchen.de, 中文.com) into ASCII-safe strings (xn--mnchen-3ya.de) using the Bootstring algorithm (RFC 3492). DNS only supports the LDH subset (Letters, Digits, Hyphens), so internationalized domain names must be encoded. The xn-- prefix signals a Punycode-encoded label. Our Punycode converter online handles ToASCII and ToUnicode conversion, batch processing, and homograph phishing detection.
Enter a Unicode domain or xn-- Punycode domain. Auto-detects direction.

OSINT & Network Utility Expert
Robert specializes in DNS management, domain forensics, internationalized domain names, and network security. He helps organizations detect homograph phishing attacks and configure IDN domains correctly across DNS infrastructure.
View All ArticlesThe Domain Name System (DNS) was built in the 1980s using only the LDH (Letter-Digit-Hyphen) subset — the 26 English letters, digits 0-9, and the hyphen. When the global internet needed support for Arabic (العربية), Chinese (中文), Cyrillic (кириллица), and other scripts, engineers created Punycode — an ASCII Compatible Encoding (ACE) defined in RFC 3492 that converts any Unicode string into a valid DNS label.
Our Punycode converter online performs the ToASCII conversion (Unicode → Punycode) and ToUnicode conversion (Punycode → Unicode) following the IDNA2008 standard. When you enter münchen.de, DNS cannot process the ü character, so Punycode encodes it as xn--mnchen-3ya.de. The xn-- prefix is a permanent marker that tells software: "this label contains encoded Unicode."
RFC 3492: The Bootstring algorithm efficiently encodes Unicode codepoints as ASCII by first isolating all ASCII characters, then appending delta-encoded non-ASCII positions. This keeps Punycode domains short — critical for DNS label length limits (63 characters per label).
The Bootstring algorithm behind Punycode is mathematically elegant. Unlike Base64 which uniformly expands data by 33%, Bootstring adapts to the input — simple domains with one non-ASCII character produce short output. The process works in three steps:
// Punycode conversion example
Input: münchen.de
Step 1: mnchen (ASCII) + separator hyphen
Step 2: ü (U+00FC) → delta encoded
Step 3: mnchen-3ya (Punycode label)
Output: xn--mnchen-3ya.de
Verify DNS records for Punycode domains with our DNS Lookup and check domain registration with WHOIS Lookup.
Our internationalized domain name converter handles every Unicode script supported by DNS. The IDNA2008 standard defines which characters are valid in domain labels. Here are the most common non-Latin script domains and their Punycode equivalents:
| Script | Unicode Domain | Punycode | TLD Support |
|---|---|---|---|
| Arabic | مثال.com | xn--mgbh0fb.com | .com, .sa, .ae |
| Chinese | 中文.com | xn--fiq228c.com | .com, .cn, .中国 |
| Cyrillic | пример.com | xn--e1afmapc.com | .com, .ru, .рф |
| Latin Extended | münchen.de | xn--mnchen-3ya.de | All TLDs |
| Emoji | ❤.ws | xn--qei.ws | .ws, .to, .fm |
Emoji Domains: Only select TLDs (.ws, .to, .fm) support emoji domain registration. Convert your emoji to Punycode first, then register the xn-- version with a compatible registrar. Most browsers display emoji domains in raw Punycode form for security.
A homograph phishing attack exploits the visual similarity between characters from different scripts. The Cyrillic 'а' (U+0430) looks identical to the Latin 'a' (U+0061) but has a different Unicode codepoint. Attackers register domains like xn--pple-43d.com which renders as аpple.com — visually indistinguishable from the real Apple website.
// Homograph attack example
Real domain: apple.com (all Latin characters)
Fake domain: аpple.com (Cyrillic 'а' + Latin 'pple')
Punycode: xn--pple-43d.com (reveals the deception)
// Our detector flags: Mixed Latin + Cyrillic = HIGH RISK
Our homograph detector checks for mixed-script usage, brand name resemblance, and suspicious patterns. Modern browser rendering behavior in Chrome and Firefox now shows Punycode warnings when domains mix scripts — displaying the raw xn-- string instead of the Unicode rendering. Verify suspicious domains with our IP Fraud Checker and check SSL certificates with our SSL Checker.
Security Alert: Always decode xn-- prefix domains before clicking links in emails. Our free tool to check if a link is a Punycode phishing attack reveals the true Unicode name. If the decoded name mixes scripts, it is likely malicious. Read our IP reputation guide for additional protection.
If your internationalized domain displays as xn--... instead of the Unicode version, the browser's anti-phishing system may be blocking Unicode rendering. Browsers use mixed-script detection: if a domain label contains characters from two different scripts (e.g., Latin + Cyrillic), the browser shows the Punycode form as a security warning.
Use characters from a single script consistently. Register domains using the complete script (e.g., all Cyrillic, all Arabic). Avoid mixing Latin characters with non-Latin ones. Check your domain headers with our Headers Analyzer and verify DNS configuration with our DNS Lookup.
When configuring DNS records, SSL certificates, or firewall rules for internationalized domain names, you must use the Punycode (ASCII) form. DNS servers, BIND zone files, and most CDN configurations do not accept Unicode directly. Our IDN to ASCII converter gives you the exact xn-- string to use.
# DNS zone file: Use Punycode, not Unicode
# WRONG — DNS will reject this:
münchen.de. IN A 93.184.216.34
# CORRECT — Use Punycode form:
xn--mnchen-3ya.de. IN A 93.184.216.34
The same applies to SSL certificate requests — Certificate Authorities require the Punycode domain. Check certificate configuration with our SSL Checker. For email deliverability on IDN domains, verify with our Email Verifier and check for temporary email abuse with our Temp Email Checker.
Sysadmin Tip: When fixing "Invalid Domain Name" errors, the cause is almost always using Unicode instead of Punycode in server configuration. Convert with our tool, use the xn-- form in configs, and the error resolves instantly.
The IDNA (Internationalized Domain Names in Applications) standard has two major versions. IDNA2003 automatically mapped some characters (e.g., ß → ss in German) which caused confusion. IDNA2008 (current) removed automatic mapping, treats characters more strictly, and improved security against homograph attacks.
Our Punycode converter online uses PHP's intl extension with INTL_IDNA_VARIANT_UTS46 flag, ensuring IDNA2008 compliance with backward compatibility. Verify domain ownership with our WHOIS Lookup. Read our digital footprint guide for privacy.
After high-profile homograph phishing attacks, major browsers implemented Punycode warnings. When a domain contains characters from multiple scripts, browsers display the raw xn-- form instead of the Unicode rendering. This browser rendering behavior is a key defense against visual spoofing.
Chrome uses an allowlist of safe script combinations. If a domain mixes Latin with Cyrillic (a common attack vector), Chrome shows Punycode. Single-script domains (all Cyrillic, all Arabic) render normally in Unicode.
Firefox has a configurable network.IDN_show_punycode flag. Set it to true to always see the raw Punycode — useful for security professionals. Check your browser's security posture with our Browser Info Tool. Scan for open ports on your network with our Port Scanner.
For Security Teams: Configure your organization's browsers to show Punycode for all non-ASCII domains. This eliminates homograph attacks entirely at the display level. Combine with our IP Fraud Checker for comprehensive phishing detection.
IDN domains create compatibility challenges beyond web browsing. Many legacy mail servers cannot handle Unicode email addresses. When sending to addresses on IDN domains, the mail system must use the Punycode form (user@xn--mnchen-3ya.de). Verify email deliverability with our Email Verifier.
SSL/TLS certificates require Punycode in the Common Name (CN) or Subject Alternative Name (SAN) fields. A certificate for münchen.de must list xn--mnchen-3ya.de. Mismatched certificates cause browser security warnings. Audit certificates with our SSL Checker.
In cloud infrastructure (AWS, Azure, GCP), firewall rules, load balancer configs, and CDN origins must use Punycode for IDN domains. Using Unicode directly causes "Invalid Domain Name" errors. Read our guide on fixing 550 RBL errors and IP reputation for bulk email.
xn-- ASCII output for DNS zone files, SSL certificates, and server configs.xn-- domains, decode with our Punycode to Unicode decoder to see the real name.Pro Tip: Bookmark our xn-- prefix lookup tool for daily use. Whenever you encounter an unknown Punycode domain in logs, emails, or security alerts, decode it immediately. Read our cold emailing 2026 guide for domain reputation best practices.
A Punycode converter online translates internationalized domain names between Unicode (human-readable) and ASCII (xn-- Punycode) formats. Our tool auto-detects direction, supports batch conversion, and includes homograph phishing detection.
Browsers display the xn-- prefix when a domain mixes scripts (Latin + Cyrillic) as a Punycode warning against homograph phishing. Single-script IDN domains render normally. Use our Punycode to Unicode decoder to see the real name.
Our homograph detector checks for mixed scripts (Cyrillic vs Latin), brand name resemblance, and visual spoofing patterns. Always decode xn-- domains before trusting links. Look-alike domains are the #1 vector for credential theft.
Convert emoji to Punycode with our tool, then register the xn-- form. Only .ws, .to, .fm TLDs support emoji domain registration. Browsers show emoji domains in Punycode. Use our tool to verify the correct encoding.
Fixing Invalid Domain Name errors requires converting the Unicode domain to Punycode. DNS records, SSL configs, and server software need the xn-- ASCII form. Our IDN to ASCII converter gives you the exact string.
IDNA2008 is stricter: no automatic character mapping, better security, and more scripts supported. IDNA2003 (deprecated) auto-mapped characters like ß → ss. Our tool uses IDNA2008 with UTS46 compatibility for accuracy.
Yes. Our batch tab converts up to 50 domains simultaneously. Enter one domain per line — the tool auto-detects whether each needs encoding or decoding. Essential for migration projects and DNS compatibility audits.
No. IP addresses (IPv4 and IPv6) are numeric. Punycode only applies to domain name labels — the human-readable strings that DNS resolves to IP addresses. IPs never need Punycode conversion.
Complete your domain security audit.
Our Punycode converter online handles Unicode↔ASCII conversion, batch processing, homograph detection, and script identification. IDNA2008 compliant. The best Punycode converter for developers and sysadmins.