joshtronic

This post is old news – Get fresh benchmarks at VPS Showdown (daily updates!)

in VPS Showdown

VPS Showdown – April 2025 – DigitalOcean vs. Linode vs. UpCloud vs. Vultr

As we head into Q2, I sit here and write this post while wearing a hoodie, contemplating turning on the heat. What was supposed to be spring, has taken an odd turn back into the remnants of winter here in Texas.

The first notable observation this month would be DigitalOcean's new GenAI Agent offering. Pretty on brand for them, as they do a good job of bringing more and more managed services to their platform.

The other observation is that based on the current exchange rate, UpCloud's price effectively went up. Obviously, this is probably a situation that's happening all the time, but since I am US-based and primary use services that are USD-focused, I don't notice these things.

This month, I'm sticking to spinning up just a single instance with each provider. All instances are running Ubuntu 24.04 LTS in or around the New York area as per usual.

Overview - DigitalOcean vs. Linode vs. UpCloud vs. Vultr

Version
Linux Distro Ubuntu 24.04 LTS
Kernel Version 6.8.0
MySQL Version 8.0.41
Redis Version 7.0.15
DigitalOcean - Basic - Regular Linode - Shared CPU - Nanode UpCloud - General Purpose - Balanced Vultr - Shared CPU - High Frequency
Location New York 1 Newark, NJ US-NYC1 New York (NJ)
Monthly Price $6/month $5/month $7.67/month $6/month
Hourly Price $0.009/hour $0.0075/hour $0.01/hour $0.008/hour
RAM 1 GB 1 GB 1 GB 1 GB
CPU 1 Core 1 Core 1 Core 1 Core
Storage 25 GB 25 GB 25 GB 32 GB
Storage Type SSD SSD SSD NVMe
Transfer 1 TB 1 TB 1 TB 1 TB
Transfer Overage $0.01/GB $0.01/GB $0.01/GB $0.01/GB
Backups $1.2/month $2/month $0/month $1.2/month

CPU Info

Model Name
DigitalOcean - Basic - Regular DO-Regular
Linode - Shared CPU - Nanode AMD EPYC 7713 64-Core Processor
UpCloud - General Purpose - Balanced AMD EPYC 7542 32-Core Processor
Vultr - Shared CPU - High Frequency Intel Core Processor (Skylake, IBRS)
DigitalOcean - Basic - Regular Linode - Shared CPU - Nanode UpCloud - General Purpose - Balanced Vultr - Shared CPU - High Frequency
CPU MHz 2,494.14 2,000.00 2,894.56 3,696.10
Cache Size (KB) 4,096.00 512.00 512.00 16,384.00
BogoMips 4,988.27 3,999.00 5,789.00 7,392.00

CPU

DigitalOcean - Basic - Regular Linode - Shared CPU - Nanode UpCloud - General Purpose - Balanced Vultr - Shared CPU - High Frequency
Events per Second 868.16 3,445.71 1,622.84 1,507.78
Minimum (ms) 0.91 0.28 0.59 0.62
Average (ms) 1.15 0.29 0.62 0.66
Maximum (ms) 13.75 3.43 1.68 2.67

Memory

Read

DigitalOcean - Basic - Regular Linode - Shared CPU - Nanode UpCloud - General Purpose - Balanced Vultr - Shared CPU - High Frequency
Ops per Second 4,299,791.52 5,347,628.11 5,402,084.61 7,247,845.03
Minimum (ms) 0.00 0.00 0.00 0.00
Average (ms) 0.00 0.00 0.00 0.00
Maximum (ms) 0.34 2.93 0.32 0.21

Write

DigitalOcean - Basic - Regular Linode - Shared CPU - Nanode UpCloud - General Purpose - Balanced Vultr - Shared CPU - High Frequency
Ops per Second 4,040,736.27 5,326,388.66 5,441,570.00 7,461,719.53
Minimum (ms) 0.00 0.00 0.00 0.00
Average (ms) 0.00 0.00 0.00 0.00
Maximum (ms) 0.33 3.30 0.26 0.31

