VPS Showdown - March 2022 - DigitalOcean vs. Lightsail vs. Linode vs. UpCloud vs. Vultr

Josh Sherman
23 min read
VPS Showdown
HEADS-UP: A ton has changed since this post was originally published!
Why not check out the latest comparison?

The biggest news this month is that Linode was recently acquired by Akamai Technologies for a whopping $900M. What that will do to the VPS landscape is yet to be seen. The most immediate impact I’ve noticed is that Linode is going to start charging sales tax in May.

I don’t think it’s a direct result of the acquisition, but Linode did perform noticeably slower this month than in previous months. Seemed like two of the three servers (both reporting an AMD EPYC 7601 32-Core Processor) were under performing.

They very well may have both been on the same physical host, they also could have been affected by noisy neighbors. Heck, running my benchmarks could have been the noisy neighbor as well.

Regardless the cause, Linode’s performance this month took a noticeable dip that I anticipate will bounce back next month.

Oh, and Linode’s managed MySQL databases are now in open beta, finally!

As for the benchmarks below, like previous months, I’ve spun up 3 instances for each provider at the 5 and 6 dollar price points. All instances reside in or around the New York / Newark area, are running the current LTS version of Ubuntu and the metrics are averaged where applicable.

$5 VPS Showdown - DigitalOcean vs. Lightsail vs. Linode vs. UpCloud vs. Vultr”

Overview

  DigitalOcean Lightsail Linode UpCloud Vultr
Location New York 1 Virginia, Zone A Newark, NJ US-NYC1 New York (NJ)
Distro Ubuntu 20.04 LTS Ubuntu 20.04 LTS Ubuntu 20.04 LTS Ubuntu 20.04 LTS Ubuntu 20.04 LTS
Kernel 5.4.0 5.4.0 5.4.0 5.4.0 5.4.0
MySQL 8.0.28 8.0.28 8.0.28 8.0.28 8.0.28
Redis 5.0.7 5.0.7 5.0.7 5.0.7 5.0.7
Base Price $5/month $5/month $5/month $5/month $5/month
Hourly Price $0.007/hour $0.007/hour $0.0075/hour $0.007/hour $0.007/hour
RAM 1 GB 1 GB 1 GB 1 GB 1 GB
CPU 1 Core 1 Core 1 Core 1 Core 1 Core
Storage 25 GB 40 GB 25 GB 25 GB 25 GB
Storage Type SSD SSD SSD SSD SSD
Transfer 1 TB 2 TB 1 TB 1 TB 1 TB
Transfer Overage $0.01/GB $0.09/GB $0.01/GB $0.01/GB $0.01/GB
Backups $1/month $2/month $2/month $1/month $1/month
DNS Yes Yes Yes No Yes
Firewall Yes Yes Yes Yes Yes
Load Balancer $10/month $18/month $10/month No $10/month
Block Storage $0.1/GB $0.1/GB $0.1/GB $0.223/GB $0.1/GB
Object Storage $5/month $0.023/GB $5/month $5/month $5/month
Managed Databases MongoDB, MySQL, PostgreSQL, Redis MySQL, PostgreSQL MySQL MySQL, PostgreSQL No
2FA/MFA Yes Yes Yes Yes Yes
One-click Apps Yes Yes Yes No Yes
Custom Images Yes No Yes Yes Yes
Kubernetes Yes Yes Yes No Yes
Container Registry Yes Yes No No No
Container Hosting Yes Yes No No No

CPU Info

  Model Name
DigitalOcean - All Instances DO-Regular
Lightsail - All Instances Intel(R) Xeon(R) CPU E5-2676 v3 @ 2.40GHz
Linode - Instance #1 AMD EPYC 7642 48-Core Processor
Linode - Instance #2 AMD EPYC 7601 32-Core Processor
Linode - Instance #3 AMD EPYC 7601 32-Core Processor
UpCloud - All Instances AMD EPYC 7542 32-Core Processor
Vultr - Instance #1 Intel Core Processor (Broadwell, no TSX, IBRS)
Vultr - Instance #2 Intel Core Processor (Haswell, no TSX, IBRS)
Vultr - Instance #3 Intel Core Processor (Haswell, no TSX, IBRS)
  DigitalOcean Lightsail Linode UpCloud Vultr
