🌐 Punycode Converter
Convert domains and text between Unicode and Punycode (ASCII, xn--). Automatically flags suspicious domains with mixed scripts.
Domains, URLs, or text (one per line)
0
Lines
0
→ Punycode
0
→ Unicode
0
⚠ Suspicious
Result
Enter a domain or text above to see the result
Punycode Converter Online
A free tool for converting domain names and text between Unicode and Punycode — the ASCII encoding with the xn-- prefix used for internationalized domain names (IDN). It automatically detects the conversion direction and warns about mixed scripts in a domain, the main sign of a homograph attack.
What the converter does
Unicode → Punycode
Encodes any text or domain with non-Latin characters (Cyrillic, diacritics, ideographs) into the ASCII-compatible xn-- format that DNS understands.
café.fr → xn--caf-dma.fr
Punycode → Unicode
Decodes an xn-- domain back into readable Unicode — exactly how your browser’s address bar displays it.
xn--80ak6aa92e.com → аррӏе.com
Homograph attack detection
Checks each domain label for mixed scripts (for example, a Cyrillic “a” among Latin letters) and flags suspicious results.
аpple.com ⚠ Cyrillic + Latin
When this is useful
- Checking a suspicious link before clicking it
- Decoding an xn-- domain shown by your browser or email client
- Registering or configuring DNS for a domain with national characters
- Auditing a list of domains for phishing or homograph attacks
- Setting up SSL certificates for IDN domains
- Learning and researching how Punycode/IDNA works
How to use it
- Paste one or more domains or lines of text (one per line)
- The tool automatically detects the direction: encode or decode
- Check the result and the ⚠ marks for suspicious mixed-script domains
- Copy the result with the “⎘” button
Frequently asked questions
What is Punycode?
Punycode is a way of encoding Unicode characters into a limited ASCII character set (a-z, 0-9, hyphen) used to represent internationalized domain names (IDN) in the DNS. Every encoded label starts with the “xn--” prefix.
What is a homograph attack?
It’s a type of phishing where an attacker registers a domain that looks identical to a legitimate one but is made of characters from a different alphabet (for example, a Cyrillic “a” instead of a Latin one). Browsers display the Unicode version, so the swap is almost impossible to spot by eye.
Why does my browser show “аpple.com” instead of “xn--...”?
Modern browsers automatically decode Punycode back into Unicode for readability — which is exactly what attackers rely on in homograph attacks, banking on how visually similar the characters look.
Can I encode more than just domains?
Yes, the Punycode algorithm technically works on any string of Unicode characters, though its most common use is domain names.
Is my input stored anywhere?
No. All conversion happens locally in your browser using JavaScript. Your text is never sent to a server.