Report Tool or Give Us Suggestions

Punycode Converter

Convert Unicode domain labels to Punycode (xn--) and back. Client-side conversion.

L ading . . .

What Is Punycode Converter?

Punycode encodes Unicode domain labels into ASCII starting with xn-- so internationalized domain names (IDN) work with DNS. This Punycode Converter converts each dot-separated label on every line: Unicode hostnames to Punycode, or Punycode labels back to Unicode—useful for debugging DNS, TLS SANs, and email headers.

Encode vs decode

Encode walks labels left to right; ASCII labels pass through unchanged; labels containing non-ASCII characters become xn--…. Decode reverses labels that start with xn-- and leaves plain ASCII labels as-is.

How to use

  1. Pick Unicode → Punycode or Punycode → Unicode.
  2. Enter one hostname or label per line (or a single domain).
  3. Copy or download the Output column.

Frequently Asked Questions

Does it validate a real registered domain?

No. It only performs Punycode label conversion. Registration rules, IDNA2008 vs UTS #46 mapping, and TLD policy are out of scope.

Why did encode skip part of my input?

Labels that are already plain ASCII (like com) stay unchanged. Only labels containing non-ASCII code points are encoded to xn-- form.

Is data sent to a server?

No. Conversion uses the Punycode library in your browser only.

Can I convert a full URL with path and query?

Strip scheme and path first—run the tool on the host portion only, or split labels manually. Paths are not Punycode-encoded the same way as host labels.