UpCloud Balanced (2 GB, 2 Cores) vs. Vultr Cloud Compute (2 GB, 2 Cores)
Same showdown, different day. Today I've spun up brand new instance from UpCloud and Vultr and ran some benchmarks. Each instance was spun up with Ubuntu 24.04 LTS x64 and were created in the New York area (or close to it). Without further ado, here's the results.
Overview
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Last Benchmarked | Mon, 11 May 2026 07:00:52 GMT | Mon, 11 May 2026 04:00:52 GMT |
| Linux Distro | Ubuntu 24.04 LTS x64 | Ubuntu 24.04 LTS x64 |
| Kernel Version | 6.8.0-111-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 | €18.00 | $15.00 |
| RAM (GB) | 2 | 2 |
| CPU Cores | 2 | 2 |
| Storage (TB) | 60 | 65 |
| Storage Type | SSD | SSD |
| Transfer (TB) | 3 | 3 |
CPU
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Vendor | AuthenticAMD | GenuineIntel |
| Model Name | AMD EPYC 9575F 64-Core Processor | Intel Core Processor (Skylake, IBRS, no TSX) |
| Clock Speed (MHz) | 3,295.48 | 3,792.00 |
| CPU Cache Size (KB) | 512.00 | 16,384.00 |
| BogoMips | 6,590.95 | 7,583.99 |
| Events per Second | 5,300.78 | 1,481.60 |
| Minimum Latency (ms) | 0.17 | 0.63 |
| Average Latency (ms) | 0.19 | 0.67 |
| Maximum Latency (ms) | 0.99 | 1.95 |
| 95th Percentile Latency (ms) | 0.21 | 0.77 |
Memory
Memory Read
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Operations per second | 7,390,852.19 | 6,401,389.08 |
| Mebibytes per second | 7,217.63 | 6,251.36 |
| Minimum Latency (ms) | 0 | 0 |
| Average Latency (ms) | 0 | 0 |
| Maximum Latency (ms) | 0.18 | 0.23 |
| 95th Percentile Latency (ms) | 0 | 0 |
Memory Write
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Operations per second | 7,405,479.75 | 6,411,085.35 |
| Mebibytes per second | 7,231.91 | 6,260.83 |
| Minimum Latency (ms) | 0 | 0 |
| Average Latency (ms) | 0 | 0 |
| Maximum Latency (ms) | 0.53 | 0.18 |
| 95th Percentile Latency (ms) | 0 | 0 |
File I/O
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Reads per Second | 876.47 | 4,345.71 |
| Writes per Second | 584.31 | 2,897.07 |
| Fsyncs per Second | 1,869.90 | 9,273.19 |
| Read Mebibytes per Second | 13.69 | 67.90 |
| Written Mebibytes per Second | 9.13 | 45.27 |
| Minimum Latency (ms) | 0 | 0 |
| Average Latency (ms) | 0.3 | 0.06 |
| Maximum Latency (ms) | 115.92 | 2.92 |
| 95th Percentile Latency (ms) | 1.93 | 0.17 |
Mutex
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Minimum Latency (ms) | 611.59 | 214.63 |
| Average Latency (ms) | 643.08 | 569.72 |
| Maximum Latency (ms) | 670.63 | 636.55 |
| 95th Percentile Latency (ms) | 669.89 | 634.66 |
MySQL
MySQL Read-only
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 17,779.00 | 8,015.00 |
| Queries per second | 177,790.00 | 80,150.00 |
| Minimum Latency (ms) | 0.35 | 0.92 |
| Average Latency (ms) | 0.56 | 1.25 |
| Maximum Latency (ms) | 15.08 | 5.5 |
| 95th Percentile Latency (ms) | 0.75 | 1.86 |
MySQL Write-only
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 893.00 | 8,497.00 |
| Queries per second | 8,930.00 | 84,970.00 |
| Minimum Latency (ms) | 1.04 | 0.76 |
| Average Latency (ms) | 11.2 | 1.17 |
| Maximum Latency (ms) | 44.84 | 3.04 |
| 95th Percentile Latency (ms) | 18.61 | 1.55 |
MySQL Read/Write
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 628.00 | 3,726.00 |
| Queries per second | 6,280.00 | 37,260.00 |
| Minimum Latency (ms) | 2.35 | 1.78 |
| Average Latency (ms) | 15.94 | 2.68 |
| Maximum Latency (ms) | 109.26 | 5.82 |
| 95th Percentile Latency (ms) | 34.95 | 3.43 |
MySQL INSERT
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 709.00 | 15,028.00 |
| Queries per second | 7,090.00 | 150,280.00 |
| Minimum Latency (ms) | 0.95 | 0.41 |
| Average Latency (ms) | 14.11 | 0.66 |
| Maximum Latency (ms) | 133.38 | 2.42 |
| 95th Percentile Latency (ms) | 23.1 | 0.86 |
MySQL Bulk INSERT
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 1,317,592.00 | 1,696,217.00 |
| Queries per second | 13,175,920.00 | 16,962,170.00 |
| Minimum Latency (ms) | 0 | 0 |
| Average Latency (ms) | 0.01 | 0.01 |
| Maximum Latency (ms) | 1451.73 | 283.37 |
| 95th Percentile Latency (ms) | 0 | 0 |
MySQL SELECT
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 526,986.00 | 201,989.00 |
| Queries per second | 5,269,860.00 | 2,019,890.00 |
| Minimum Latency (ms) | 0.01 | 0.03 |
| Average Latency (ms) | 0.02 | 0.05 |
| Maximum Latency (ms) | 14.74 | 0.51 |
| 95th Percentile Latency (ms) | 0.03 | 0.07 |
MySQL SELECT (Random Points)
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 13,152.00 | 8,025.00 |
| Queries per second | 131,520.00 | 80,250.00 |
| Minimum Latency (ms) | 0.21 | 0.35 |
| Average Latency (ms) | 0.76 | 1.24 |
| Maximum Latency (ms) | 68.06 | 3.55 |
| 95th Percentile Latency (ms) | 1.08 | 2.07 |
MySQL SELECT (Random Ranges)
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 13,493.00 | 8,336.00 |
| Queries per second | 134,930.00 | 83,360.00 |
| Minimum Latency (ms) | 0.21 | 0.4 |
| Average Latency (ms) | 0.74 | 1.2 |
| Maximum Latency (ms) | 5.51 | 4.25 |
| 95th Percentile Latency (ms) | 1.14 | 2.22 |
MySQL UPDATE (Indexed)
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 560.00 | 13,858.00 |
| Queries per second | 5,600.00 | 138,580.00 |
| Minimum Latency (ms) | 9.28 | 0.42 |
| Average Latency (ms) | 17.86 | 0.72 |
| Maximum Latency (ms) | 373.22 | 6.33 |
| 95th Percentile Latency (ms) | 26.68 | 0.95 |
MySQL UPDATE (Non-Indexed)
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 1,042.00 | 14,587.00 |
| Queries per second | 10,420.00 | 145,870.00 |
| Minimum Latency (ms) | 0.93 | 0.4 |
| Average Latency (ms) | 9.59 | 0.68 |
| Maximum Latency (ms) | 75.01 | 11.69 |
| 95th Percentile Latency (ms) | 18.61 | 0.9 |
MySQL DELETE
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| Transactions per second | 2,685.00 | 129,013.00 |
| Queries per second | 26,850.00 | 1,290,130.00 |
| Minimum Latency (ms) | 0.01 | 0.03 |
| Average Latency (ms) | 3.72 | 0.08 |
| Maximum Latency (ms) | 138.1 | 2.61 |
| 95th Percentile Latency (ms) | 15.83 | 0.09 |
Redis
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| PING_INLINE per Second | 123,304.56 | 78,247.26 |
| PING_MBULK per Second | 117,647.05 | 74,738.41 |
| SET per Second | 181,818.17 | 77,041.60 |
| GET per Second | 221,238.94 | 83,333.33 |
| INCR per Second | 199,203.20 | 80,971.66 |
| LPUSH per Second | 228,310.50 | 79,113.92 |
| RPUSH per Second | 230,414.75 | 77,160.49 |
| LPOP per Second | 235,849.06 | 81,499.59 |
| RPOP per Second | 221,238.94 | 82,440.23 |
| SADD per Second | 226,244.34 | 80,192.46 |
| HSET per Second | 194,931.77 | 83,612.04 |
| SPOP per Second | 114,810.56 | 85,034.02 |
| ZADD per Second | 115,473.45 | 83,263.95 |
| ZPOPMIN per Second | 109,289.62 | 82,987.55 |
| LRANGE_100 (first 100 elements) per Second | 88,105.73 | 55,555.56 |
| LRANGE_300 (first 300 elements) per Second | 59,417.71 | 28,851.70 |
| LRANGE_500 (first 500 elements) per Second | 30,998.14 | 19,391.12 |
| LRANGE_600 (first 600 elements) per Second | 23,266.64 | 17,211.71 |
| MSET (10 keys) per Second | 181,818.17 | 80,256.82 |
Redis Average Latency (ms)
| UpCloud – Balanced (2 GB, 2 Cores) | Vultr – Cloud Compute (2 GB, 2 Cores) | |
|---|---|---|
| PING_INLINE | 0.25 | 0.34 |
| PING_MBULK | 0.23 | 0.35 |
| SET | 0.15 | 0.34 |
| GET | 0.12 | 0.32 |
| INCR | 0.13 | 0.32 |
| LPUSH | 0.12 | 0.34 |
| RPUSH | 0.12 | 0.34 |
| LPOP | 0.12 | 0.32 |
| RPOP | 0.12 | 0.32 |
| SADD | 0.12 | 0.32 |
| HSET | 0.14 | 0.31 |
| SPOP | 0.24 | 0.30 |
| ZADD | 0.24 | 0.31 |
| ZPOPMIN | 0.24 | 0.31 |
| LRANGE_100 (first 100 elements) | 0.37 | 0.54 |
| LRANGE_300 (first 300 elements) | 0.57 | 1.11 |
| LRANGE_500 (first 500 elements) | 1.08 | 1.62 |
| LRANGE_600 (first 600 elements) | 1.37 | 1.84 |
| MSET (10 keys) | 0.21 | 0.38 |
Conclusion
From the friendly robots:
In comparing the two VPS instances, the UpCloud Balanced (2 GB, 2 Cores) and Vultr Cloud Compute (2 GB, 2 Cores), UpCloud shows superior performance across a range of benchmarks. UpCloud's instance achieves higher Redis request rates per second for most operations, such as LPUSH and GET, and offers lower latency in both Redis and MySQL operations. UpCloud's CPU and memory benchmarks also show more consistent performance with lower latencies. Vultr, on the other hand, provides better file I/O throughput but has higher latencies in most benchmarks. In terms of cost, Vultr offers a slightly lower monthly fee. For applications requiring high CPU and memory performance, like database operations or real-time data processing, UpCloud is the better choice due to its superior Redis and MySQL benchmark results. Conversely, if file I/O throughput is more critical and budget is a primary concern, Vultr may be more suitable.
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 UpCloud and Vultr.
You can also support me directly by buying me a coffee.