HEADS-UP: A ton has changed since this post was originally published!

Why not check out the latest comparison? A ton has changed since this post was originally published!

Updated on March 6th, 2017 since Vultr has updated their $5 offering. The data tables have been updated and the applicable sections have updates near the end of the section.

Usually I wait to run fresh benchmarks on all providers, but the comments section has been blowing up about Vultr’s update.

Every time I post a $10 VPS Hosting Showdown, I am flooded with comments from people that want to focus solely on the price. Regardless of the benchmark results, they always say the same thing, Linode needs a $5 plan.

When somebody mentions this, I always say the same thing, “given enough time they will probably offer a $5 plan”. I said the same thing when people were barking about how Linode didn’t even have a $10 plan.

And here we are, Linode is now offering $5 per month instances!

They also added high memory instances and added more SSD storage to their $10 per month plan. Expect some other showdowns soon :)

Overview

Linode DigitalOcean Lightsail Vultr Memory 1GB 512MB 512MB 1024MB Processor 1 Core 1 Core 1 Core 1 Core Storage 20GB SSD 20GB SSD 20GB SSD 25GB SSD Transfer 1TB 1TB 1TB 1000GB Overage $0.02/GB $0.02/GB $0.09/GB $0.02+/GB Network In 40Gbps 1Gbps ??? ??? Network Out 1000Mbps 1Gbps ??? ??? Price $5/month $5/month $5/month $5/month $0.0075/hour $0.007/hour $0.007/hour $0.007/hour

Right out of the gate Linode is offering twice as much RAM as DigitalOcean and Amazon Lightsail, and 256MB more than Vultr. Even though Vultr is offering a bit more RAM, they offer 25% less storage.

All servers were built out running Ubuntu 16.04 LTS x64 and with the exception of Lightsail (in Virginia) the rest of the instances were in the New York / New Jersey area.

Even though all of the companies are at the same price (except Linode’s hourly which is slightly highter), each offers their own special. Amazon offers your first month free without any promo code, while everybody else offers credit that is enough to cover at least 2 months in the case of Linode and DigitalOcean and since their bonus code expired, Vultr is also back down to 2 months.

Quick note, when running my benchmarks, Vultr borked during software update. Unsure the cause, but I had received an error that it couldn’t get the lock. I’ve seen the error before by running apt more than once, but never on a brand new server that I was the only person logged in.

* March 6th, 2017 Update Vultr bumped their plan from 768MB to 1024MB of RAM and from 15 to 25GB of storage. They now have a comparable RAM offering to that of Linode and slightly more storage than all competitors.

CPU Info

So what exactly is underneath the hood? Here’s some abridged data from /proc/cpuinfo

cat /proc/cpuinfo

Model Name CPU MHz Cache Size BogoMips Linode Intel(R) Xeon(R) CPU E5-2680 v2 2,799.998 4,096KB 5,602.32 DigitalOcean Intel(R) Xeon(R) CPU E5-2630L v2 2,399.998 15,360KB 4,799.99 Lightsail Intel(R) Xeon(R) CPU E5-2676 v3 2,400.060 30,720KB 4,800.12 Vultr Virtual CPU a7769a6388d5 2,394.454 4,096KB 4,788.90

I’m not the most versed in hardware, but it looks like Linode, DigitalOcean and Lightsail have comparable CPUs with Linode having the fastest of the bunch. Even with what appears to be an older CPU, Vultr’s speed came in second.

* March 6th, 2017 Update Vultr originally reported an Intel Xeon E3-12xx v2 (Ivy Bridge) clocking in at 2599.996. On the box I spun up to run updated benchmarks, the CPU was reported as Virtual CPU a7769a6388d5 and only 2394.454MHz.

CPU Benchmarks

sysbench --test = cpu run

Linode DigitalOcean Lightsail Vultr Number of Events 10,000 10,000 10,000 10,000 Total Time 11.7018s 13.0227s 11.3688s 11.7363s Event Execution 11.6999s 13.0198s 11.3672s 11.7331s Minimum Request 1.16ms 1.22ms 1.03ms 1.12ms Average Request 1.17ms 1.30ms 1.14ms 1.17ms Maximum Request 1.44ms 5.17ms 2.16ms 11.80ms 95th Percentile 1.18ms 1.34ms 1.21ms 1.33ms

