Punycode Encode & Decode
Convert a Unicode label to Punycode (ASCII) and back. This tool does both encode and decode on one page — just pick a mode, paste your text, and click. Everything runs on your device, nothing is sent to a server.
Everything runs in your browser. Your data is never sent to our servers.
Example
Example Input
münchen
Example Output
mnchen-3ya
How to Use
- 1Choose Encode or Decode mode at the top.
- 2Type or paste your text into the Input field.
- 3Click the button (or press Ctrl+Enter) to process. The result appears in the Output field.
- 4Click Copy to copy the result, or "Swap input/output" to quickly reverse the operation.
About Punycode
Punycode (RFC 3492) encodes a Unicode domain label into a DNS-compatible ASCII string. This is how domain names containing non-Latin characters (e.g. müller) are technically represented.
How it works: Punycode separates the basic ASCII characters then encodes the non-ASCII ones as a compact sequence of deltas, producing a string of only letters, digits, and hyphens.
This tool encodes a SINGLE label (a domain part without dots). For a whole domain name (e.g. müller.de → xn--mller-kva.de), use the IDNA tool, which handles the "xn--" prefix and dots.
FAQ
Can this Punycode tool both encode and decode?
Yes. This is a single page with a toggle — use Encode mode to transform text, and Decode mode to reverse it. No need for two separate pages.
Is my data sent to a server?
No. Punycode is processed entirely in your browser. The text you enter never leaves your device.