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

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

Hot on the heels of Linode offering up AMD EPYC processors, DigitalOcean has started to offer “premium” CPUs as part of their Shared CPU Basic plans. Unfortunately, this new offering comes with a slightly elevated price, clocking in at $6 per month instead of $5.

This new product offering lines up with Vultr’s “High Frequency” plans, with not just a choice of Intel or AMD processor, but also NVMe SSDs. With the price being a bit higher, I won’t be reviewing that particular plan on this post. If the trend happens to continue with another provider, I’ll probably end up doing a $6 Showdown as well as this $5 one.

As always, I spun up 3 instances of each provider’s $5 instances, in or around the New York area, running Ubuntu 20.04 LTS. I’ve averaged the results where applicable.

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.23 8.0.23 8.0.23 8.0.23 8.0.23
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 SSD 40 GB SSD 25 GB SSD 25 GB SSD 25 GB 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 in beta 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 Yes Yes No No No
2FA/MFA Yes Yes Yes Yes Yes
One-click Apps Yes Yes Yes No Yes
Custom Images Yes No No Yes Yes
Kubernetes Yes Yes Yes No No
Container Registry Yes Yes No No No

CPU Info

  Model Name
DigitalOcean - Instance #1 Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz
DigitalOcean - Instance #2 Intel(R) Xeon(R) CPU E5-2650L v3 @ 1.80GHz
DigitalOcean - Instance #3 Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
Lightsail - All Instances Intel(R) Xeon(R) CPU E5-2676 v3 @ 2.40GHz
Linode - Instance #1 AMD EPYC 7601 32-Core Processor
Linode - Instance #2 AMD EPYC 7542 32-Core Processor
Linode - Instance #3 AMD EPYC 7601 32-Core Processor
UpCloud - All Instances AMD EPYC 7542 32-Core Processor
Vultr - Instance #1 Virtual CPU a7769a6388d5
Vultr - Instance #2 Intel Core Processor (Broadwell, no TSX, IBRS)
Vultr - Instance #3 Intel Core Processor (Broadwell, no TSX, IBRS)
  DigitalOcean Lightsail Linode UpCloud Vultr
CPU MHz 2,164.69 2,400.04 2,433.33 2,894.56 2,396.30
Cache Size (KB) 4,096.00 30,720.00 512.00 512.00 16,384.00
BogoMips 3,129.33 3,200.33 2,933.00 3,859.67 3,196.00

CPU

  DigitalOcean Lightsail Linode UpCloud Vultr
Events per Second 758.11 763.18 1,386.49 1,665.64 760.38
Minimum (ms) 1.28 1.25 0.69 0.58 1.19
Average (ms) 1.36 1.31 0.73 0.60 1.31
Maximum (ms) 3.43 2.33 7.20 3.72 8.12

Memory

Read

  DigitalOcean Lightsail Linode UpCloud Vultr
Ops per Second 3,662,302.48 525,691.64 4,163,626.43 5,556,338.55 3,383,752.71
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) 0.32 0.27 4.86 1.34 5.94

Write

  DigitalOcean Lightsail Linode UpCloud Vultr
Ops per Second 3,602,487.76 525,047.02 4,132,793.04 5,568,582.30 3,431,841.97
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) 0.46 0.23 3.91 0.53 3.40

File I/O

  DigitalOcean Lightsail Linode UpCloud Vultr
Reads per Second 1,948.70 959.74 3,132.38 2,861.80 1,598.98
Writes per Second 1,299.11 639.81 2,088.23 1,907.82 1,066.00
Fsyncs per Second 4,164.21 2,054.00 6,688.80 6,110.15 3,417.16
Minimum (ms) 0.00 0.00 0.00 0.00 0.00
Average (ms) 0.14 0.28 0.08 0.09 0.16
Maximum (ms) 40.27 13.45 19.09 10.67 14.30

MySQL

Read Only

  DigitalOcean Lightsail Linode UpCloud Vultr
Transactions per Second 4,609.00 5,050.67 5,597.67 9,838.33 4,357.00
Queries per Second 73,744.00 80,810.67 89,562.67 157,413.33 69,712.00
Minimum (ms) 1.78 1.72 1.40 0.87 1.69
Average (ms) 2.20 1.98 1.92 1.02 2.31
Maximum (ms) 17.04 38.73 14.09 9.88 18.80

Write Only

  DigitalOcean Lightsail Linode UpCloud Vultr
Transactions per Second 3,479.00 1,624.00 4,178.67 4,734.33 2,844.00
Queries per Second 20,874.00 9,744.00 25,072.00 28,406.00 17,064.00
Minimum (ms) 1.45 3.00 1.07 1.22 1.55
Average (ms) 2.94 6.27 2.81 2.11 3.65
Maximum (ms) 61.36 55.28 25.01 17.72 30.28

Read Write

  DigitalOcean Lightsail Linode UpCloud Vultr
Transactions per Second 1,496.33 1,137.33 2,052.33 2,877.00 1,355.33
Queries per Second 29,926.67 22,746.67 41,046.67 57,540.00 27,106.67
Minimum (ms) 3.96 5.24 2.98 2.30 4.33
Average (ms) 6.89 8.81 5.47 3.47 7.71
Maximum (ms) 24.43 73.13 35.32 23.81 35.33

Redis

  DigitalOcean Lightsail Linode UpCloud Vultr
PING_INLINE 37,623.93 45,410.72 58,974.25 108,098.48 36,846.00
PING_BULK 36,338.74 45,387.63 56,870.26 105,789.30 36,213.10
SET 36,366.64 45,677.55 62,516.67 109,102.45 37,936.87
GET 36,247.54 45,573.94 56,339.54 107,345.52 36,711.14
INCR 36,519.17 45,532.74 60,133.03 108,692.23 37,143.15
LPUSH 37,881.55 46,002.30 55,345.30 101,592.25 37,707.68
RPUSH 38,489.30 45,967.64 59,719.33 103,248.32 38,963.22
LPOP 37,874.34 46,052.12 54,242.48 101,869.93 38,879.93
RPOP 37,912.41 45,809.46 63,470.60 104,476.81 38,996.45
SADD 37,923.99 45,775.36 64,030.47 108,744.83 37,557.08
HSET 37,716.42 45,938.61 61,750.35 101,183.30 39,689.59
SPOP 36,321.39 45,419.66 59,478.74 107,349.57 36,904.29
LRANGE_100 (first 100 elements) 25,235.75 29,826.36 26,382.81 40,908.73 24,286.55
LRANGE_300 (first 300 elements) 9,883.37 13,019.92 8,492.53 21,648.22 9,801.93
LRANGE_500 (first 500 elements) 7,400.12 9,163.60 6,286.67 14,328.88 6,880.06
LRANGE_600 (first 600 elements) 5,421.27 7,663.72 5,083.62 11,296.33 5,725.78
MSET (10 keys) 30,076.42 37,789.90 31,406.88 55,119.18 27,981.76

Conclusion

Remember, YMMV and you should do your own benchmarks as well as weigh out the needs of your particular use cases when deciding on a hosting provider. If you happened to have found this post helpful in your journey to find a new hosting provider, please use one of my referral links below.

Until next month, happy hosting!

Join the Conversation

Good stuff? Want more?

Weekly emails about technology, development, and sometimes sauerkraut.

100% Fresh, Grade A Content, Never Spam.

Related Articles