Punycode Encoder Decoder
Convert a complete internationalized domain name between readable Unicode and its ASCII-compatible form. For example, bücher.de becomes xn--bcher-kva.de. The server uses PHP intl with Unicode UTS #46; it converts the supplied name but does not check registration, DNS, ownership or phishing risk.
How to convert an IDN
-
1
Choose a direction
Encode turns a Unicode domain into ASCII; decode turns an A-label such as xn--bcher-kva back into Unicode.
-
2
Enter the domain
Paste the domain name only, without a URL path, query string or email address. Dot-separated labels are processed together.
-
3
Check the result
Copy the converted spelling, then verify it with the relevant registry or DNS service before relying on it.
Unicode names and A-labels
An internationalized domain name can contain characters outside plain ASCII. DNS-facing software represents each non-ASCII label with Punycode and the xn-- prefix. ASCII-only labels remain unchanged.
| Unicode form | ASCII-compatible form |
|---|---|
bücher.de |
xn--bcher-kva.de |
café.com |
xn--caf-dma.com |
日本.jp |
xn--wgv71a.jp |
This tool calls PHP’s idn_to_ascii or idn_to_utf8 with the UTS #46 variant and default flags. UTS #46 maps and normalizes a prospective domain before converting its labels. A conversion failure means the input could not be processed under those settings; it does not mean that a successful result is registered, reachable or accepted by a particular registry.
Safety and scope
Punycode is an encoding, not a trust signal. Different Unicode characters can look alike, so inspect unfamiliar decoded domains carefully. This page does not run confusable-character or mixed-script detection. It also does not perform DNS lookup, WHOIS, certificate checks or registry-specific validation.
The entered domain is sent to this site’s server for conversion. Do not paste credentials or private data; a domain name itself is normally public, but the tool is not browser-only.
Frequently Asked Questions
No. Enter the domain only, such as café.example. Remove the scheme, port, path, query and fragment first.
No. It only proves that the server converted the input. Registry policies, DNS length rules and availability require separate checks.
No. Treat the decoded spelling as data and verify unfamiliar names independently.
On this site’s server with PHP intl and the UTS #46 IDNA variant.
Related Tools
ASCII Table Reference
Full ASCII table from 0 to 127 with decimal, hex, octal, binary, standard names and HTML numeric-reference notation, including NUL, LF and DEL.
Color Palette Generator
Generate monochromatic, analogous, complementary, triadic or tetradic color palettes from a base HEX color and export copy-ready CSS variables.
FPS Counter
Measure browser FPS with requestAnimationFrame, smoothing, min/max frame rate, warnings and an optional graph. Runs locally with no upload or API.
HTML Character Reference
Searchable list of HTML entities, their named and numeric codes, and a one-click copy for special characters and symbols.
HEX Color Picker
Pick or enter a HEX colour and get RGB, HSL, approximate CMYK, relative luminance and contrast ratios against white and black.
JSON Formatter
Paste JSON to pretty-print with 2 or 4 spaces, minify it to compact output, or run a quick syntax check before copying the result.
Tool available in other languages
- Punycode-kodare och avkodare [SV]
- Punycode 인코더·디코더 [KO]
- Codificador e decodificador Punycode [PT]
- Encodeur et décodeur Punycode [FR]
- Punycodeエンコーダー・デコーダー [JA]
- Koder i dekoder Punycode [PL]
- Trình mã hóa và giải mã Punycode [VI]
- Enkoder dan Dekoder Punycode [ID]
- مُرمِّز ومفكّك Punycode [AR]
- Codificador y decodificador Punycode [ES]
- Punycode coderen en decoderen [NL]
- Punycode-Kodierer und -Dekodierer [DE]
- ตัวเข้ารหัสและถอดรหัส Punycode [TH]
- Codificatore e decodificatore Punycode [IT]
- Кодировщик и декодировщик Punycode [RU]
- Punycode kodlayıcı ve kod çözücü [TR]
- Punycode 编码解码器 [ZH]