CPU MHz 2,494.14 2,399.94 2,233.33 2,894.56 2,398.15
Cache Size (KB) 4,096.00 30,720.00 512.00 512.00 16,384.00
BogoMips 3,325.67 3,200.33 3,000.00 3,859.67 3,196.00

CPU

  DigitalOcean Lightsail Linode UpCloud Vultr
Events per Second 865.24 757.40 1,026.80 1,650.72 738.06
Minimum (ms) 0.95 1.23 0.68 0.58 1.21
Average (ms) 1.18 1.32 1.18 0.60 1.37
Maximum (ms) 8.24 6.78 37.44 1.82 6.61

Memory

Read

  DigitalOcean Lightsail Linode UpCloud Vultr
Ops per Second 3,940,906.88 520,685.91 3,127,523.19 5,488,591.60 3,661,383.57
Minimum (ms) 0.00 0.00 0.00 0.00 0.00
Average (ms) 0.00 0.00 0.00 0.00 0.00
Maximum (ms) 3.17 2.71 20.75 0.35 3.45

Write

  DigitalOcean Lightsail Linode UpCloud Vultr
Ops per Second 3,987,403.78 522,620.92 2,902,942.47 5,502,535.75 3,735,334.37
Minimum (ms) 0.00 0.00 0.00 0.00 0.00
Average (ms) 0.00 0.00 0.00 0.00 0.00
Maximum (ms) 2.34 1.80 21.25 0.25 3.61

File I/O

  DigitalOcean Lightsail Linode UpCloud Vultr
Reads per Second 1,635.67 1,102.48 189.27 2,486.43 2,080.12
Writes per Second 1,090.44 734.96 126.16 1,657.59 1,386.71
Fsyncs per Second 3,493.31 2,360.41 409.20 5,310.48 4,444.61
Minimum (ms) 0.00 0.00 0.00 0.00 0.00
Average (ms) 0.17 0.24 1.38 0.11 0.13
Maximum (ms) 11.15 13.15 84.95 8.66 6.47

MySQL

Read Only

  DigitalOcean Lightsail Linode UpCloud Vultr
Transactions per Second 4,799.67 4,680.00 3,542.67 8,178.67 4,171.00
Queries per Second 76,794.67 74,880.00 56,682.67 130,858.67 66,736.00
Minimum (ms) 1.28 1.78 2.12 0.96 1.75
Average (ms) 2.15 2.13 4.24 1.22 2.42
Maximum (ms) 21.24 30.00 77.74 8.09 52.53

Write Only

  DigitalOcean Lightsail Linode UpCloud Vultr
Transactions per Second 2,679.33 1,671.67 779.67 3,997.00 3,356.00
Queries per Second 16,076.00 10,030.00 4,678.00 23,982.00 20,136.00
Minimum (ms) 1.34 3.02 4.70 1.38 1.57
Average (ms) 4.64 6.00 35.68 2.50 3.25
Maximum (ms) 32.69 26.31 199.82 16.70 40.61

Read Write

  DigitalOcean Lightsail Linode UpCloud Vultr
Transactions per Second 1,092.00 1,151.33 593.00 2,427.00 1,497.67
Queries per Second 21,840.00 23,026.67 11,860.00 48,540.00 29,953.33
Minimum (ms) 3.90 5.40 9.19 2.58 4.29
Average (ms) 10.07 8.69 45.57 4.12 7.04
Maximum (ms) 86.99 58.53 267.42 20.49 31.26

Redis

  DigitalOcean Lightsail Linode UpCloud Vultr
