IDN converter
Maps the name with UTS 46 and checks every label with IDNA2008 (RFC 5891-5893): disallowed characters, hyphen, context and bidi rules, lengths, and letters from mixed scripts in one label, a homograph risk. Returns both forms per label. Nothing is looked up.
Updated 2026-10-27
What this tool checks
The name is mapped with UTS 46 (case folding, full-width dots and similar), and each label is checked with IDNA2008 (RFC 5891 to 5893):
- Characters: code points that IDNA2008 disallows, such as
_or symbols. - Rules: hyphens at the start, the end or in positions 3 and 4, context rules for joiners, and the bidi rule for right-to-left text.
- Lengths: 63 octets per label and 253 for the whole name in ASCII form.
- Scripts: the scripts of the letters in each label, for the homograph check.
How to read the result
A valid name shows its ASCII and Unicode forms and a row per label. An invalid one has IDN_INVALID with the label and the reason. A plain ASCII name gets IDN_NOT_IDN: there is nothing to convert.
Limitations
- The script of a letter is taken from its Unicode name, which covers the common scripts but not every rule of UTS 39.
- Nothing is looked up: a valid name does not have to exist in DNS.
Use it from code
API reference for IDN converter
curl -i "https://api.lookproof.dev/v1/dns/idn?name=b%C3%BCcher.example.com"A request without payment is answered with 402 Payment Required and the exact price. See the API reference.
Limits
| Input | Domain name (Unicode or ASCII) |
|---|---|
| Deadline | 2 seconds |
| Freshness | Computed from the input; nothing is looked up |
| Price | $0.002 per check |
Findings this tool can report
Internationalised names (3)
- Error
IDN_INVALIDThe name is not a valid internationalised domain name. - Warning
IDN_MIXED_SCRIPTA label mixes letters from different scripts, a homograph risk. - Info
IDN_NOT_IDNThe name is plain ASCII and has no internationalised labels.
Frequently asked questions
What is punycode?
DNS only carries ASCII. An internationalised label such as bücher is stored as an A-label, xn--bcher-kva, made with the Punycode algorithm of RFC 3492. The tool converts in both directions.
Why is straße not turned into strasse?
That was the transitional mapping of IDNA2003. The tool follows IDNA2008 with UTS 46 non-transitional mapping, as current browsers and registries do, so straße keeps its sharp s.
What is a mixed-script warning?
IDN_MIXED_SCRIPT means one label has letters from more than one script, such as a Cyrillic letter among Latin ones. That is how look-alike domains are made. Mixes that are normal for Japanese, Chinese and Korean are not reported.