DigitalOcean Regular (4 GB, 2 Cores) vs. UpCloud Balanced (2 GB)

vs.

My friend, I'm so glad you're here! Today I've spun up brand new instance from DigitalOcean and UpCloud to run some benchmarks on. Each instance was spun up with Ubuntu 24.04 LTS x64 and were created in or around the New York / New Jersey area. Time to see who showed up today.

Overview

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Last Benchmarked Tue, 12 May 2026 02:00:52 GMT Wed, 13 May 2026 07: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 New York, NY
Monthly Price $24.00 €13.00
RAM (GB) 4 2
CPU Cores 2 1
Storage (TB) 80 50
Storage Type SSD SSD
Transfer (TB) 4 2

CPU

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Vendor GenuineIntel AuthenticAMD
Model Name DO-Regular AMD EPYC 9575F 64-Core Processor
Clock Speed (MHz) 2,294.61 3,295.48
CPU Cache Size (KB) 4,096.00 512.00
BogoMips 4,589.21 6,590.95
Events per Second 697.47 5,025.21
Minimum Latency (ms) 0.97 0.18
Average Latency (ms) 1.43 0.2
Maximum Latency (ms) 15.8 5.35
95th Percentile Latency (ms) 3.36 0.22

Memory

Memory Read

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Operations per second 3,412,092.37 5,932,400.60
Mebibytes per second 3,332.12 5,793.36
Minimum Latency (ms) 0 0
Average Latency (ms) 0 0
Maximum Latency (ms) 3.5 2.22
95th Percentile Latency (ms) 0 0

Memory Write

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Operations per second 3,386,795.06 6,706,599.41
Mebibytes per second 3,307.42 6,549.41
Minimum Latency (ms) 0 0
Average Latency (ms) 0 0
Maximum Latency (ms) 1.16 1.56
95th Percentile Latency (ms) 0 0

File I/O

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Reads per Second 1,540.78 3,214.64
Writes per Second 1,027.19 2,143.03
Fsyncs per Second 3,299.48 6,864.71
Read Mebibytes per Second 24.07 50.23
Written Mebibytes per Second 16.05 33.48
Minimum Latency (ms) 0 0
Average Latency (ms) 0.17 0.08
Maximum Latency (ms) 32.93 20.14
95th Percentile Latency (ms) 0.58 0.31

Mutex

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Minimum Latency (ms) 1,127.52 1,349.13
Average Latency (ms) 1,169.63 1,353.60
Maximum Latency (ms) 1,192.95 1,361.99
95th Percentile Latency (ms) 1,191.92 1,352.03

MySQL

MySQL Read-only

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 3,533.00 19,090.00
Queries per second 35,330.00 190,900.00
Minimum Latency (ms) 1.53 0.31
Average Latency (ms) 2.82 0.52
Maximum Latency (ms) 23.79 5.34
95th Percentile Latency (ms) 3.75 0.64

MySQL Write-only

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 1,921.00 3,974.00
Queries per second 19,210.00 39,740.00
Minimum Latency (ms) 2.85 0.87
Average Latency (ms) 5.2 2.51
Maximum Latency (ms) 38.8 38.67
95th Percentile Latency (ms) 7.3 5

MySQL Read/Write

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 1,124.00 2,830.00
Queries per second 11,240.00 28,300.00
Minimum Latency (ms) 5.43 1.29
Average Latency (ms) 8.89 3.53
Maximum Latency (ms) 41.98 56.72
95th Percentile Latency (ms) 12.3 6.32

MySQL INSERT

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 2,363.00 4,647.00
Queries per second 23,630.00 46,470.00
Minimum Latency (ms) 2.43 0.61
Average Latency (ms) 4.22 2.15
Maximum Latency (ms) 43.91 28.58
95th Percentile Latency (ms) 6.21 4.41

MySQL Bulk INSERT

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 771,895.00 2,249,592.00
Queries per second 7,718,950.00 22,495,920.00
Minimum Latency (ms) 0 0
Average Latency (ms) 0.01 0
Maximum Latency (ms) 720.67 207.34
95th Percentile Latency (ms) 0 0

MySQL SELECT

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 116,104.00 645,161.00
Queries per second 1,161,040.00 6,451,610.00
Minimum Latency (ms) 0.04 0.01
Average Latency (ms) 0.09 0.02
Maximum Latency (ms) 2.46 2.26
95th Percentile Latency (ms) 0.12 0.02

