An apex (or root) record of a zone cannot be a CNAME by specification. This has implications for domains that try to integrate with virtually any cloud platform (AWS, Azure, Heroku, etc.). A common pattern to mitigate this issue is to perform a HTTP 301 redirect from the apex record to a subdomain (usually www.domain.com).
On the other hand, using a single cloud provider for DNS and underlying infrastructure may yield proprietary solutions. For example, AWS provides a Route 53 alias record which can be used at the zone apex.
To understand the prevalence of the apex redirect pattern this script will test the top 1000 Alexa rank domains (as of 3/11/16).
You need a python 2.7 installation (or virtualenv). Install the python dependencies via pip:
$ pip install -r requirements.txt
$ python alexa.py <limit>
$ python alexa.py 10
Checking Alexa top 10 sites
https://www.google.com/?gws_rd=ssl => 200
https://www.wikipedia.org/ => 200
https://www.google.co.in/?gws_rd=ssl => 200
https://www.facebook.com/ => 200
https://twitter.com/ => 200
http://www.amazon.com/ => 200
https://www.yahoo.com/ => 200
https://www.youtube.com/ => 200
http://www.qq.com/ => 200
http://baidu.com/ => 200
0 errors or timeouts
8/10 sites perform apex redirect to subdomain
Note: baidu.com performs a client side redirect
5 errors or timeouts
76/95 sites perform apex redirect to subdomain
72 errors or timeouts
719/928 sites perform apex redirect to subdomain
- Client side redirection is not detected
- 5-10% error rate are common (the GFW may be responsible)