For the most part, everybody performed about the same at the 9th percentile. Linode’s max requests weren’t nearly as high as the other guys.

* March 6th, 2017 Update Vultr clocked in about the same as before. The only notable difference is that the maximum request jumped from 4.18ms to 11.80ms.

Memory Benchmarks

Memory Reads

sysbench --test = memory run

Linode DigitalOcean Lightsail Vultr Number of Events 104,857,600 104,857,600 104,857,600 104,857,600 Total Time 41.4636s 84.3949s 71.4697s 57.6430s Execution Time 34.1515ms 67.3855s 56.8831s 46.8024s Minimum Request 0.00ms 0.00ms 0.00ms 0.00ms Average Request 0.00ms 0.00ms 0.00ms 0.00ms Maximum Request 3.65ms 1.51ms 0.23ms 8.25ms 95th Percentile 0.00ms 0.00ms 0.00ms 0.00ms Operations/sec 2,522,822.27 1,242,463.36 1,467,161.71 1,819,085.95 MB/sec 2,463.69 1,213.34 1,432.78 1,776.45

Memory Writes

sysbench --test = memory --memory-oper = write run

Linode DigitalOcean Lightsail Vultr Number of Events 104,857,600 104,857,600 104,857,600 104,857,600 Total Time 41.2297s 81.5642s 71.3810s 56.7589s Execution Time 34.1296s 64.9544s 56.8120s 46.0790s Minimum Request 0.00ms 0.00ms 0.00ms 0.00ms Average Request 0.00ms 0.00ms 0.00ms 0.00ms Maximum Request 0.42ms 5.21ms 0.19ms 3.86ms 95th Percentile 0.00ms 0.00ms 0.00ms 0.00ms Operations/sec 2,543,252.11 1,285,584.18 1,468,984.58 1,847,421.59 MB/sec 2,483.64 1,255.45 1,434.56 1,804.12

Somewhat expected, the providers offering more RAM ended up having faster speeds. If RAM is important to you, you’d get more bang for your buck with Linode or Vultr at the $5 price point.

* March 6th, 2017 Update Vultr remained in the #2 spot, but had slipped a bit since the previous set of benchmarks.

File I/O Benchmarks

sysbench --test = fileio prepare sysbench --test = fileio --file-test-mode = rndrw run sysbench --test = fileio cleanup

Linode DigitalOcean Lightsail Vultr Number of Events 10,000 10,000 10,000 10,000 Total Time 1.9924s 1.4641s 6.6209s 2.8518s Execution Time 0.5274s 0.5873s 1.9269s 1.6152s Minimum Request 0.00ms 0.00ms 0.00ms 0.00ms Average Request 0.05ms 0.06ms 0.19ms 0.16ms Maximum Request 7.45ms 1.80ms 1.82ms 5.50ms 95th Percentile 0.11ms 0.10ms 0.37ms 0.41ms Requests/sec 5,019.11 6,929.91 1,510.36 3,506.57 MB/sec 78.424 106.72 23.599 54.79

Quite the mixed bag for the file I/O benchmarks. DigitalOcean performed a decent percentage about Linode, and over 2x the requests per second of Vultr and over 4x that of Lightsail!

* March 6th, 2017 Update Vultr saw a slight improvement, but not enough to change the outcome on this benchmark.

MySQL Benchmarks

mysql -uroot -e "CREATE DATABASE sbtest;" sysbench --test = oltp --oltp-table-size = 1000000 --mysql-user = root prepare sysbench --test = oltp --oltp-table-size = 1000000 --mysql-user = root run sysbench --test = oltp --oltp-table-size = 1000000 --mysql-user = root cleanup

Linode DigitalOcean Lightsail Vultr Number of Events 10,000 10,000 10,000 10,000 Total Time 29.1639s 43.8152s 52.5180s 32.7331s Execution Time 29.1167s 43.7459s 52.4601s 32.6649s Minimum Request 2.16ms 2.53ms 2.37ms 2.08ms Average Request 2.91ms 4.37ms 5.25ms 3.27ms Maximum Request 884.57ms 325.37ms 171.01ms 28.23ms 95th Percentile 3.03ms 8.45ms 13.58ms 4.49ms Read/write Requests/sec 6,514.91 4,336.39 3,617.80 5,804.53

