As a CDN we're constantly trying to squeeze every last millisecond of load time. We recently had a user come to us with a list of performance tests on their site, reporting DNS responses often taking over 150 ms.
After a couple of checks, it turned out that the problem actually lied with the .xyz top-level domain itself which took over 100 ms just to resolve the nameserver data for their domain.
While this came as a bit of a surprise, similar issues in the past were actually the reason why we switched from using a .zone domain to .net for our shared domain. With so many new top-level domains recently popping up, we decided to check how well they actually performed and how much of an actual impact they can have.
But wait, how can the domain itself increase the load time?
To explain, we first need to look deeper into how DNS functions.
When resolving a domain such as test.xyz, the DNS resolver will first need to contact the top-level DNS servers from .xyz to get the list of nameservers responsible for the domain. While this might be already cached by the resolver such as your ISP, it might not always be the case depending on the popularity of your domain.
Only once the resolver has this information, it can actually query the received nameservers to get the final address for test.xyz.
This means that if the DNS for the top-level domain is slow, it can actually delay the DNS resolution for the domain itself and in a very unlikely worst case scenario even cause an outage.
That being said, benchmarking the performance is fairly easy. Since we run a global network, it allowed us to monitor the performance worldwide from over 50 locations and networks.
For each top-level domain, our system picked a random nameserver published for each of the top-level domains and queried a random domain name that we picked for it. We then grouped the results by region and logged the data every 10 seconds.
We tested 42 of some of the most popular top-level domains and aggregated the results into a global median average and a 85 percentile aggregation (meaning 15% of the responses were slower than this time). The real world results might vary slightly since all of these tests were performed from our network only, but they should offer a good general overview.
In the end, some of the results were quite surprising.
The biggest shockers were the .info and .org domains that showed really poor performance especially in the 85 percentile range, despite being one of the oldest and well established top-level domains with millions of registered domains each. After some further investigation it appears 4 out of 6 of their nameservers are performing extremely poorly which is the reason for the poor results.
The .net and .com were very slightly slower than we expected in Europe and North America, but otherwise offer great and stable performance across all regions as we can see in the global median.
Another interesting thing to see was the performance for .co, .biz and .in domains that ended up way ahead of the rest. The .net and .com have much larger networks, but these might be a very interesting choice if you're looking to get the absolute maximum performance.
Unfortunately, our suspicions about some of the cool and shiny new domains that have begun popping up recently were confirmed.
While we were delighted to see some of the new top-level domains performing really well such as the .live, .email, .news, etc. which are all run by the same company, we also saw a very large performance drop in many other cases. Some of the domains performed multiple times slower than average and showed average query times well over 100 ms. Many of them also had a big performance drop-off in regions outside of Europe and North America, making the issue even worse there.
We tested 42 of some of the most popular top-level domains out of 600+ available, so we could assume many of those might not perform much better.
So, does this mean you should immediately cancel all of your domains and go for a .co or .biz domain to increase performance?
Most definitely not. In many cases, the DNS responses are heavily cached and especially for very popular websites the resolvers might not need to hit the top-level nameservers much at all. Choosing a domain that fits your brand is in most cases much more important than gaining those extra 50 milliseconds of load time for the first page load.
However, if you are trying to squeeze absolutely every last bit of performance and ensure great reliability in a system where every last millisecond matters, then you might want to think twice before choosing your domain. The differences aren't huge, but if you're aiming to hit that one second loading time, then things do add up, in some cases even as much as 200 ms.
So is your fancy new domain hurting your performance? It actually might be, but probably not enough to worry about that too much.
The article was updated on 20th of December with more domains and a median + 85 percentile aggregation instead of averaging the results for more accurate representation of the performance.