Punycode IDN Converter
Convert online IDN hostnames between Unicode and Punycode, audit labels and wire limits, and prepare safer DNS paste forms for security review.{{ result.summaryTitle }}
| Section | Item | Value | Detail | Copy |
|---|---|---|---|---|
| {{ row.section }} | {{ row.item }} | {{ row.value }} | {{ row.detail }} |
| # | Label class | Input label | Unicode view | ASCII view | Len A/U | Review | Copy |
|---|---|---|---|---|---|---|---|
| {{ row.index }} |
{{ row.labelKind }}
{{ row.scriptProfile }}
|
{{ row.inputLabel }} | {{ row.unicodeLabel }} | {{ row.asciiLabel }} | {{ row.asciiLength }} / {{ row.unicodeLength }} |
{{ row.reviewStatus }}
{{ row.review }}
|
| Section | Item | Status | Value | Detail | Copy |
|---|---|---|---|---|---|
| {{ row.section }} | {{ row.item }} | {{ row.status }} | {{ row.value }} | {{ row.detail }} |
| Section | Item | Status | Value | Detail | Copy |
|---|---|---|---|---|---|
| {{ row.section }} | {{ row.item }} | {{ row.status }} | {{ row.value }} | {{ row.detail }} |
By copying or publishing this embed code, you are responsible for how the tool appears and is used on your website.
- The embedded tool is provided for general informational and utility purposes only. It is not professional, legal, financial, medical, safety, or compliance advice.
- Results depend on the inputs, browser behavior, available data sources, and the current version of the tool. Review important results before relying on them.
- You are responsible for the surrounding page context, labels, instructions, privacy notices, accessibility, and any laws or policies that apply to your website.
- Do not embed the tool in a misleading, unlawful, harmful, or security-sensitive context.
- Simplified Tools may update, limit, suspend, or remove tools and embed behavior without prior notice.
- Analytics, network requests, cookies, browser storage, third-party services, and query parameters may apply depending on the tool and the embedding page.
If these terms do not work for your use case, do not embed the tool.
Internationalized domain names let people use non-ASCII characters in hostnames, but DNS still needs an ASCII-safe representation. Punycode is the encoding used inside IDNA labels such as xn--bcher-kva, while the readable form may contain characters such as ü, Greek letters, Arabic text, or other scripts.
Conversion is not only a matter of swapping one string for another. A hostname can arrive inside a URL or email address, use alternate dot separators, include a trailing root dot, or contain characters that look alike across scripts. Those details affect whether the result is suitable for a zone file, allowlist, certificate review, or user-facing safety check.
The converter handles Unicode-to-ASCII, ASCII-to-Unicode, and auto-detection. It audits labels, code points, script mix, hostname length, wire length, trailing-dot handling, URL parser behavior, and paste-ready outputs.
That extra audit is important because a domain can be syntactically convertible while still being unsuitable for a particular use. Registries may apply script and language policies, browsers may display the ASCII form for safety, and security teams may prefer ASCII lists even when end users see the Unicode spelling.
Technical Details:
IDNA uses U-labels for the Unicode form and A-labels for the DNS-compatible ASCII form. A Punycode A-label begins with the xn-- prefix. Each DNS label still has the practical 63-octet label limit, and a full domain name must stay within DNS length limits after conversion.
| Check | Why it matters |
|---|---|
| Normalization preview | NFC, NFD, NFKC, and NFKD can change composed characters, compatibility characters, and comparison output. |
| Alternate dot separators | Some Unicode dot characters visually separate labels and need careful review before DNS use. |
| Script audit | Mixed scripts and lookalike characters can create spoofing risk in user-facing hostnames. |
| Wire budget | Punycode can lengthen a label enough to exceed DNS label or host limits. |
| Wrapper extraction | URL or email inputs can be reduced to the host before conversion when that mode is selected. |
The conversion path is best read as a mapping plus an audit. The mapped output answers what to paste; the audit explains whether the label shape deserves review before publication or policy use.
The tool relies on the browser-side Punycode library for the encoding step and adds host parsing, normalization preview, script classification, length checks, and paste-route guidance around it.
Everyday Use & Decision Guide:
Use auto-detect when you are not sure which direction is needed. Use Unicode to Punycode before editing DNS, certificate subject names, security controls, or systems that require ASCII hostnames. Use Punycode to Unicode when reviewing an xn-- hostname that may be shown to users.
- Choose strict hostname mode when the input is already a domain name and should not be altered by URL extraction.
- Choose wrapper extraction for copied URLs or email addresses where only the host is relevant.
- Preserve a trailing dot only for absolute DNS names in zone files or resolver tests.
- Prefer lowercase ASCII for DNS review unless a workflow explicitly wants returned casing preserved.
- Investigate mixed-script and lookalike warnings before using a converted hostname in trust decisions.
Normalization can be helpful when pasted text contains compatibility characters, but it should be used deliberately. If changing normalization changes the output, compare both forms before updating DNS or security policy.
Step-by-Step Guide:
- Paste the hostname, URL, email-like input, or xn-- label.
- Pick a direction or leave auto-detect enabled.
- Use Advanced to choose cleanup, normalization preview, trailing-dot handling, and ASCII casing.
- Review the conversion result first, then inspect the label audit and wire review rows.
- Copy the paste-route output that matches your destination, such as DNS, a policy list, or a human review note.
Interpreting Results:
A clean conversion means the labels can be mapped between Unicode and ASCII form under the selected settings. It does not mean the domain is registered, safe, trusted, or acceptable to every registry.
Length warnings matter after conversion because Punycode expansion can make a short-looking Unicode label too long for DNS. Script warnings matter because a hostname can be technically valid while still confusing to users.
URL parser differences are review clues. If the browser parser sees a different host than the strict conversion path, use the audit rows before copying the result into policy.
Worked Examples:
Readable German label. bücher.example converts to xn--bcher-kva.example. That ASCII form is the value to use in DNS-facing systems, while the Unicode form is easier for a person to recognize.
FQDN review. xn--caf-dma.example. converts back to café.example. when trailing-dot preservation is enabled. The final dot is useful for absolute DNS notation but should not be casually pasted into every web form.
Compatibility character case. A stylized hostname such as ℌ𝔢𝔩𝔩𝔬.com can map differently under compatibility normalization. That is a reason to pause, not a reason to assume the normalized form is safe.
FAQ:
Is Punycode the same as URL percent encoding? No. Punycode encodes domain labels for DNS. Percent encoding encodes characters inside URLs.
Does an xn-- label always mean danger? No. Many legitimate internationalized domains use xn-- labels. Review is needed because the form can also hide lookalike text from casual readers.
Can every Unicode string become a valid domain? No. IDNA and registry policies restrict labels, length, script use, and context-specific characters.
Glossary:
- IDN
- Internationalized domain name, a domain that can contain non-ASCII characters in its readable form.
- A-label
- The ASCII-compatible xn-- label used by DNS.
- U-label
- The Unicode label displayed to people.
- Normalization
- Unicode transformation that can combine, decompose, or compatibility-map characters.