PING_INLINE 38,771.02 45,213.34 41,655.54 64,068.72 36,233.87
PING_BULK 38,411.35 44,769.48 45,235.77 62,161.46 34,980.11
SET 39,533.44 45,078.09 42,231.22 66,013.03 36,702.78
GET 39,510.67 45,143.03 45,362.17 64,118.48 35,263.73
INCR 38,829.12 44,964.05 48,527.07 65,632.14 35,641.15
LPUSH 34,285.24 45,665.88 37,962.69 69,152.36 37,003.51
RPUSH 33,427.85 45,408.70 38,505.82 68,340.20 37,780.57
LPOP 35,488.26 45,333.56 38,468.03 69,412.01 36,798.13
RPOP 38,397.89 45,300.44 41,048.27 68,728.61 36,234.68
SADD 39,039.79 45,176.80 45,358.86 65,350.07 35,403.70
HSET 40,946.85 45,410.51 38,251.66 69,801.03 37,225.46
SPOP 39,846.72 45,455.11 43,371.54 64,492.96 35,146.80
LRANGE_100 (first 100 elements) 22,969.88 29,350.65 17,719.85 31,437.83 25,199.44
LRANGE_300 (first 300 elements) 9,792.23 12,896.25 6,857.64 11,578.97 10,227.54
LRANGE_500 (first 500 elements) 7,148.05 9,314.58 5,236.80 9,103.11 7,237.59
LRANGE_600 (first 600 elements) 5,783.65 7,662.92 4,269.72 7,553.44 5,690.99
MSET (10 keys) 31,176.00 37,305.93 22,313.51 62,830.05 25,982.71

$6 VPS Showdown - DigitalOcean - Premium Intel vs. DigitalOcean - Premium AMD vs. Vultr - High Frequency”

Overview

  DigitalOcean - Premium Intel DigitalOcean - Premium AMD Vultr - High Frequency
Location New York 1 New York 1 New York (NJ)
Distro Ubuntu 20.04 LTS Ubuntu 20.04 LTS Ubuntu 20.04 LTS
Kernel 5.4.0 5.4.0 5.4.0
MySQL 8.0.28 8.0.28 8.0.28
Redis 5.0.7 5.0.7 5.0.7
Base Price $6/month $6/month $6/month
Hourly Price $0.009/hour $0.009/hour $0.009/hour
RAM 1 GB 1 GB 1 GB
CPU 1 Core 1 Core 1 Core
Storage 25 GB 25 GB 25 GB
Storage Type NVMe NVMe NVMe
Transfer 1 TB 1 TB 1 TB
Transfer Overage $0.01/GB $0.01/GB $0.01/GB
Backups $1.2/month $1.2/month $1.2/month
DNS Yes Yes Yes
Firewall Yes Yes Yes
Load Balancer $10/month $10/month $10/month
Block Storage $0.1/GB $0.1/GB $0.1/GB
Object Storage $5/month $5/month $5/month
Managed Databases MongoDB, MySQL, PostgreSQL, Redis MongoDB, MySQL, PostgreSQL, Redis No
2FA/MFA Yes Yes Yes
One-click Apps Yes Yes Yes
Custom Images Yes Yes Yes
Kubernetes Yes Yes Yes
Container Registry Yes Yes No
Container Hosting Yes Yes No

CPU Info

  Model Name
DigitalOcean - Premium Intel - All Instances DO-Premium-Intel
DigitalOcean - Premium AMD - All Instances DO-Premium-AMD
Vultr - High Frequency - All Instances Intel Core Processor (Skylake, IBRS)
  DigitalOcean - Premium Intel DigitalOcean - Premium AMD Vultr - High Frequency
CPU MHz 2,494.13 2,000.00 3,696.00
Cache Size (KB) 4,096.00 512.00 16,384.00
BogoMips 3,325.67 2,666.33 4,927.67

CPU

  DigitalOcean - Premium Intel DigitalOcean - Premium AMD Vultr - High Frequency
Events per Second 917.55 1,248.44 1,282.75
Minimum (ms) 0.95 0.71 0.76
Average (ms) 1.09 0.80 0.79
Maximum (ms) 3.65 2.21 3.57

Memory

Read

  DigitalOcean - Premium Intel DigitalOcean - Premium AMD Vultr - High Frequency
Ops per Second 3,979,735.29 3,758,442.89 6,035,823.31
Minimum (ms) 0.00 0.00 0.00
Average (ms) 0.00 0.00 0.00
Maximum (ms) 7.79 1.60 1.91

