( A guide for English speakers as of May, 2022)
I’m going to assume that this isn’t terrible if you speak a language which doesn’t look anything like English. I’m going to assume that your domain name registrar’s don’t have their heads up their butts.
Over here in the English speaking world they’re too anglocentric to notice anything that goes on in languages that have non-ascii characters. Since you’re reading this, you probably use a lot of software that was written by American companies. This means that even if you do succeed in buying an Internationalized Domain Name (IDN) there’s a very good chance that anything you try and stick it in that isn’t a browser will reject it. Especially if you try and use it for email.
If you still want to do it, the process isn’t terrible, if you know how things work.
- Not all Top Level Domains (TLDs) like .com, .org, and so on) allow IDNs.
- The companies that control each TLD, sometimes require you to specify the alphabet type you’re registering (Japanese, Chinese, etc.). As far as I can tell this is completely unnecessary but they require it anyway.
- Most registrars don’t allow you to specify the character set so it doesn’t matter if the TLD supports it or not because you can’t register it without specifying.
- IDNs are an ugly hack, and aren’t actually unicode.
Finding A TLD That Supports Your Language.
I have no good advice for you here. All I can say is that if you’ve seen a domain in your language, then you know you can use whatever TLD it used. Searching for this is hard but the keywords you need are “IDN” and “registrar”. You can try searching for the domain on Gandi.net and hope there’s a globe next to the TLD you want in your results. If there is, you can try specifying the language you want and it’ll either accept it or tell you it’s not allowed. If there’s no globe, the TLD may or may not support IDNs but it probably won’t work if you try to buy it there even if it does.
.com, for example, does support IDNs but has no globe, and gives you an error when you try and buy it even for languages that are allowed.
Getting A Punycode
Let’s address that last point first, because it’s critical to you being able to register an IDN. Let’s say you want to register
バター.com You can’t actually do it (even if no-one else has). You have to convert it to “Punycode”. In this case the punycode is
xn--5ck7a3i.com. You can, in theory, register that.
In practice, you still can’t. At least, not with most registrars, but I’ll get to that in a minute.
There are 2 ways to get your punycode:
- use a punycode converter like https://www.punycoder.com/
- just type the domain you want into Firefox. If it works, someone has it and you’ll need to think of something else. If it doesn’t it’ll give you an error message with the punycode version.
NOTE: Do not include the TLD in the punycode conversion. So, again, if we want
バター.com we enter
バター into the converter and it gives us
xn--5ck7a3i then, take that and add the TLD like `.com to it.
Do not even bother trying to mix character sets like this
バターสมศักดิ์. It’ll convert to Punycode just fine (
xn--12c2bwb2ai8bxa6ql661a3ea9s ) but you’ll hit the problem of the TLD owners wanting you to specify the character set and you can’t specify more than one.
Registering your Punycode Domain
Ok, now you’ve got the punycode. How do you register it?
In, theory, you register it just like any other domain name, but as noted above, you have to indicate the character set, or you have to find a registrar who can figure it out automatically and do that for you. In practice, there’s no way to know if it’ll work until you try and actually buy it.
Here’s my experience
( tl;dr: go to 101domain.com )
Hover.com has the problem that you can’t seach for
バター.com. It deletes the
バター part and thinks you’re searching for
com. If you enter
バター it thinks you’re searching for nothing. You can search for the punycode version though. After getting past that I got “order completed” “payment rejected” and some other error I’ve forgotten at checkout. I got different, or multiple, messages / errors on each attempt. It wasn’t the payment at all. It was Hover.
So I tried Gandi.net. There I noticed something interesting. For some TLDs it had a globe icon which gave you a form to choose a character set when you clicked it. There wasn’t one for
.com, but when I tried to complete my order it give me a brief alert telling me I needed to specify the character set. It wasn’t possible with their site, but at least I had a clue what the problem was.
After some googling I found 101domain.com. I gave them a shot because they also support Internationalized TLDs. I figured if they did that, they must have a clue about the “normal” IDNs, and I was right. Even better, it handled unicode searches like
バター, and when I went to buy my shiny new domain they handled specifying the character set silently.
They’re not my first choice is registrars for a number of reasons, but they don’t seem to be trying to scam anyone, checkout was relatively painless, and my new domain works. In 60 days I’ll try transferring it to Hover with my other domains.
What about Internationalized TLDs
These exist. For example
.コム is a Japanese TLD. My advice, at this point in time, is to assume that these will not work anywhere except the browsers. The thing is, you enter your domain name in a lot of places that aren’t browsers. For example, every time you enter an email address, or paste a link in Slack.
You’re going to have an even harder time finding a registrar that supports those, but if you do they’ll probably handle the other problems well.
I have no idea how to convert a TLD like
.コム to ASCII, but I assume it has to happen and that there’s a magic incantation there. If you know, contact me and I’ll update this.