Choosing a global TLD for your startup

Choosing a domain name for your startup is not a trivial task. I personally faced the challenge many times and I’m quite sure thousands of other IT guys did.

It’s a sad fact that everybody still wants a dot com (.com) address because it became a , kind of, synonym of Internet. Whatever sentence you end with “dot com” – automatically means a web address. Unfortunately, most good sounding .com domains are already registered and many of them are not even used – parasites known as “cybersquatters” occupy them with mercantile hope to sell domains later 100+ times more expensive.

Anyway, that’s how many of us started looking at other global domain names (global TLDs).

I will skip weird, unpopular options like “pro”, “ninja” or “name” and stick to traditional 2-letter codes. Currently (January 2015) Google lists 19 country code TLDs as “global” – these domains previously belonged to tiny countries that practically never used them anyway, then later somebody somewhere decided to monetise the TLD:

.ad

.as

.bz

.cc

.cd

.co

.dj

.fm

.io

.la

.me

.ms

.nu

.sc

.sr

.su

.tv

.tk

.ws

I will not discuss how do these domains sound – it’s subjective and the beauty depends on what comes before the dot. Instead, let’s do some research on objective, quantitive factors such as DNS performance and cost.

Please note that I’m not going to mention number of nameservers used for specific TLD, neither diversity of TLDs used by nameservers. I believe these factors play little to no role in reliability, unlike some companies think (Neustar? :).

Global performance (latency)

Many of the startups today are global – entrepreneurs wish to serve global clientele, and therefore performance around different parts of the world is important. Moreover, we live in a fast paced reality where nobody wants to wait 1000 milliseconds (which is just 1 second) for a web page to load. It already became a standard practise that a user in San Francisco is served by a web server in California, not New York.

To have a better understanding, let’s see an imaginary scenario:

User John in San Francisco opens browser and types www.startup.com. Startup.com is hosted in San Francisco.

John’s browser makes a DNS query: check for DNS root servers => check for com TLD servers => check for startup.com servers => ask startup.com servers for website’s IP.

Lingua latency: 0ms (config) => 70ms (root servers latency) => 100ms (com latency) => 10ms (local nameservers). Total of 70 + 100 + 10 = 180ms.

And now imagine that instead of .com the site was using .sr top-level domain. Even though the software is hosted in the same city as user John, it would have taken 290ms to start opening the index page instead. Switching to .fm domain would reduce the latency to 99ms.

Your page may render in 10ms but it may take up to 300ms to get its IP address, and that’s just frustrating! Let’s see how these 19 country code TLDs perform around the globe. I will test nameservers responsible for the zones from four major points: London, San Francisco, New York and Singapore – these are the important traffic hubs on our beautiful blue planet.

Latency tests are taken against each nameserver for the TLD and then an average is calculated. Since DNS nameservers are chosen randomly by client software, using averages here is reasonable.

Some reference (in case you think latency doesn’t matter or figures provided below are reasonable): Google public nameservers and Cloudflare free nameservers have global latency of 1ms. So no – I’m not too picky, I just demand quality! 🙂

.ad

London: 7.7ms
San Francisco: 140ms
New York: 90ms
Singapore: 293ms
Global: 132ms

.as

London: 23ms
San Francisco: 9.8ms
New York: 6ms
Singapore: 62ms
Global: 25ms (#2)

.bz

London: 60s
San Francisco: 51ms
New York: 42ms
Singapore: 77ms
Global: 57ms

.cc

London: 93ms
San Francisco: 68ms
New York: 45ms
Singapore: 230ms
Global: 109ms

.cd

London: 59ms
San Francisco: 133ms
New York: 76ms
Singapore: 237ms
Global: 126ms

.co

London: 3.9ms
San Francisco: 10ms
New York: 21ms
Singapore: 102ms
Global: 34ms

.dj

London: 54ms
San Francisco: 332ms
New York: 177ms
Singapore: 337ms
Global: 225ms

.fm

London: 4ms
San Francisco: 7ms
New York: 6ms
Singapore: 61ms
Global: 19ms (#1)

.io

London: 112ms
San Francisco: 152ms
New York: 116ms
Singapore: 124ms
Global: 126ms

.la

London: 16ms
San Francisco: 151ms
New York: 168ms
Singapore: 169ms
Global: 126ms

.me

London: 47ms
San Francisco: 53ms
New York: 33ms
Singapore: 107ms
Global: 60ms

.ms

London: 44ms
San Francisco: 4.7ms
New York: 21ms
Singapore: 53ms
Global: 30ms (#3)

.nu

London: 14ms
San Francisco: 102ms
New York: 124ms
Singapore: 141ms
Global: 95ms

.sc

London: 114ms
San Francisco: 99ms
New York: 101ms
Singapore: 98ms
Global: 103ms

.sr

London: 189ms
San Francisco: 170ms
New York: 168ms
Singapore: 316ms
Global: 210ms

.su

London: 104ms
San Francisco: 190ms
New York: 160ms
Singapore: 353ms
Global: 201ms

.tv

London: 94ms
San Francisco: 69ms
New York: 45ms
Singapore: 229ms
Global: 109ms

.tk

London: 9ms
San Francisco: 158ms
New York: 93ms
Singapore: 319ms
Global: 144ms

.ws

London: 72ms
San Francisco: 91ms
New York: 55ms
Singapore: 233ms
Global: 112ms

Cost

Now that we have seen the technicalities, let’s see how much do these domains cost. Of course, prices differ from registrar to registrar and sometimes there are special discounts, but this list should give you a pretty accurate picture.

Note 1. Even though .tk domain is completely free, there are rumours going online about its reliability (please Google for it).
Note 2. .co domain is commonly offered at a range of 3 to 10 US$ for the first year, but then it magically becomes 30 US$ for the years to follow.

.ad

$100+

.as

$90+

.bz

$27+

.cc

$20+

.cd

$65+

.co

$20+

.dj

$95+

.fm

$77+

.io

$32+

.la

$32+

.me

$9+

.ms

$50+

.nu

$19+

.sc

$110+

.sr

$35+

.su

$9+

.tv

$40+

.tk

Free

.ws

$19+

Cost efficiency

Now lets do some trivial arithmetics – let’s calculate value for money for each of the TLDs listed above. Since latency is measured in the opposite direction to the price (the lower – the better), let’s use the following formula:

VALUE = (1 / LATENCY) / PRICE

Eg. (1 / 132) / 100 = 0.00007. The number alone doesn’t make any sense, it matters only during comparison. To make numbers more intuitive, let’s multiply results by 100,000 so that 0.00007 becomes a more humanly 7.

And the winners are:

Best value for money: ME

Second best value for money: CO

Conclusions

While most modern webmasters are familiar with CDN and Anycast technologies, there are still many TLD operators lagging behind. Serving an Asian DNS request from Paris in 2015 should be considered offensive!

If you are starting a startup (sorry for tautology) and you are free to pick any of the TLDs listed in this research, go for .ME or .CO – those two are easy to pronounce and offer best value for price.

If you don’t care about the cost and just want the best global performance – choose among .FM, .AS and .MS.

Future research

It would make sense to do some further research including: measuring DNS query latency instead of ICMP latency, measuring performance from East and West Europe separately, as well as from different parts of Asia Pacific.

Post by Denis Mysenko

Born in the snows of Siberia