Punycode Converter
Convert internationalized domain names to Punycode and back. Support for multi-label domains, batch conversion. Free client-side Punycode encoder/decoder.
Why Use a Punycode Converter?
Internationalized Domain Names (IDNs) allow domain names with Unicode characters, but the DNS system only supports ASCII. Punycode is the standard encoding that converts Unicode domain labels to ASCII-safe representations (starting with xn--). Our converter handles this transformation entirely in your browser.
Key Features
- Bidirectional conversion: Domain → Punycode and Punycode → Domain
- Support for multi-label domains (e.g., example.中国 → example.xn--fiqs8s)
- Batch conversion: convert multiple domains at once (one per line)
- Client-side Punycode algorithm implementation — no external libraries
- Instant conversion with swap and copy support
How It Works
- Enter one or more domain names (one per line)
- Select conversion direction: Domain → Punycode or Punycode → Domain
- View the converted result instantly
- Copy the result to clipboard or swap for reverse conversion
Technical Details
This converter implements the Punycode algorithm (RFC 3492) entirely in client-side JavaScript. The encoding uses a variable-length integer representation with base 36, adaptive bias, and incremental code point insertion. Each domain label is processed independently, with 'xn--' prefix added for encoded labels.
Frequently Asked Questions
What is Punycode?
Punycode is an encoding syntax defined in RFC 3492 that transforms Unicode strings into ASCII strings suitable for use in the Domain Name System. It uses the 'xn--' prefix (ACE prefix) to indicate encoded labels.
Why do IDNs need Punycode?
The Domain Name System (DNS) only supports ASCII characters. Punycode provides a way to represent Unicode domain names (like example.中国) in ASCII format (example.xn--fiqs8s) that DNS can process.
Is my data sent to a server?
No. All Punycode encoding and decoding happens entirely in your browser. Your domain names never leave your device.
Related tools
Base64 Encode / Decode
Encode text to Base64 or decode Base64 strings with full Unicode support
URL Encode / Decode
Encode and decode URLs with full or component encoding modes
HTML Entity Encode / Decode
Encode and decode HTML entities like < > & "
JWT Token Decoder
Decode JWT tokens to view header, payload, and signature as formatted JSON
ROT13 Cipher
Encode or decode text using the ROT13 substitution cipher
Morse Code Translator
Convert text to Morse code and back with visual representation and audio playback