Linode had the best performance at the 95th percentile and the most reads/write requests per second but the maximum request time was nearly a second. Vultr was second in read/writes but also had a significantly better maximum request time.

* March 6th, 2017 Update Vultr saw another bit of improvement, but not enough to move the needle since last time.

Apache Benchmarks

ab -kc 1000 -n 10000 http://127.0.0.1/

Linode DigitalOcean Lightsail Vultr Concurrency Level 1,000 1,000 1,000 1,000 Time taken 3.044s 1.991s 1.285s 1.406s Completed Requests 10,000 10,000 10,000 10,000 Failed Requests 10 11 4 2 Requests/sec 3,285.22 5,023.11 7,784.84 7,110.55 Time per request 304.393ms 199.080ms 128.455ms 144.636ms Transfer rate Kbyte/sec 37,276.91 56,990.74 88,386.49 80,746.67

Somebody had mentioned that I should do the Apache Benchmark with Nginx. I may in the future if there’s enough interest. Nginx is my webserver of choice, but using Apache with the Apache Benchmark utility makes sense to me for the sake of these reviews.

* March 6th, 2017 Update Slight improvement from Vultr, but really just more of the same.

Network Benchmarks

As mentioned before, I chose datacenters in New York / New Jersey for Linode, DigitalOcean and Vultr. The Lightsail instance lives in Virginia.

./speedtest-cli --server = 7340

Linode DigitalOcean Lightsail Vultr Distance 2,269.12 2,282.16km 1,933.53km 2,251.70km Ping 92.124ms 75.602ms 65.945ms 68.769ms Download Mbit/sec 545.47 329.19 197.72 705.48 Upload Mbit/sec 81.77 112.22 106.61 109.35

I like to include this metric but it always feels like a crap shoot with the varying locations of the servers. Never an apples to apples comparison. DigitalOcean’s upload time squeaked by Lightsail and Vultr while Linode was able to blow past everybody in terms of download speed.

* March 6th, 2017 Update Decent bump in download speeds from Vultr with this benchmark. The distance to the server ended up being about 1,000km less though, which was weird because I spun up a Vultr instance int he same New York (NJ) data center as last time and used the same speed test server in Houston.

Conclusion

Linode’s new plan is not only offering the consistently better performance I’ve seen in past dollar for dollar comparisons, but also the single digit price point that people have been craving.

Linode is still a bit behind the curve when it comes to things like block storage volumes, default SSH keys and yeah, their UI. Patience is a virtue, and given enough time, Linode always seems to deliver.

And when they deliver, it tends to blow everybody’s offerings out of the water.

That said, DigitalOcean also had a big announcement today and are now offering Load Balancers for $20 per month. Linode has offered their version, called Node Balancers for a while now, and at the same price point. Vultr and Lightsail don’t current offer this, but you could also spin up an instance that serve as a self-managed load balancer.

Linode’s announcement today is something I’d have expected on their birthday later this year as that’s when they tend to make these announcements. Can’t wait to see what’s in store in June!

Like all of my reviews, YMMV and you need to pick the provider that fits your needs. If you do end up making a decision based on this review, I’d very much appreciate it if you used my referral links for [Linode][linode], [DigitalOcean][digitalocean] and/or [Vultr][vultrSpecial].

Amazon doesn’t do referrals, but you could always donate to Ubuntu as that’s the Linux distro I use for these reviews.

Oh yeah, and Happy Valentine’s Day!

* March 6th, 2017 Update Vultr’s latest offering definitely helps them compete with Linode by offering the same amount of RAM. If you are looking for more storage for the buck, they would be the way to go. Otherwise, most of the metrics saw an improvement, but nothing that made their offering better than everybody else.

What’s interesting is that they are now offering a $2.50 plan that’s on par with DigitalOcean and Amazon Lightsail’s $5 plans. Starts to seem like a race to the bottom at a certain point. Time will tell if there needs to be a $2.50 showdown in the future ;)