Categories
Punycode Converter
Convert internationalized domain names (IDN) to and from Punycode.
Overview
Converts an internationalized domain name (IDN) containing Japanese text, emoji, or similar into Punycode notation (starting with xn--), which uses only ASCII characters, or does the reverse.
Each dot-separated label (subdomain part) is converted individually, so you can enter a full domain, such as example.co.jp, as-is.
Since DNS can only handle ASCII characters, domain names containing non-ASCII characters are internally managed in Punycode format. This tool reproduces that conversion rule in your browser.
Usage
- 1
Enter a domain name into the input field.
- 2
Click "Convert to Punycode" or "Convert to Unicode".
- 3
The result is displayed below.
Example
Input
ๆฅๆฌ่ช.jp
Output
xn--wgv71a119e.jp
Use Cases
Checking the Punycode notation that will actually be registered in DNS before acquiring or configuring a Japanese domain
Converting an xn-- domain shown in a browser's address bar or server log back into its actual domain name (such as Japanese text)
Verifying that conversion results match the specification while implementing or debugging a system that handles internationalized domain names
FAQ
What happens if I "Convert to Unicode" a string that doesn't start with "xn--"?
A label that already consists only of ASCII characters is returned unchanged.
Can I enter a full domain name (e.g. example.co.jp)?
Yes. Each dot-separated label is converted only where necessary.
What happens if I enter an invalid Punycode string?
An error message is shown if it cannot be decoded.
Notes
If you "Convert to Unicode" a label that already consists only of ASCII characters, that label is returned unchanged.
Conversion is applied per dot-separated label, so you can enter a full domain, including subdomains, as-is.
Entering a malformed Punycode string (one that cannot be decoded) results in an error.
Related Tools
Break a URL down into its individual components.
Escape and unescape non-ASCII characters using \uXXXX notation.
Encode and decode text to and from URL encoding.