#493 · Developer Tool

Punycode Decoder

Decode xn-- domain labels into readable Unicode while preserving the surrounding hostname. Processing happens label by label, so ordinary ASCII labels stay unchanged and malformed ACE labels are reported instead of guessed. Use the paired view when reviewing certificates, redirects, blocklists, or suspicious links where both representations matter.

Developer Input

Punycode Decoder
Ad space

How to use this developer tool

  1. Paste one ASCII hostname per line.
  2. Enable paired view if the original ACE form must remain visible.
  3. Decode and inspect every resulting Unicode label.
  4. Compare scripts and spelling before trusting the displayed name.

What this developer tool does

The result shows the Unicode representation carried by each valid xn-- label.

Remove the ACE prefix, decode RFC 3492 generalized variable-length integers, adapt bias, and insert Unicode code points at their calculated positions.

Readable Unicode can hide confusable characters. Retain the original ASCII hostname during security analysis.

Example

Input: xn--mnich-kva.example
Output: münich.example

Use cases

  • Read internationalized hostnames from logs.
  • Review certificate subject names.
  • Investigate possible homograph domains.

Tips for reliable output

  • Keep the ACE form for evidence.
  • Compare mixed-script labels carefully.
  • Do not treat decoding as ownership verification.
  • Process hostnames rather than full URLs.

Processing details

Each digit contributes to a delta using the current bias. The decoder checks invalid digits, integer overflow, and Unicode range violations.

The output is a Punycode decoding result, not full IDNA normalization or a browser navigation safety verdict.

Frequently asked questions

Can I decode a domain without the xn-- prefix?

Plain labels are returned unchanged. Punycode payload decoding is applied only to labels carrying the ACE prefix.

Does decoding verify who owns the domain?

No. It only converts the label representation and performs no DNS or ownership check.

Why does an xn-- label fail to decode?

The payload may contain invalid digits, overflow the algorithm, or represent an invalid Unicode code point.

Are uppercase ACE prefixes accepted?

Yes. The xn-- prefix is matched without regard to case.

Should I display decoded Unicode domains in security logs?

Keep the ASCII form alongside Unicode. The pair helps analysts detect confusable or mixed-script labels.

Output fields

FieldMeaning
SummaryHigh-level processing result
StatisticsCounts and validation details
ExportCopy-ready text plus structured data when available