Skip to content

Punycode Converter

Convert internationalised domain names to punycode and back.

Direction

Quick Tool Overview

The Punycode Converter encodes internationalised domain names to their xn-- form and decodes them back, label by label, so you can see exactly which parts were encoded and what an xn-- domain really says.

What it does
Converts domains between Unicode and punycode
You give it
A domain in either form
You get back
The converted domain and a per-label breakdown
Best for
IDN setup, certificate work and spotting lookalike domains
Developer Tools Free, unlimited use No sign-up Runs in your browser

About the Punycode Converter

DNS only carries ASCII, so a domain containing accents, Cyrillic, Arabic or Chinese has to be encoded before it can be resolved. Punycode is that encoding: münchen.de becomes xn--mnchen-3ya.de, and every browser does the conversion silently before it makes a request.

Each label — each dot-separated part — is encoded on its own, and only the labels that need it get the xn-- prefix, which is why a mixed domain keeps its ASCII parts unchanged. Decoding matters for a different reason: an xn-- domain in a log, an email header or a certificate is unreadable until you convert it back, and homograph attacks rely on that. Seeing the real Unicode is how you spot a Cyrillic "а" pretending to be a Latin one.

Key features of the Punycode Converter

Per-label conversion

Each dot-separated label is handled on its own, so ASCII parts such as "com" are left untouched exactly as a resolver does it.

Homograph inspection

Decoding an xn-- domain shows the real characters, which is how you catch a Cyrillic letter impersonating a Latin one.

A real RFC 3492 implementation

The full encoder and decoder, not a lookup table, so any script converts correctly in both directions.

Label breakdown

Every label is listed with its original and converted form, so a long domain is easy to check piece by piece.

Round-trip verified

The result is decoded back and compared, so you know the conversion was lossless.

How to use the Punycode Converter

  1. 1

    Pick a direction

    Unicode to punycode, or punycode back to Unicode.

  2. 2

    Paste the domain

    A full domain with dots; each label is converted separately.

  3. 3

    Read the breakdown

    Every label is listed so you can see which ones were encoded and which were left alone.

  4. 4

    Copy the result

    Take the converted domain to your clipboard.

Frequently asked questions

It is the ACE prefix, which marks a label as punycode-encoded. Without it a resolver could not tell an encoded label from a domain that happens to look like one.

Reviews of the Punycode Converter

What people who use the Punycode Converter think of it. Reviews come from visitors and are posted as written.

No ratings yet

Yours would be the first.

  • 5 0 reviews rated 5 stars
  • 4 0 reviews rated 4 stars
  • 3 0 reviews rated 3 stars
  • 2 0 reviews rated 2 stars
  • 1 0 reviews rated 1 star

Write a review

Used this tool? Your rating helps the next person decide.

Your rating

Plain text only — links, email addresses and HTML are not accepted. Your name and review are shown publicly; nothing else is collected. See the privacy policy.

0 reviews

Newest first

No reviews yet

Be the first to rate the Punycode Converter. It takes half a minute and no account.

Write the first review

More developer tools