MySQL SELECT (Random Points)

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 3,693.00 8,546.00
Queries per second 36,930.00 85,460.00
Minimum Latency (ms) 0.85 0.13
Average Latency (ms) 2.7 1.17
Maximum Latency (ms) 35.33 172.57
95th Percentile Latency (ms) 3.68 1.58

MySQL SELECT (Random Ranges)

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 2,614.00 11,562.00
Queries per second 26,140.00 115,620.00
Minimum Latency (ms) 1.1 0.22
Average Latency (ms) 3.82 0.86
Maximum Latency (ms) 21.26 4.07
95th Percentile Latency (ms) 5.67 1.27

MySQL UPDATE (Indexed)

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 2,513.00 4,711.00
Queries per second 25,130.00 47,110.00
Minimum Latency (ms) 2.1 0.73
Average Latency (ms) 3.97 2.12
Maximum Latency (ms) 36.25 30.41
95th Percentile Latency (ms) 5.99 3.96

MySQL UPDATE (Non-Indexed)

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 2,177.00 5,393.00
Queries per second 21,770.00 53,930.00
Minimum Latency (ms) 2.18 0.48
Average Latency (ms) 4.59 1.85
Maximum Latency (ms) 169.62 39
95th Percentile Latency (ms) 7.43 3.43

MySQL DELETE

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
Transactions per second 12,257.00 101,195.00
Queries per second 122,570.00 1,011,950.00
Minimum Latency (ms) 0.05 0.01
Average Latency (ms) 0.81 0.1
Maximum Latency (ms) 36.29 39.3
95th Percentile Latency (ms) 4.25 0.17

Redis

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
PING_INLINE per Second 49,431.54 130,208.34
PING_MBULK per Second 50,327.12 130,208.34
SET per Second 46,926.32 130,890.05
GET per Second 45,372.05 129,198.97
INCR per Second 44,563.28 128,534.70
LPUSH per Second 50,125.31 128,040.97
RPUSH per Second 54,945.05 126,582.27
LPOP per Second 53,763.44 124,688.28
RPOP per Second 57,570.52 127,226.46
SADD per Second 51,572.98 129,198.97
HSET per Second 47,664.44 133,511.34
SPOP per Second 46,641.79 139,275.77
ZADD per Second 55,586.44 130,039.02
ZPOPMIN per Second 50,916.50 129,701.68
LRANGE_100 (first 100 elements) per Second 28,105.68 55,524.71
LRANGE_300 (first 300 elements) per Second 11,893.43 28,785.26
LRANGE_500 (first 500 elements) per Second 8,426.02 18,942.98
LRANGE_600 (first 600 elements) per Second 6,626.91 17,038.68
MSET (10 keys) per Second 44,189.13 108,225.10

Redis Average Latency (ms)

DigitalOcean – Regular (4 GB, 2 Cores) UpCloud – Balanced (2 GB)
PING_INLINE0.530.25
PING_MBULK0.520.25
SET0.560.26
GET0.580.26
INCR0.600.26
LPUSH0.530.26
RPUSH0.490.27
LPOP0.500.27
RPOP0.480.27
SADD0.510.26
HSET0.560.26
SPOP0.570.24
ZADD0.480.26
ZPOPMIN0.520.26
LRANGE_100 (first 100 elements)1.070.66
LRANGE_300 (first 300 elements)2.401.27
LRANGE_500 (first 500 elements)3.421.95
LRANGE_600 (first 600 elements)4.802.16
MSET (10 keys)0.790.34

Conclusion

From the friendly robots:

After analyzing the benchmark data from the two VPS providers, it's clear that the DigitalOcean instance performs moderately across the board with solid scores in CPU operations, memory management, and thread fairness. While its Redis benchmarks are competitive, they aren't as high as those from the UpCloud instance, especially in operations like LPUSH and LRANGE which have notably lower latencies and higher throughput rates. The UpCloud instance excels in almost all benchmarks, especially in Redis operations where it shows significantly higher request rates per second and lower latencies across a variety of commands. The CPU performance, while single-core, also outperforms DigitalOcean, and its memory operations are similarly robust. Thus, for workloads heavily reliant on Redis performance and single-core processing, such as high-traffic applications or database-intensive tasks, the UpCloud instance would be more suitable. Conversely, for more balanced usage cases where moderate performance across multiple metrics is crucial, such as general-purpose applications or when cost is a significant factor, the DigitalOcean instance could be the preferable choice.

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 UpCloud.

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