Punycode Converter
Convert internationalised domain names to Punycode (xn--) and back, including full URLs and email addresses, one per line.
This guide is not yet available in your language and is shown in English.
Tool guide
What this tool does
Punycode Converter translates domain names containing non-ASCII characters, such as münchen.de, into the ASCII “xn--” form used by DNS, and decodes xn-- labels back to readable Unicode. It implements RFC 3492 directly, processes many lines at once and keeps the scheme, path and user part of URLs and email addresses intact.
The Domain Name System only understands the letters a-z, digits and hyphens, yet domains such as bücher.example, δοκιμή.gr or 中国.cn are registered every day. Internationalised Domain Names in Applications (IDNA) bridge that gap: each label containing other characters is converted with the Punycode algorithm from RFC 3492 and given the prefix “xn--”. Browsers show the friendly form, but DNS records, TLS certificates, server configs and logs contain the ASCII form, so you often need to convert in both directions.
This converter encodes and decodes each dot-separated label separately, exactly as IDNA requires, and leaves pure-ASCII labels alone. Paste a whole list, one item per line: the mode can detect the direction for each line, and URLs keep their scheme, path and query while only the host is converted. Email addresses keep the part before “@”. Encoding normalises the label to Unicode NFC and lowercases it, and the tool warns when an encoded label would exceed the 63-character DNS limit. Raw modes encode and decode Punycode without the prefix. Nothing leaves your device.
How to use Punycode Converter
- Paste domains, URLs or email addresses into the Input box, one per line, or click Sample.
- Leave Mode on “Detect per line”, or choose a fixed direction.
- Keep “Lowercase and normalise (NFC) before encoding” switched on for domain names.
- Use the raw Punycode modes only when you need the algorithm output without “xn--”.
- Copy or download the converted list.
Tips for better results
- münchen.de becomes xn--mnchen-3ya.de; only the label with non-ASCII characters changes.
- Use the xn-- form in DNS zone files, web server configuration such as nginx server_name, and certificate requests.
- Ideographic full stops (。) used in Chinese and Japanese text are treated as dots, as IDNA specifies.
- Look-alike domains such as аpple.com with a Cyrillic “а” show their xn-- form here, which helps spot phishing.
Common use cases
- Adding an internationalised domain to a DNS zone or hosting control panel.
- Reading xn-- hostnames that appear in server logs or analytics reports.
- Checking whether a suspicious link uses look-alike Unicode characters.
- Preparing a list of IDN domains for a certificate signing request.
Common mistakes to avoid
- Encoding the whole domain as one string, which converts the dots too. Labels must be converted separately.
- Leaving upper-case letters in an IDN label; IDNA expects lowercase, and mixed case can produce a different xn-- form.
- Assuming every valid Punycode label is a registrable domain. Registries add their own rules about allowed scripts and characters.
Frequently asked questions
What does the xn-- prefix mean?
It is the ACE (ASCII Compatible Encoding) prefix defined by IDNA. It tells software that the rest of the label is Punycode that should be shown as Unicode.
Does this implement full IDNA 2008 validation?
It performs the Punycode conversion, NFC normalisation and lowercasing, and checks label length. It does not enforce every IDNA 2008 rule about disallowed code points or bidirectional text, which registries check when you register a name.
Can I convert email addresses?
Yes. Only the domain after the “@” is converted; the local part is left as typed.
Feedback & suggestions
Help us improve Punycode Converter. We read every message.