DigitalOcean Regular (2 GB) vs. Linode Linode (4 GB)

vs.

Same showdown, different day. Today I've spun up brand new instance from DigitalOcean and Linode to run some benchmarks on. Each instance was running Ubuntu 24.04 LTS x64 and were created in or around the New York / New Jersey area. Enough talk. Here's the data.

Overview

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Last Benchmarked Tue, 12 May 2026 23:00:52 GMT Sun, 10 May 2026 11:00:52 GMT
Linux Distro Ubuntu 24.04 LTS x64 Ubuntu 24.04 LTS x64
Kernel Version 6.8.0-71-generic 6.8.0-111-generic
MySQL Version 8.0.45-0ubuntu0.24.04.1 8.0.45-0ubuntu0.24.04.1
Redis Version 7.0.15 7.0.15
Location New York, NY Newark, NJ
Monthly Price $12.00 $24.00
RAM (GB) 2 4
CPU Cores 1 2
Storage (TB) 50 80
Storage Type SSD SSD
Transfer (TB) 2 4

CPU

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Vendor GenuineIntel AuthenticAMD
Model Name DO-Regular AMD EPYC 7642 48-Core Processor
Clock Speed (MHz) 2,294.61 2,300.00
CPU Cache Size (KB) 4,096.00 512.00
BogoMips 4,589.21 4,599.99
Events per Second 408.72 1,565.18
Minimum Latency (ms) 0.98 0.61
Average Latency (ms) 2.44 0.64
Maximum Latency (ms) 30.57 29.29
95th Percentile Latency (ms) 4.1 0.67

Memory

Memory Read

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Operations per second 1,633,276.41 5,196,836.70
Mebibytes per second 1,595.00 5,075.04
Minimum Latency (ms) 0 0
Average Latency (ms) 0 0
Maximum Latency (ms) 3.35 6.67
95th Percentile Latency (ms) 0 0

Memory Write

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Operations per second 1,592,941.48 5,265,799.25
Mebibytes per second 1,555.61 5,142.38
Minimum Latency (ms) 0 0
Average Latency (ms) 0 0
Maximum Latency (ms) 5.53 3.2
95th Percentile Latency (ms) 0 0

File I/O

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Reads per Second 1,584.78 4,130.88
Writes per Second 1,056.52 2,753.92
Fsyncs per Second 3,385.97 8,824.83
Read Mebibytes per Second 24.76 64.54
Written Mebibytes per Second 16.51 43.03
Minimum Latency (ms) 0 0
Average Latency (ms) 0.16 0.06
Maximum Latency (ms) 20.31 13.64
95th Percentile Latency (ms) 0.51 0.2

Mutex

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Minimum Latency (ms) 2,434.32 1,558.43
Average Latency (ms) 2,473.55 1,574.75
Maximum Latency (ms) 2,489.41 1,589.79
95th Percentile Latency (ms) 2,493.86 1,589.90

MySQL

MySQL Read-only

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 4,752.00 5,967.00
Queries per second 47,520.00 59,670.00
Minimum Latency (ms) 1.23 1.33
Average Latency (ms) 2.1 1.67
Maximum Latency (ms) 5.76 8.89
95th Percentile Latency (ms) 2.66 1.96

MySQL Write-only

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 1,930.00 5,997.00
Queries per second 19,300.00 59,970.00
Minimum Latency (ms) 2.65 1.09
Average Latency (ms) 5.18 1.67
Maximum Latency (ms) 56.83 6.64
95th Percentile Latency (ms) 7.98 2.22

MySQL Read/Write

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 1,306.00 2,949.00
Queries per second 13,060.00 29,490.00
Minimum Latency (ms) 4.6 2.51
Average Latency (ms) 7.65 3.39
Maximum Latency (ms) 28.54 13.89
95th Percentile Latency (ms) 10.09 4.25

MySQL INSERT

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 3,148.00 7,651.00
Queries per second 31,480.00 76,510.00
Minimum Latency (ms) 1.72 0.87
Average Latency (ms) 3.17 1.3
Maximum Latency (ms) 32.67 10.4
95th Percentile Latency (ms) 4.41 1.67

MySQL Bulk INSERT

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 669,209.00 1,463,217.00
Queries per second 6,692,090.00 14,632,170.00
Minimum Latency (ms) 0 0
Average Latency (ms) 0.02 0.01
Maximum Latency (ms) 772.1 458.31
95th Percentile Latency (ms) 0 0

MySQL SELECT

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 136,020.00 132,624.00
Queries per second 1,360,200.00 1,326,240.00
Minimum Latency (ms) 0.04 0.05
Average Latency (ms) 0.07 0.08
Maximum Latency (ms) 3.33 5.29
95th Percentile Latency (ms) 0.11 0.1

