VPS Showdown – June 2019 – DigitalOcean vs. Lightsail vs. Linode vs. UpCloud vs. Vultr

Wow, pretty big news week for DigitalOcean last week, after some strongly worded accusations about ruining somebody’s business.

If we learned anything, it’s that off-site backups are an absolute must, especially if you’re serving Fortune 500 companies and/or providing SLAs.

Okay, now that I got that out of the way, it’s June and I’ve been receiving a TON of great feedback on these posts. Obviously I can’t make everybody happy every month, but I am chipping away at some improvements.

First, I went ahead and expanded the overview to include pricing for the base
instances as well as some of the other services the providers offer.

The other big update is the inclusion of some benchmarks around Redis on the
instances. Nothing terribly fancy, just using redis-benchmark. You can check
out the arguments I’m using as well as everything else I use in this post here.

As per usual, I try to keep the data centers are close together as possible and all server instances were running Ubuntu 18.04 LTS. The metrics presented below are the average of the benchmarks run on 3 different servers.

Overview

 DigitalOceanLightsailLinodeUpCloudVultr
LocationSan Francisco 2Oregon, Zone AFremont, CASan Jose #1Silicon Valley
RAM1 GB1 GB1 GB1 GB1 GB
CPU1 Core1 Core1 Core1 Core1 Core
SSD25 GB40 GB25 GB25 GB25 GB
Transfer1 TB2 TB1 TB1 TB1 TB
Base Price$5/month$5/month$5/month$5/month$5/month
Backups$1/monthN/A$2/month$0.06/GB$1/month
Transfer Overage$0.01/GB$0.09/GB$0.02/GB$0.056/GB$0.01/GB
Load Balancer$10/month$18/month$20/monthN/AN/A

DigitalOcean does not appear to be charging for bandwidth in 2019, so the price is reflective of how much bandwidth overage costs will be starting next year.

Bandwidth overage prices are reflective of North American traffic and depending on the provider, the price could be a bit more depending on where your traffic is coming from.

Amazon is generous enough to include automatic backups with 7 days of retention for free. Manual backups, which persist until you delete them, carry a $0.05/GB per month price tag.

UpCloud offers a bit more flexibility with their backup offering. They charge for the storage of your backup instead of a flat rate, meaning you could go ham and have hourly snapshots if you wanted. Doing the math, if you kept a single backup of a 25 GB instance, you’d paying $1.50.

Even though Vultr and UpCloud don’t offer managed load balancers, you could
still very well run your own load balancer on one of their servers.

CPU Info

 DigitalOceanLightsailLinodeUpCloudVultr
CPU MHz1964.872398.122666.652992.962394.45
Cache Size (KB)28928.0030720.0016384.0016384.0016384.00
BogoMips2729.673200.333466.673990.333192.33

CPU

 DigitalOceanLightsailLinodeUpCloudVultr
Events per Second749.88855.11950.521242.90789.21
Minimum (ms)1.291.031.050.781.13
Average (ms)1.381.171.060.811.27
Maximum (ms)2.524.503.453.024.99

Memory (Read)

 DigitalOceanLightsailLinodeUpCloudVultr
Ops per Second3119722.43819953.924070253.664994342.683370248.55
Minimum (ms)0.000.000.000.000.00
Average (ms)0.000.000.000.000.00
Maximum (ms)0.240.120.590.641.49

Memory (Write)

 DigitalOceanLightsailLinodeUpCloudVultr
Ops per Second3148524.02821609.444054193.904966030.073369760.53
Minimum (ms)0.000.000.000.000.00
Average (ms)0.000.000.000.000.00
Maximum (ms)1.240.261.991.370.96

File I/O

 DigitalOceanLightsailLinodeUpCloudVultr
Reads per Second1964.391321.712292.234491.831866.17
Writes per Second1309.56881.141528.132994.541244.09
Fsyncs per Second4184.082817.114884.259573.403970.54
Minimum (ms)0.000.000.000.000.00
Average (ms)0.170.200.120.060.15
Maximum (ms)25.5319.906.5915.1557.08

MySQL

 DigitalOceanLightsailLinodeUpCloudVultr
Transactions per Second2180.332229.004185.675961.332775.00
Queries per Second43606.6744580.0083713.33119226.6755500.00
Minimum (ms)3.202.341.981.172.30
Average (ms)4.924.492.591.684.18
Maximum (ms)24.9174.6214.8216.6633.26

Redis

The following values are the number of requests per second for the command
listed on the left.

 DigitalOceanLightsailLinodeUpCloudVultr
PING_INLINE38570.6156221.9153548.8985036.8745619.48
PING_BULK37920.2455618.7853183.3884795.2546550.52
SET37006.2255425.0153980.9385590.8945027.32
GET35227.2855847.7753678.0884608.8846855.76
INCR36165.3256614.7753807.1984624.7847364.20
LPUSH37539.0255002.2154666.7985602.3647035.52
RPUSH37015.8855989.3654376.6886264.8546667.61
LPOP36583.9355261.2754100.9586322.5744900.69
RPOP35949.9455927.7654118.3585757.1746101.50
SADD35660.8656255.0553819.3785425.3746490.59
HSET37246.6053286.8454464.1386070.9044894.60
SPOP36647.9256518.5953548.7585268.1545384.79
LRANGE_100 (first 100 elements)17750.4530085.0426318.1044071.9524997.12
LRANGE_300 (first 300 elements)7919.0111916.4410031.2518463.9710000.44
LRANGE_500 (first 500 elements)5519.068347.046913.3112650.737138.74
LRANGE_600 (first 600 elements)4369.846659.405398.099966.125571.45
MSET (10 keys)30952.1440932.2243373.6971083.9235029.50

Speed Test

 DigitalOceanLightsailLinodeUpCloudVultr
Distance (km)2365.292573.932372.792412.862357.97
Latency (ms)50.65274.85262.02362.48655.638
Download (Mbit/s)1268.17300.81513.86357.791178.45
Upload (Mbit/s)496.37220.13431.78281.29495.16

Apache Benchmark (against nginx on the servers)

 DigitalOceanLightsailLinodeUpCloudVultr
Requests per Second178.23175.22196.30191.04158.77
Time per Request (ms) (mean)2813.562872.782550.252651.993158.55
Transfer Rate (Kbyte/sec)149.51146.99164.67160.26133.16

Conclusion

The last few months have been pretty consistent with UpCloud taking the crown in just about every category. This month the speed tests weren’t nearly as favorable with upload and downloads speeds nearly as slow as that of Lightsail.

I know raw metrics aren’t always a good indicator of how good a provider is, so
factoring in things like managed services and overage pricing, DigitalOcean is still standing tall as a good mix of performance and platform offerings.

As always, YMMV so it’s always encouraged to run your own benchmarks and weigh your needs before making a decision on providers.


If you have found these posts informative and helpful in searching for a new hosting provider, please consider using one of the links below when signing up:

  • DigitalOcean, new accounts receive $200 in credit (good for 60 days)
  • Linode, new accounts receive $100 in credit (also good for 60 days)
  • Vultr, new accounts also receive $100 in credit (good for only 14 days)
  • UpCloud, new accounts receive €25 in credit (yes, that’s in Euros)
Josh Sherman - The Man, The Myth, The Avatar

About Josh

Husband. Father. Pug dad. Musician. Founder of Holiday API, Head of Engineering and Emoji Specialist at Mailshake, and author of the best damn Lorem Ipsum Library for PHP.


If you found this article helpful, please consider buying me a coffee.