Decode Punycode to Text

Convert ASCII Punycode (xn--) back to readable Unicode text or internationalized domain names.

Decodes segments starting with xn--

RFC Compliant

Accurate decoding following RFC 3492 and IDNA protocols for maximum reliability.

100% Client-Side

Your data never leaves your browser. Privacy is our top priority.

Fast & Simple

Intuitive interface designed for both quick checks and bulk processing.

Try These Examples

Punycode Domain

Decode a Punycode domain name back to its Unicode version.

Apply Now

Single Label

Decode a single Punycode string (without xn-- prefix).

Apply Now

Complex IDN

Decode a complex internationalized domain name.

Apply Now

Guide to Punycode Decoding and IDN

How Punycode Decoding Works

Punycode decoding is the reverse process of converting ASCII strings back into their original Unicode (non-ASCII) representation. This is essential for humans to read internationalized domain names that appear as xn-- in logs or system configurations.

Our decoder identifies the ACE prefix and applies the Punycode algorithm to reconstruct characters from various scripts including Cyrillic, Chinese, Arabic, and more.

When to Use a Punycode Decoder?

  • Log Analysis: Decode domain names found in server access logs or network traffic captures.
  • Security Audits: Verify the actual destination of suspicious "xn--" links to prevent homograph attacks.
  • Development: Convert Punycode back to Unicode to ensure data is being stored and displayed correctly in your UI.
  • SEO & Marketing: Read international domains used by competitors or for your own brand protection.

Punycode vs. URL Encoding

It's important to note that Punycode is not the same as URL encoding (percent-encoding). While URL encoding handles special characters like spaces or symbols in a URL path (e.g., %20), Punycode specifically handles non-ASCII characters in the domain name itself.

Example: In the URL https://münchen.de/search?q=café:
münchen.de is converted via Punycode to xn--mnchen-3ya.de.
café is converted via URL encoding to caf%C3%A9.