File I/O

DigitalOcean - Basic - Regular Linode - Shared CPU - Nanode UpCloud - General Purpose - Balanced Vultr - Shared CPU - High Frequency
Reads per Second 1,413.11 3,350.48 2,384.56 4,615.07
Writes per Second 942.07 2,233.66 1,589.71 3,076.68
Fsyncs per Second 3,015.74 7,147.90 5,087.17 9,850.82
Minimum (ms) 0.00 0.00 0.00 0.00
Average (ms) 0.19 0.08 0.11 0.06
Maximum (ms) 8.38 3.56 42.70 1.74

MySQL

Read Only

DigitalOcean - Basic - Regular Linode - Shared CPU - Nanode UpCloud - General Purpose - Balanced Vultr - Shared CPU - High Frequency
Transactions per Second 4,119.00 5,863.00 6,234.00 7,690.00
Queries per Second 65,904.00 93,808.00 99,744.00 123,040.00
Minimum (ms) 1.27 1.22 1.25 0.95
Average (ms) 2.42 1.70 1.60 1.30
Maximum (ms) 12.42 20.42 42.10 7.17

Write Only

DigitalOcean - Basic - Regular Linode - Shared CPU - Nanode UpCloud - General Purpose - Balanced Vultr - Shared CPU - High Frequency
Transactions per Second 1,906.00 4,602.00 3,314.00 6,665.00
Queries per Second 11,436.00 27,612.00 19,884.00 39,990.00
Minimum (ms) 1.82 1.06 1.57 0.67
Average (ms) 5.24 2.17 3.02 1.50
Maximum (ms) 26.76 28.77 46.46 26.42

Read Write

DigitalOcean - Basic - Regular Linode - Shared CPU - Nanode UpCloud - General Purpose - Balanced Vultr - Shared CPU - High Frequency
Transactions per Second 1,065.00 2,215.00 1,762.00 3,248.00
Queries per Second 21,300.00 44,300.00 35,240.00 64,960.00
Minimum (ms) 4.84 2.74 3.21 1.89
Average (ms) 9.38 4.51 5.68 3.08
Maximum (ms) 27.29 20.18 67.18 11.24

Redis

DigitalOcean - Basic - Regular Linode - Shared CPU - Nanode UpCloud - General Purpose - Balanced Vultr - Shared CPU - High Frequency
PING_INLINE 46,382.19 45,454.54 44,033.47 59,276.82
PING_MBULK 39,777.25 46,232.08 45,537.34 62,539.09
SET 36,416.61 44,682.75 45,004.50 62,735.26
GET 38,372.98 45,187.53 45,351.48 62,539.09
INCR 32,226.88 46,104.20 46,019.32 60,350.03
LPUSH 37,878.79 45,024.77 45,599.63 62,421.97
RPUSH 36,791.76 44,464.20 45,599.63 61,919.50
LPOP 45,392.64 44,091.71 43,994.72 60,864.27
RPOP 47,236.65 44,150.11 44,822.95 60,532.69
SADD 47,393.37 45,228.40 45,745.65 60,204.70
HSET 46,663.56 45,228.40 45,106.00 59,523.81
SPOP 47,080.98 45,682.96 44,782.80 60,240.96
LRANGE_100 (first 100 elements) 23,020.26 29,761.91 28,587.77 37,965.07
LRANGE_300 (first 300 elements) 12,020.67 16,597.51 15,678.90 20,000.00
LRANGE_500 (first 500 elements) 6,869.55 11,700.01 10,890.87 13,929.52
LRANGE_600 (first 600 elements) 5,723.44 10,294.42 9,532.89 11,572.74
MSET (10 keys) 37,160.91 41,407.87 41,562.76 51,413.88

Conclusion

Things are still pretty consistent, with Vultr's High Frequency offering being one of the best bangs for your buck.

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: