Skip to main content

Punycode / IDN converter

Get the Unicode and ASCII forms with one click

Does your interface require an ASCII domain when your name contains an accented character? Paste one domain, URL, or email address per line, then click Convert to get the Unicode and ASCII forms.

Key features

Convert in both directions

café.fr becomes xn--caf-dma.fr. A Punycode input returns to its Unicode form.

Compare both forms

The ASCII and Unicode forms appear together for each converted domain.

Keep accents and emoji

The profile preserves the ß in straße.de and accepts emoji, such as 🍕.ws.

Extract the name you need

A URL provides its host; an email address provides only its domain.

Process up to 20 lines

Each line has its own result or error. Empty lines are ignored.

Why convert a domain between Unicode and ASCII

An internationalized domain has a readable Unicode form and an ASCII form for applications that require that format. The Punycode converter works in both directions: café.fr and xn--caf-dma.fr refer to the same name.

An accented character is encoded to produce a domain's ASCII form. Removing é or replacing it with e would change the spelling of the name you are looking for.

Three common situations call for domain conversion:

  • Fill in a configuration field that requires ASCII while preserving the exact internationalized name.
  • Read a name prefixed with xn-- in a log or export and recover its Unicode characters.
  • Compare domains copied from URLs or email addresses without manually copying the relevant part.

How to use the converter in 3 steps

Paste your entries into the text box, click Convert, then view both forms of each domain. The button starts processing; you do not need to choose a direction.

Step 1: Paste the names

Enter one domain, URL, or email address per line, up to 20 non-empty lines. You can mix these formats in the same submission.

captaindns.com
café.fr
xn--caf-dma.fr
https://café.fr/contact?lang=fr
contact@café.fr

For the URL, the tool extracts the host café.fr. For the email address, it keeps the domain after @. The result covers that name, excluding the /contact path, the parameters, and the contact@ part.

Step 2: Run the conversion

Click Convert once your list is ready. The xn-- prefix triggers conversion to Unicode; in the other direction, the tool produces the ASCII form.

Detection applies to each entry. You can put café.fr and xn--caf-dma.fr in the same text box without changing settings between lines.

Step 3: Copy the form you need

Copy the ASCII form for a field that requires it, or the Unicode form to read the name. Both remain visible after each successful conversion.

An error applies to the flagged line. Correct that entry and run the conversion again; the results for the other lines remain usable.

Punycode and IDNA: the algorithm and processing rules

Punycode is the algorithm that encodes a Unicode string in ASCII; IDNA governs the use of internationalized names in applications. The algorithm is defined in RFC 3492, while RFC 5890 defines IDNA2008 terminology.

Processing happens label by label, meaning each part of the name separated by a dot. In café.fr, the label café becomes xn--caf-dma, and fr stays unchanged. For an IDNA-compliant label, the prefixed ASCII form is called an A-label and the corresponding Unicode form a U-label.

Unicode : café.fr
ASCII   : xn--caf-dma.fr

This converter applies the UTS-46 lookup profile in non-transitional mode. The character ß is preserved: straße.de becomes xn--strae-oqa.de, without replacement by ss. Mapping and normalization rules are described in the Unicode UTS-46 standard.

The engine also accepts emoji: 🍕.ws becomes xn--vi8h.ws. This result describes the tool's conversion behavior. It does not grant permission to register the name with a registry or validate all IDNA2008 registration rules.

What the tool does and does not do

The converter processes the written form of the domain and reports input errors by line. It does not query DNS servers or domain registration data.

Input or needWhat the tool doesWhat it does not do
Unicode or Punycode domainDisplays the Unicode and ASCII formsConfirm that the domain exists
Full URLExtracts and converts the hostEncode the path or parameters
Email addressExtracts and converts the domainConvert the part before @ or verify the mailbox
List of namesProcesses up to 20 non-empty lines with individual errorsProcess an unlimited list in one submission
DNS diagnosticsProvides the ASCII name for reuseLook up an IP address or MX, TXT records
Domain registrationProvides the converted formCheck availability or registry rules

Practical use cases

Conversion helps isolate a problem with the written form of a name before you continue troubleshooting. The following situations show which form to copy and which check to run next.

Incident 1: A configuration field rejects an accented character

If a field requires an ASCII name, use xn--caf-dma.fr to refer to café.fr. Replacing the accented character manually would change the domain.

The symptom is a rejected Unicode input in your administration interface. Paste the name into the converter, copy the ASCII form, and enter it in the relevant field. If the interface accepts the name but the service remains unreachable, continue with a DNS query: conversion alone does not explain that failure.

Incident 2: An export contains an unreadable name

A name such as xn--caf-dma.fr in an export decodes to café.fr. This display difference can explain why two lists seem to contain different domains.

The symptom appears when matching a technical export against a list entered with accented characters. Convert the relevant entries, compare their ASCII forms, then keep the Unicode form for human readability. Include both forms in the support ticket to avoid another manual transcription.

Converting a URL or email address only provides information about its domain. An incorrectly encoded path or a nonexistent mailbox requires a different check.

Take https://café.fr/contact?lang=fr or contact@café.fr: the resulting ASCII name is xn--caf-dma.fr. If the symptom concerns website access, check its DNS records next. For an email issue, examine the MX records; for an incorrectly encoded link parameter, use the URL encoder.

FAQ - Frequently asked questions

Results show two written forms of the name, even when they are identical. Here is how to interpret prefixes, errors, and input limits.

What does xn-- mean?

The xn-- prefix indicates a Punycode-encoded ASCII label in an internationalized name. A label is a part of the name separated from the others by a dot: in xn--caf-dma.fr, it corresponds to café. Keep this prefix when copying the ASCII form.

How is this different from percent-encoding?

Punycode encodes hostname labels; percent-encoding represents bytes as %XX in URL components. xn--caf-dma.fr is the ASCII form of café.fr, while %C3%A9 encodes the character é in UTF-8. Use the URL encoder for a path or parameter value.

Is this DNS resolution?

No. The converter transcribes the name without querying its DNS records. A conversion result therefore does not prove that the domain exists or responds. Use DNS Lookup to query A, MX, or TXT records.

Why does example.com appear twice?

example.com is already ASCII: its ASCII and Unicode forms are identical. The tool always displays both forms, even when no characters change. The same result is expected with captaindns.com; this duplication is not an error.

Why is an internal space rejected?

A space inside the domain, as in café .fr, makes the name invalid. The tool trims surrounding whitespace but does not repair internal spaces. Correct the line to café.fr, then run the conversion again.

How many lines can I convert?

The limit is 20 non-empty lines per submission, with one entry per line. Empty lines are ignored. Within this limit, each invalid line gets its own message without preventing conversion of the others; split a longer list across several submissions.

Query DNS for a domain's records and RDAP for its registration data. The URL encoder handles paths and parameters that fall outside the Punycode converter's scope.

ToolUse after conversion
DNS LookupQuery A, MX, or TXT records for the resulting name
RDAPView published registration data for the domain
URL encoder / decoderEncode or decode a path or parameter value using percent-encoding

Useful resources

RFC 3492 describes Punycode encoding; UTS-46 describes Unicode compatibility processing for IDNA. RFC 5890 defines the terminology used for internationalized labels.