MySQL SELECT (Random Points)

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 3,617.00 8,339.00
Queries per second 36,170.00 83,390.00
Minimum Latency (ms) 0.82 0.4
Average Latency (ms) 2.76 1.2
Maximum Latency (ms) 12.27 8.39
95th Percentile Latency (ms) 3.82 1.58

MySQL SELECT (Random Ranges)

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 3,087.00 6,885.00
Queries per second 30,870.00 68,850.00
Minimum Latency (ms) 0.67 0.38
Average Latency (ms) 3.23 1.45
Maximum Latency (ms) 8.52 10.66
95th Percentile Latency (ms) 5.18 1.89

MySQL UPDATE (Indexed)

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 2,586.00 6,026.00
Queries per second 25,860.00 60,260.00
Minimum Latency (ms) 1.8 0.74
Average Latency (ms) 3.86 1.66
Maximum Latency (ms) 45.13 83.52
95th Percentile Latency (ms) 6.21 2.22

MySQL UPDATE (Non-Indexed)

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 3,094.00 7,626.00
Queries per second 30,940.00 76,260.00
Minimum Latency (ms) 1.83 0.74
Average Latency (ms) 3.23 1.31
Maximum Latency (ms) 35.75 8.03
95th Percentile Latency (ms) 4.65 1.86

MySQL DELETE

DigitalOcean – Regular (2 GB) Linode – (4 GB)
Transactions per second 19,562.00 39,987.00
Queries per second 195,620.00 399,870.00
Minimum Latency (ms) 0.04 0.04
Average Latency (ms) 0.51 0.25
Maximum Latency (ms) 32.94 117.36
95th Percentile Latency (ms) 3.02 1.23

Redis

DigitalOcean – Regular (2 GB) Linode – (4 GB)
PING_INLINE per Second 39,729.84 53,447.35
PING_MBULK per Second 42,176.30 52,192.07
SET per Second 40,833.00 52,273.91
GET per Second 34,590.11 53,475.94
INCR per Second 35,410.77 53,879.31
LPUSH per Second 39,184.95 54,406.96
RPUSH per Second 36,509.68 55,035.77
LPOP per Second 36,791.76 54,794.52
RPOP per Second 38,834.95 54,734.54
SADD per Second 35,727.05 55,991.04
HSET per Second 35,790.98 51,975.05
SPOP per Second 39,478.88 53,219.80
ZADD per Second 38,850.04 50,175.61
ZPOPMIN per Second 40,338.84 53,937.43
LRANGE_100 (first 100 elements) per Second 17,461.15 43,252.59
LRANGE_300 (first 300 elements) per Second 7,711.29 26,021.34
LRANGE_500 (first 500 elements) per Second 4,860.50 18,214.94
LRANGE_600 (first 600 elements) per Second 4,094.67 16,469.04
MSET (10 keys) per Second 32,041.01 55,679.29

Redis Average Latency (ms)

DigitalOcean – Regular (2 GB) Linode – (4 GB)
PING_INLINE0.830.49
PING_MBULK0.780.51
SET0.820.50
GET0.940.49
INCR0.930.48
LPUSH0.850.48
RPUSH0.910.47
LPOP0.920.47
RPOP0.870.47
SADD0.920.46
HSET0.930.50
SPOP0.840.49
ZADD0.860.51
ZPOPMIN0.820.48
LRANGE_100 (first 100 elements)2.050.61
LRANGE_300 (first 300 elements)4.591.04
LRANGE_500 (first 500 elements)7.191.48
LRANGE_600 (first 600 elements)8.421.59
MSET (10 keys)1.120.49

Conclusion

From the friendly robots:

After analyzing the benchmark results for the DigitalOcean Regular (2 GB) and Linode (4 GB) instances, it's clear that the Linode instance performs better across a range of metrics due to its higher CPU count, more RAM, and larger cache size, which translates to better overall performance in CPU-intensive tasks, database operations, and Redis operations. The Linode instance showed higher RPS rates and lower latencies in most Redis benchmarks, higher throughput and lower latencies in file I/O operations, and faster MySQL operations. However, the DigitalOcean instance had slightly lower individual latency values in some specific Redis commands and in memory operations, but overall the Linode instance's higher resource allocation gives it a clear edge in most performance aspects. Therefore, for workloads that demand high CPU performance, substantial memory usage, and rapid I/O operations, the Linode (4 GB) instance would be the better choice, while the DigitalOcean Regular (2 GB) could still suffice for less demanding tasks or when budget constraints are a primary concern.

From the friendly human:

If you found this VPS Showdown helpful in your search for a hosting provider, please consider supporting my efforts by signing up using my referral links for DigitalOcean and Linode.

You can also support me directly by buying me a coffee.