$5 VPS Showdown - April 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?

This month is some what of a special one. First, DigitalOcean recently had their IPO, which helps further legitimizes them as a company. Also, this marks the first month where I’m doing both a $5 and $6 VPS Showdown.

I know some of you probably want to see a comparison of the $5 plans along side the $6 dollar plans. While that is still a good comparison to make, I do like keeping the comparisons more apples-to-apples. If nothing else, the $6 plans, while they tend to perform a bit better, they aren’t just a buck extra, they are 20% extra. Thus, when you scale up from the $6 plan, things actually get a lot pricier than they do with the “standard” plans.

As per usual, I spun up 3 instances of the $5 plan with each provider, each running Ubuntu 20.04 LTS and averaged the results.

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 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 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 - All Instances DO-Regular
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 7601 32-Core Processor
Linode - Instance #3 AMD EPYC 7542 32-Core Processor
UpCloud - All Instances AMD EPYC 7542 32-Core Processor
Vultr - Instance #1 Intel Core Processor (Haswell, no TSX, IBRS)
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,196.26 2,396.75 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 2,729.67 3,196.67 3,399.67 3,859.67 3,196.00

It’s really interesting to see DigitalOcean obscuring their underlying CPU model now that they are offering “premium” CPUs. Definitely makes me wonder if they are hosting their “DO-Regular” instances on the same servers, just simply scaled down / throttled differently.

CPU

  DigitalOcean Lightsail Linode UpCloud Vultr
Events per Second 849.08 775.39 1,322.94 1,644.70 730.78
Minimum (ms) 1.19 1.20 0.70 0.58 1.24
Average (ms) 1.26 1.29 0.78 0.61 1.37
Maximum (ms) 2.95 7.41 6.42 3.51 11.37

Memory

Read

  DigitalOcean Lightsail Linode UpCloud Vultr
Ops per Second 3,991,025.35 533,982.97 3,184,228.72 5,446,708.38 3,388,382.39
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.31 0.23 5.62 0.26 8.70

Write

  DigitalOcean Lightsail Linode UpCloud Vultr
Ops per Second 3,954,633.62 530,507.02 3,177,298.37 5,378,615.97 3,401,329.14
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.45 0.20 3.52 0.23 4.46

File I/O

  DigitalOcean Lightsail Linode UpCloud Vultr
Reads per Second 1,891.04 1,001.61 1,705.29 2,960.67 1,357.56
Writes per Second 1,260.70 667.72 1,136.84 1,973.78 905.02
Fsyncs per Second 4,041.02 2,139.60 3,645.77 6,319.86 2,902.52
Minimum (ms) 0.00 0.00 0.00 0.00 0.00
Average (ms) 0.14 0.28 0.16 0.09 0.22
Maximum (ms) 6.28 11.65 122.91 11.39 13.12

MySQL

Read Only

  DigitalOcean Lightsail Linode UpCloud Vultr
Transactions per Second 5,302.67 5,160.00 5,394.33 9,855.67 4,346.67
Queries per Second 84,842.67 82,560.00 86,309.33 157,690.67 69,546.67
Minimum (ms) 1.59 1.67 1.59 0.87 1.74
Average (ms) 2.04 1.93 2.23 1.01 2.31
Maximum (ms) 14.66 22.98 14.65 6.07 20.68

Write Only

  DigitalOcean Lightsail Linode UpCloud Vultr
Transactions per Second 2,908.33 1,653.00 4,251.33 4,898.67 3,091.33
Queries per Second 17,450.00 9,918.00 25,508.00 29,392.00 18,548.00
Minimum (ms) 1.43 3.47 1.29 1.22 1.52
Average (ms) 3.56 6.41 3.69 2.05 3.28
Maximum (ms) 56.17 34.28 34.50 14.64 73.48

Read Write

  DigitalOcean Lightsail Linode UpCloud Vultr
Transactions per Second 1,470.33 1,121.67 1,820.33 2,911.00 1,282.00
Queries per Second 29,406.67 22,433.33 36,406.67 58,220.00 25,640.00
Minimum (ms) 3.94 5.41 3.86 2.29 4.10
Average (ms) 7.51 9.09 7.37 3.44 8.26
Maximum (ms) 70.71 108.90 39.98 14.84 38.51

Redis

  DigitalOcean Lightsail Linode UpCloud Vultr
PING_INLINE 38,009.06 47,197.66 54,921.25 103,417.22 32,481.31
PING_BULK 37,617.27 47,049.64 55,599.32 98,498.97 31,671.99
SET 37,174.28 46,837.29 54,562.23 106,713.88 32,678.41
GET 37,061.07 47,344.05 55,777.75 103,392.73 31,944.38
INCR 36,898.19 47,366.42 53,934.46 105,849.26 31,897.50
LPUSH 38,327.49 47,587.11 47,765.21 101,942.64 34,119.10
RPUSH 39,314.05 47,050.38 50,249.89 104,036.58 33,777.74
LPOP 37,641.74 47,427.99 49,108.06 101,815.94 33,195.97
RPOP 37,898.88 47,557.49 49,916.99 102,581.72 32,908.14
SADD 38,430.05 47,114.07 50,779.37 105,701.05 32,480.64
HSET 37,930.52 47,943.94 43,830.60 99,886.76 34,291.38
SPOP 37,920.55 47,146.62 54,398.88 101,325.82 32,066.63
LRANGE_100 (first 100 elements) 25,240.10 29,751.27 23,042.68 42,917.50 22,806.70
LRANGE_300 (first 300 elements) 10,418.76 13,235.65 8,519.84 21,092.68 9,482.68
LRANGE_500 (first 500 elements) 7,559.11 9,616.15 6,125.26 13,902.79 6,673.36
LRANGE_600 (first 600 elements) 6,098.82 7,730.08 5,042.65 11,164.67 5,302.17
MSET (10 keys) 34,462.84 38,910.11 25,706.77 55,289.93 29,068.27

Conclusion

As always, these benchmarks provide some good insight to what these VPS hosting providers offer, but your mileage may vary for your own website or application. Always take your own needs into consideration when choosing a hosting provider, and if you happen to have found this post helpful in making your decision, 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.

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.

Currently Reading

Parasie Eve

Previous Reads

Buy Me a Coffee Become a Sponsor

Related Articles