Write

  DigitalOcean - Premium Intel DigitalOcean - Premium AMD Vultr - High Frequency
Ops per Second 4,119,352.53 3,680,563.67 5,958,689.57
Minimum (ms) 0.00 0.00 0.00
Average (ms) 0.00 0.00 0.00
Maximum (ms) 8.23 0.39 2.62

File I/O

  DigitalOcean - Premium Intel DigitalOcean - Premium AMD Vultr - High Frequency
Reads per Second 1,543.73 1,411.73 4,284.03
Writes per Second 1,029.16 941.15 2,856.01
Fsyncs per Second 3,298.36 3,018.59 9,145.51
Minimum (ms) 0.00 0.00 0.00
Average (ms) 0.18 0.19 0.06
Maximum (ms) 44.25 9.25 4.28

MySQL

Read Only

  DigitalOcean - Premium Intel DigitalOcean - Premium AMD Vultr - High Frequency
Transactions per Second 5,348.00 4,214.33 7,732.00
Queries per Second 85,568.00 67,429.33 123,712.00
Minimum (ms) 1.25 1.61 1.00
Average (ms) 1.88 2.38 1.31
Maximum (ms) 15.21 15.02 13.92

Write Only

  DigitalOcean - Premium Intel DigitalOcean - Premium AMD Vultr - High Frequency
Transactions per Second 2,337.33 2,335.33 8,485.67
Queries per Second 14,024.00 14,012.00 50,914.00
Minimum (ms) 1.35 1.36 0.65
Average (ms) 4.99 4.33 1.19
Maximum (ms) 67.42 31.50 9.14

Read Write

  DigitalOcean - Premium Intel DigitalOcean - Premium AMD Vultr - High Frequency
Transactions per Second 1,569.00 1,356.33 3,419.67
Queries per Second 31,380.00 27,126.67 68,393.33
Minimum (ms) 3.40 3.58 1.93
Average (ms) 6.50 7.37 2.96
Maximum (ms) 42.49 46.04 14.31

Redis

  DigitalOcean - Premium Intel DigitalOcean - Premium AMD Vultr - High Frequency
PING_INLINE 50,266.15 56,599.66 57,109.99
PING_BULK 58,428.95 58,457.23 55,453.14
SET 65,451.25 53,479.60 57,497.53
GET 68,538.76 50,075.38 57,157.16
INCR 73,527.31 53,560.93 55,939.91
LPUSH 69,139.43 48,015.23 58,951.83
RPUSH 71,894.19 50,203.37 57,703.71
LPOP 71,098.72 50,752.64 56,650.94
RPOP 69,684.18 52,063.91 55,335.97
SADD 68,376.48 56,393.02 54,516.48
HSET 64,383.89 47,876.91 57,782.21
SPOP 61,403.54 59,065.90 55,848.86
LRANGE_100 (first 100 elements) 28,538.76 26,498.22 39,926.35
LRANGE_300 (first 300 elements) 11,361.02 10,166.03 16,726.98
LRANGE_500 (first 500 elements) 7,871.50 7,100.11 11,425.41
LRANGE_600 (first 600 elements) 6,688.44 5,263.32 9,277.14
MSET (10 keys) 37,688.12 28,234.83 47,581.62

Conclusion

As mentioned, Linode’s performance wasn’t where it usually is, with noticeable lag that seems to have impacted every category of benchmarks.

I mention it pretty regularly, it’s always a great idea to spin up multiple instances with a provider to ensure you’re on the latest and greatest hardware. This is especially true for the providers that aren’t transparent with the underlying processor. It’s also good to run your own independent benchmarks and factor in the needs of your own application when choosing a provider.

If these benchmarks helped you make a decision on a new hosting company, please use one of my referral links below.

Or if you’re feeling really generous, show off your favorite tech stack by picking up a shirt!

Join the Conversation

Good stuff? Want more?

Weekly emails about technology, development, and sometimes sauerkraut.

100% Fresh, Grade A Content, Never Spam.

Related Articles