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
Linux Distro | Ubuntu 24.04 LTS |
Kernel Version | 6.8.0 |
MySQL Version | 8.0.41 |
Redis Version | 7.0.15 |
DigitalOcean Regular | Linode Nanode | Vultr Cloud 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) |
DigitalOcean Regular | Linode Nanode | Vultr Cloud 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
DigitalOcean Regular | Linode Nanode | Vultr Cloud 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
DigitalOcean Regular | Linode Nanode | Vultr Cloud 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
DigitalOcean Regular | Linode Nanode | Vultr Cloud 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
DigitalOcean Regular | Linode Nanode | Vultr Cloud 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
DigitalOcean Regular | Linode Nanode | Vultr Cloud 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
DigitalOcean Regular | Linode Nanode | Vultr Cloud 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
DigitalOcean Regular | Linode Nanode | Vultr Cloud 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
DigitalOcean Regular | Linode Nanode | Vultr Cloud 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.