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

in VPS Showdown

VPS Showdown – February 2025 – DigitalOcean vs. Linode vs. Vultr

After the last couple of months of comparing all of the nuanced instances available from DigitalOcean and Vultr, I decided to just keep things simple, and stick to comparing the the "regular" instances from everybody. If nothing else, it feels unfair to Akamai Linode to compare their always consistently priced $5 offering to these higher priced offerings.

That said, those are the plans to definitely weigh out to see if any of them line up with your needs. This is especially true with Vultr's High Frequency plan, which offers a higher than usual amount of storage for the price.

For me though, I'm still striving for apples to apples comparisons, and at this point, Linode and Vultr are still offering the same $5 plans as always. DigitalOcean just happened to increase their price from $5 to $6 for the regular plan and it is what it is.

No reason to jump through hoops with all of these nuanced plans that at times seem like they are designed to confuse folks. Even if that's not the intent, it does create a lot of decision paralysis when it comes to picking a provider.

All that said, usual deal here. Three instances with each provider, in or around the New York area. All instances are running Ubuntu 24.04 LTS and results are averaged where it makes sense.

Overview - DigitalOcean vs. Linode vs. Vultr

Version
Linux Distro Ubuntu 24.04 LTS
Kernel Version 6.8.0
MySQL Version 8.0.41
Redis Version 7.0.15
DigitalOceanRegular LinodeNanode VultrCloud Compute
Location New York 1 Newark, NJ New York (NJ)
Monthly Price $6/month $5/month $5/month
Hourly Price $0.009/hour $0.0075/hour $0.007/hour
RAM 1 GB 1 GB 1 GB
CPU 1 Core 1 Core 1 Core
Storage 25 GB 25 GB 25 GB
Storage Type SSD SSD NVMe
Transfer 1 TB 1 TB 1 TB
Transfer Overage $0.01/GB $0.01/GB $0.01/GB
Weekly Backups $1.20/month $2/month* $1.00/month*
Daily Backups $1.80/month $2/month* $1.00/month*

CPU Info

Model Name
DigitalOcean Regular - All Instances DO-Regular
Linode Nanode - All Instances AMD EPYC 7601 32-Core Processor
Vultr Cloud Compute - All Instances Intel Core Processor (Broadwell, no TSX, IBRS)
DigitalOceanRegular LinodeNanode VultrCloud Compute
CPU MHz 2,494.14 2,200.00 2,396.30
Cache Size (KB) 4,096.00 512.00 16,384.00
BogoMips 4,988.27 2,933.00 3,196.00

CPU

DigitalOceanRegular LinodeNanode VultrCloud Compute
Events per Second 975.67 1,258.48 836.01
Minimum (ms) 0.91 0.71 1.12
Average (ms) 1.02 0.79 1.19
Maximum (ms) 2.80 4.90 5.16

Memory

Read

DigitalOceanRegular LinodeNanode VultrCloud Compute
Ops per Second 4,171,366.60 3,821,274.07 4,027,697.69
Minimum (ms) 0.00 0.00 0.00
Average (ms) 0.00 0.00 0.00
Maximum (ms) 1.19 5.78 0.83

Write

DigitalOceanRegular LinodeNanode VultrCloud Compute
Ops per Second 4,414,595.09 3,909,151.74 4,038,069.43
Minimum (ms) 0.00 0.00 0.00
Average (ms) 0.00 0.00 0.00
Maximum (ms) 0.90 4.17 1.54

File I/O

DigitalOceanRegular LinodeNanode VultrCloud Compute
Reads per Second 1,209.82 1,856.52 1,926.48
Writes per Second 806.55 1,237.67 1,284.29
Fsyncs per Second 2,589.70 3,966.35 4,116.86
Minimum (ms) 0.00 0.00 0.00
Average (ms) 0.22 0.14 0.14
Maximum (ms) 19.87 14.68 9.67

MySQL

Read Only

DigitalOceanRegular LinodeNanode VultrCloud Compute
Transactions per Second 4,341.00 3,011.67 4,061.00
Queries per Second 69,456.00 48,186.67 64,976.00
Minimum (ms) 1.28 2.06 1.77
Average (ms) 2.36 3.32 2.46
Maximum (ms) 12.45 17.25 22.59

Write Only

DigitalOceanRegular LinodeNanode VultrCloud Compute
Transactions per Second 1,447.67 2,200.67 2,804.67
Queries per Second 8,686.00 13,204.00 16,828.00
Minimum (ms) 2.24 1.99 1.76
Average (ms) 6.94 4.63 3.58
Maximum (ms) 86.85 29.93 27.29

Read Write

DigitalOceanRegular LinodeNanode VultrCloud Compute
Transactions per Second 931.33 1,083.67 1,296.67
Queries per Second 18,626.67 21,673.33 25,933.33
Minimum (ms) 4.66 4.91 4.11
Average (ms) 10.75 9.27 7.77
Maximum (ms) 58.42 42.47 35.65

Redis

DigitalOceanRegular LinodeNanode VultrCloud Compute
PING_INLINE 41,730.19 27,866.75 34,238.76
PING_MBULK 35,714.10 28,215.50 33,493.66
SET 36,645.47 26,265.46 31,669.64
GET 47,206.14 27,578.58 35,189.14
INCR 48,051.84 28,870.35 35,886.28
LPUSH 41,134.06 27,776.03 35,978.89
RPUSH 35,317.42 29,265.51 35,575.39
LPOP 37,449.11 28,383.36 35,727.35
RPOP 39,702.04 28,172.90 35,422.86
SADD 41,716.20 28,939.46 35,397.73
HSET 41,752.43 29,429.39 35,612.95
SPOP 40,217.80 26,873.58 36,182.70
LRANGE_100 (first 100 elements) 21,472.20 16,647.64 23,529.11
LRANGE_300 (first 300 elements) 8,970.37 8,882.96 12,374.23
LRANGE_500 (first 500 elements) 6,080.29 6,114.04 8,619.40
LRANGE_600 (first 600 elements) 5,875.88 5,071.89 7,480.83
MSET (10 keys) 37,227.52 25,757.93 33,724.63

Conclusion

Given the results of the majority of last year's comparisons, I was surprised to see both DigitalOcean taking the lead in many categories and Linode trailing behind.

I often wonder if doing these comparisons every month are worth it. Months like this, when I see these kinds of shifts, without much context from the providers (known infrastructure upgrades, etc), it makes me think they definitely are.

If nothing else, there is a bit of RNG gambling at play, as you never know when you spin up a new box if you're getting old or new hardware. It's always worth it to spin up a few instances for yourself and see what you get.

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: