Skip to main content

Hetzner CPX31

Ashburn, VA

Benchmark complete
Finished Oct 22, 2026
Geekbench 7 single-core
1,266
Faster than 64% of 4 vCPU plans
Geekbench 7 multi-core
4,371
Faster than 70% of 4 vCPU plans
Disk 4K IOPS
48,920
fio random read and write, 50/50
Monthly price at test time
$73.49
59 multi-core points per dollar
Same price today

Server

  • Provider
    Hetzner
  • Plan
    CPX31
  • Location
    Ashburn, VA
  • vCPU
    4
  • RAM
    8 GB
  • Storage
    160 GB NVMe
  • Network
    Unknown
  • OS image
    ubuntu-24.04
  • Trigger
    Scheduled
  • Queued at
    Oct 21, 2026, 07:53:00 UTC

CPU

Version Single-core Multi-core Result link
Geekbench 7 1,266 4,371 Geekbench Browser

Scores from different Geekbench versions aren't comparable with each other. Charts only use Geekbench 7.

Geekbench 7 workloads

Workload Single-core Multi-core
File Compression
1,322
22nd of 64
4,013
8th of 36
Navigation
1,246
30th of 64
Single-core only
HTML5 Browser
1,200
20th of 64
Single-core only
PDF Viewer
1,342
20th of 64
Single-core only
Photo Library
1,217
18th of 64
4,515
7th of 36
Clang
1,012
32nd of 64
4,032
8th of 36
Text Processing
1,108
23rd of 64
3,918
10th of 36
Asset Compression
1,276
17th of 64
5,106
6th of 36
HDR
1,296
16th of 64
3,890
10th of 36
Photo Editor
1,526
14th of 64
5,291
6th of 36
Ray Tracer
1,195
25th of 64
4,429
10th of 36
Structure from Motion
1,569
14th of 64
Single-core only
Game Physics
1,183
25th of 64
Single-core only
Video Encoder
1,207
18th of 64
Single-core only
Audio Encoder
1,313
19th of 64
Single-core only
Video Player
1,361
18th of 64
Single-core only

Rank among the 64 runs with Geekbench 7 workload scores. Bars are relative to the best run. Geekbench doesn't run every workload multi-core, so some rows only have a single-core score.

Disk

Block size Read Write Total
4K 95.4 MB/s (24,428 IOPS) 95.7 MB/s (24,492 IOPS) 191.1 MB/s (48,920 IOPS)
64K 881.6 MB/s (14,105 IOPS) 886.2 MB/s (14,179 IOPS) 1.73 GB/s (28,284 IOPS)
512K 1.32 GB/s (2,703 IOPS) 1.39 GB/s (2,846 IOPS) 2.71 GB/s (5,549 IOPS)
1M 1.53 GB/s (1,563 IOPS) 1.63 GB/s (1,667 IOPS) 3.15 GB/s (3,230 IOPS)

fio random read and write, 50/50, run by YABS against the boot disk.

Network

IPv4 transfer speed

Loading...
Target Protocol Send Receive
Leaseweb, NYC, NY, US (10G) IPv4 8.63 Gbps 8.91 Gbps
Eranium, Amsterdam, NL (100G) IPv4 2.16 Gbps 2.68 Gbps
Leaseweb, Singapore, SG (10G) IPv4 705 Mbps 965 Mbps

Public iperf3 servers vary in capacity and availability. Compare a target only with itself over time.

Application workloads

PostgreSQL transactions

Measured

Durable transfers and indexed account lookups against a fixed relational dataset.

PostgreSQL transactions measurements
RepeatOffered / stransactions/sp95 / p99 msErrors / droppedResult
11001005.89 / 6.690 / 0Met workload limits
1500498.24.76 / 5.620 / 324Met workload limits
11000994.724.59 / 5.430 / 950Met workload limits
130002991.044.32 / 5.240 / 1608Met workload limits
21001005.76 / 6.460 / 0Met workload limits
2500498.254.65 / 5.560 / 315Met workload limits
21000994.824.65 / 5.490 / 931Met workload limits
230002990.844.32 / 5.30 / 1644Met workload limits

p95 ≤ 50 ms · p99 ≤ 100 ms · errors ≤ 1.0%

PostgreSQL large dataset

Failed

The same transaction mix against ten million accounts; the dataset never shrinks to fit a plan.

RuntimeError: RuntimeError: TimeoutError:

p95 ≤ 100 ms · p99 ≤ 250 ms · errors ≤ 1.0%

Redis cache

Measured

A mixed cache workload with 1 KiB values, expiration, misses and eviction.

Redis cache measurements
RepeatOffered / soperations/sp95 / p99 msErrors / droppedResult
1100010001.6 / 1.790 / 0Met workload limits
150004999.971.55 / 1.730 / 0Met workload limits
1100009999.941.5 / 1.650 / 0Met workload limits
12500024861.25 / 12.560 / 24966load generator saturated
2100010001.6 / 1.790 / 0Met workload limits
250004999.971.57 / 1.760 / 0Met workload limits
2100009999.941.5 / 1.650 / 0Met workload limits
22500024938.643.49 / 10.680 / 11030load generator saturated

p95 ≤ 10 ms · p99 ≤ 25 ms · errors ≤ 1.0%

Redis persistent queue

Measured

Enqueue, consume and acknowledge payloads with append-only persistence.

Redis persistent queue measurements
RepeatOffered / sjobs/sp95 / p99 msErrors / droppedResult
11001003.87 / 4.270 / 0Met workload limits
15005002.83 / 3.190 / 0Met workload limits
1100010002.87 / 3.190 / 0Met workload limits
130002999.992.2 / 2.870 / 0Met workload limits
21001003.87 / 4.270 / 0Met workload limits
25005002.87 / 3.230 / 0Met workload limits
2100010002.83 / 3.190 / 0Met workload limits
230002999.992.27 / 2.950 / 0Met workload limits

p95 ≤ 20 ms · p99 ≤ 50 ms · errors ≤ 1.0%

Discourse community

Measured

Signed-in reading, search, posting and replies in a populated Rails forum.

Discourse community measurements
RepeatOffered / sjourneys/sp95 / p99 msErrors / droppedResult
121.96232.41 / 313.68 / 0error limit exceeded
154.69192.2 / 298.3356 / 0error limit exceeded
1109.19184.66 / 283.8146 / 0error limit exceeded
12522.68194.13 / 237.1416 / 0error limit exceeded
221.96227.81 / 323.138 / 0error limit exceeded
254.69190.29 / 301.3256 / 0error limit exceeded
2109.19188.39 / 286.65146 / 0error limit exceeded
22522.68196.08 / 244.31416 / 0error limit exceeded

p95 ≤ 1500 ms · p99 ≤ 3000 ms · errors ≤ 1.0%

n8n workflows

Measured

Webhook, transformation, branching and a verified final response.

n8n workflows measurements
RepeatOffered / sworkflows/sp95 / p99 msErrors / droppedResult
15525.67 / 29.660 / 0Met workload limits
1202022.2 / 27.030 / 0Met workload limits
1505018.59 / 23.630 / 0Met workload limits
110085.743227.16 / 3460.030 / 2381latency limit exceeded
25525.67 / 28.170 / 0Met workload limits
2202021.97 / 26.210 / 0Met workload limits
2505018.4 / 22.910 / 0Met workload limits
210086.383195.2 / 3292.050 / 2279latency limit exceeded

p95 ≤ 1000 ms · p99 ≤ 2000 ms · errors ≤ 1.0%

n8n queue workers

Measured

Completed queued workflows including waiting time and worker execution.

n8n queue workers measurements
RepeatOffered / sworkflows/sp95 / p99 msErrors / droppedResult
15532.2 / 39.910 / 0Met workload limits
1202029.36 / 36.040 / 0Met workload limits
1505026.75 / 37.540 / 0Met workload limits
110099.99143.77 / 254.270 / 0Met workload limits
25533.2 / 40.740 / 0Met workload limits
2202028.46 / 33.890 / 0Met workload limits
2505026.75 / 38.710 / 0Met workload limits
210099.99343.07 / 435.880 / 0Met workload limits

p95 ≤ 2000 ms · p99 ≤ 4000 ms · errors ≤ 1.0%

Ghost publishing

Measured

Readers, authenticated draft creation, publishing and image uploads.

Ghost publishing measurements
RepeatOffered / sjourneys/sp95 / p99 msErrors / droppedResult
155329.64 / 364.240 / 0Met workload limits
12020367.89 / 398.450 / 0Met workload limits
15043.887013.92 / 7013.92879 / 12latency limit exceeded
110049.47013.92 / 7013.92908 / 7957latency limit exceeded
255319.92 / 336.290 / 0Met workload limits
22020346.51 / 390.580 / 0Met workload limits
25043.97013.92 / 7013.92881 / 0latency limit exceeded
210050.787013.92 / 7013.92951 / 7666latency limit exceeded

p95 ≤ 1000 ms · p99 ≤ 2000 ms · errors ≤ 1.0%

Formbricks / Next.js

Failed

Public survey rendering, persisted responses and authenticated analysis.

RuntimeError: RuntimeError: TimeoutError:

p95 ≤ 1000 ms · p99 ≤ 2000 ms · errors ≤ 1.0%

GitHub self-hosted runner

Failed

A pinned build and test workflow with separate cold and warm dependency caches.

ValueError: set RUNNER_BENCHMARK_REPOSITORY and RUNNER_BENCHMARK_REVISION to the repository and commit hosting benchmark-runner.yml

p95 ≤ 3600000 ms · p99 ≤ 3600000 ms · errors ≤ 1.0%

Odoo Community sales

Failed

Customer lookup, sales order confirmation, stock operations and reporting.

RuntimeError: fixture command in rc-odoo failed: -packages/odoo/cli/shell.py", line 148, in shell self.console(local_vars) File "/usr/lib/python3/dist-packages/odoo/cli/shell.py", line 82, in console exec(sys.stdin.read(), local_vars) File "<string>", line 1, in <module> PermissionError: [Errno 13] Permission denied: '/tmp/rc-seed.py'

p95 ≤ 2000 ms · p99 ≤ 4000 ms · errors ≤ 1.0%

Advertised vs. measured

Spec Advertised Measured
vCPU 4 4
CPU Shared vCPU 0% of busy CPU time stolen
RAM 8 GB 7.6 GiB
Storage 160 GB NVMe 150.1 GiB
Architecture x86_64 x86_64
Virtualization KVM KVM

Guests usually report slightly less RAM and disk than advertised because of kernel reservations and filesystem overhead.

Detected hardware

CPU model
AMD EPYC-Rome Processor
CPU cores
4
CPU frequency
2445 MHz
AES-NI
Yes
VM-x/AMD-V
No
RAM reported
7.6 GiB
Swap reported
0 MiB
Disk reported
150.1 GiB
Virtualization reported
KVM
CPU steal
0% of busy CPU time stolen
Distro
Ubuntu 24.04.5 LTS
Kernel
6.8.0-139-generic
Architecture
x86_64
IPv4 reachable
Yes
IPv6 reachable
Yes

Advertised at test time

Plan
CPX31
Product line
regular_purpose
Location
Ashburn, VA
vCPU
4 shared vCPU
Architecture
x86_64
RAM
8 GB
Storage
160 GB NVMe
Virtualization
KVM
Network
Unknown
Transfer
3.3 TB
Port 25
On request
Monthly price at test time
$73.49
Hourly price at test time
$0.12
YABS version
v2026-09-20
Ran at
Oct 22, 2026, 18:11:37 UTC
Parser version
5

Run timeline

Queued
Oct 21, 2026, 07:53:00 UTC
First update from the server
Oct 22, 2026, 18:11:31 UTC
Completed
Oct 22, 2026, 22:46:30 UTC
Server deleted
Oct 22, 2026, 22:46:30 UTC
Cost of this run
$0.54
TestResultTime
Watch party 0 watching

This party closed at . It's read only now.

Watch party

Loading the party