# Togglebox 4 vCPU / 4 GB / 80 GB

Philadelphia

Benchmark complete

Finished Oct 25, 2026

Geekbench 7 single-core

999

Faster than 33% of 4 vCPU plans

Geekbench 7 multi-core

Skipped

Disk 4K IOPS

147,126

fio random read and write, 50/50

Monthly price at test time

$33.77

Same price today

## Server

[Togglebox](https://rackcensus.com/vps-providers/togglebox-benchmarks)[4 vCPU / 4 GB / 80 GB](https://rackcensus.com/plans/zz4ok7-togglebox-4-vcpu-4-gb-80-gb-benchmarks?location=PHL)

-

Provider

Togglebox

-

Plan

4 vCPU / 4 GB / 80 GB

-

Location

Philadelphia

-

vCPU

4

-

RAM

4 GB

-

Storage

80 GB NVMe

-

Network

1 Gbps

-

OS image

Ubuntu 24.04

-

Trigger

Scheduled

-

Queued at

Oct 22, 2026, 20:21:00 UTC

[Visit Togglebox](https://rackcensus.com/go/togglebox)

## Latest runs of this plan

- [Dallas Oct 24, 2026](https://rackcensus.com/benchmarks/21wfxf-togglebox-4-vcpu-4-gb-80-gb-dal-benchmark)1,118

[Full history of this plan](https://rackcensus.com/plans/zz4ok7-togglebox-4-vcpu-4-gb-80-gb-benchmarks/history)

## CPU

| Version | Single-core | Multi-core | Result link |
| --- | --- | --- | --- |
| Geekbench 7 | 999 | Skipped | [Geekbench Browser](https://browser.geekbench.com/v7/cpu/715634) |

Multi-core was skipped because Geekbench 7 needs about 4.2 GB of free memory to run 4 threads, and this server didn't have that much. Single-core needs much less, so it still ran.

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 | 99069th of 100 | Single-core only |
| Navigation | 1,39336th of 100 | Single-core only |
| HTML5 Browser | 97063rd of 100 | Single-core only |
| PDF Viewer | 1,07067th of 100 | Single-core only |
| Photo Library | 94357th of 100 | Single-core only |
| Clang | 1,07348th of 100 | Single-core only |
| Text Processing | 1,02252nd of 100 | Single-core only |
| Asset Compression | 77079th of 100 | Single-core only |
| HDR | 88264th of 100 | Single-core only |
| Photo Editor | 1,00567th of 100 | Single-core only |
| Ray Tracer | 97469th of 100 | Single-core only |
| Structure from Motion | 1,14764th of 100 | Single-core only |
| Game Physics | 99565th of 100 | Single-core only |
| Video Encoder | 95264th of 100 | Single-core only |
| Audio Encoder | 90576th of 100 | Single-core only |
| Video Player | 1,01064th of 100 | Single-core only |

Rank among the 100 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 | 287 MB/s (73,466 IOPS) | 287.7 MB/s (73,660 IOPS) | 574.7 MB/s (147,126 IOPS) |
| 64K | 1.36 GB/s (22,354 IOPS) | 1.37 GB/s (22,471 IOPS) | 2.74 GB/s (44,825 IOPS) |
| 512K | 1.27 GB/s (2,607 IOPS) | 1.34 GB/s (2,746 IOPS) | 2.61 GB/s (5,353 IOPS) |
| 1M | 1.37 GB/s (1,403 IOPS) | 1.46 GB/s (1,497 IOPS) | 2.83 GB/s (2,900 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 | 1.51 Gbps | 1.44 Gbps |
| Eranium, Amsterdam, NL (100G) | IPv4 | 1.45 Gbps | 1.4 Gbps |
| Leaseweb, Singapore, SG (10G) | IPv4 | 748 Mbps | 856 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| Repeat | Offered / s | transactions/s | p95 / p99 ms | Errors / dropped | Result |
| --- | --- | --- | --- | --- | --- |
| 1 | 100 | 100 | 4.59 / 5.12 | 0 / 0 | Met workload limits |
| 1 | 500 | 496.35 | 3.49 / 4.43 | 0 / 656 | Met workload limits |
| 1 | 1000 | 992.01 | 3.4 / 4.32 | 0 / 1438 | Met workload limits |
| 1 | 3000 | 2987 | 3.58 / 4.65 | 0 / 2337 | Met workload limits |
| 2 | 100 | 100 | 4.65 / 5.12 | 0 / 0 | Met workload limits |
| 2 | 500 | 496.72 | 3.58 / 4.43 | 0 / 591 | Met workload limits |
| 2 | 1000 | 991.78 | 3.58 / 4.7 | 0 / 1478 | Met workload limits |
| 2 | 3000 | 2987.66 | 3.58 / 4.7 | 0 / 2218 | Met 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| Repeat | Offered / s | operations/s | p95 / p99 ms | Errors / dropped | Result |
| --- | --- | --- | --- | --- | --- |
| 1 | 1000 | 1000 | 1.33 / 1.4 | 0 / 0 | Met workload limits |
| 1 | 5000 | 4999.98 | 1.15 / 1.28 | 0 / 0 | Met workload limits |
| 1 | 10000 | 9999.94 | 1.42 / 1.5 | 0 / 0 | Met workload limits |
| 1 | 25000 | 24997.65 | 0.52 / 0.71 | 0 / 414 | load generator saturated |
| 2 | 1000 | 1000 | 1.33 / 1.4 | 0 / 0 | Met workload limits |
| 2 | 5000 | 4999.98 | 1.15 / 1.31 | 0 / 0 | Met workload limits |
| 2 | 10000 | 9999.94 | 1.45 / 1.5 | 0 / 0 | Met workload limits |
| 2 | 25000 | 24997.51 | 0.52 / 0.64 | 0 / 436 | load 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| Repeat | Offered / s | jobs/s | p95 / p99 ms | Errors / dropped | Result |
| --- | --- | --- | --- | --- | --- |
| 1 | 100 | 100 | 3.27 / 3.45 | 0 / 0 | Met workload limits |
| 1 | 500 | 500 | 2.24 / 2.3 | 0 / 0 | Met workload limits |
| 1 | 1000 | 1000 | 2.24 / 2.33 | 0 / 0 | Met workload limits |
| 1 | 3000 | 3000 | 2.4 / 2.57 | 0 / 0 | Met workload limits |
| 2 | 100 | 100 | 3.23 / 3.36 | 0 / 0 | Met workload limits |
| 2 | 500 | 500 | 2.24 / 2.33 | 0 / 0 | Met workload limits |
| 2 | 1000 | 1000 | 2.24 / 2.33 | 0 / 0 | Met workload limits |
| 2 | 3000 | 2999.99 | 2.37 / 2.57 | 0 / 0 | Met 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| Repeat | Offered / s | journeys/s | p95 / p99 ms | Errors / dropped | Result |
| --- | --- | --- | --- | --- | --- |
| 1 | 2 | 1.96 | 200.04 / 286.65 | 8 / 0 | error limit exceeded |
| 1 | 5 | 4.69 | 181 / 278.19 | 56 / 0 | error limit exceeded |
| 1 | 10 | 9.19 | 181 / 269.98 | 146 / 0 | error limit exceeded |
| 1 | 25 | 22.68 | 194.13 / 232.41 | 416 / 0 | error limit exceeded |
| 2 | 2 | 1.96 | 200.04 / 269.98 | 8 / 0 | error limit exceeded |
| 2 | 5 | 4.69 | 179.2 / 280.98 | 56 / 0 | error limit exceeded |
| 2 | 10 | 9.19 | 182.82 / 278.19 | 146 / 0 | error limit exceeded |
| 2 | 25 | 22.68 | 198.05 / 234.74 | 416 / 0 | error 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| Repeat | Offered / s | workflows/s | p95 / p99 ms | Errors / dropped | Result |
| --- | --- | --- | --- | --- | --- |
| 1 | 5 | 5 | 22.2 / 29.36 | 0 / 0 | Met workload limits |
| 1 | 20 | 20 | 16.74 / 22.2 | 0 / 0 | Met workload limits |
| 1 | 50 | 50 | 15.06 / 23.39 | 0 / 0 | Met workload limits |
| 1 | 100 | 88.55 | 3163.56 / 3259.45 | 0 / 1907 | latency limit exceeded |
| 2 | 5 | 5 | 19.39 / 25.67 | 0 / 0 | Met workload limits |
| 2 | 20 | 20 | 16.91 / 24.13 | 0 / 0 | Met workload limits |
| 2 | 50 | 50 | 15.88 / 29.36 | 0 / 0 | Met workload limits |
| 2 | 100 | 89.62 | 3070.49 / 3227.16 | 0 / 1704 | latency 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| Repeat | Offered / s | workflows/s | p95 / p99 ms | Errors / dropped | Result |
| --- | --- | --- | --- | --- | --- |
| 1 | 5 | 5 | 31.22 / 39.91 | 0 / 0 | Met workload limits |
| 1 | 20 | 20 | 24.13 / 32.87 | 0 / 0 | Met workload limits |
| 1 | 50 | 50 | 26.75 / 45.1 | 0 / 0 | Met workload limits |
| 1 | 100 | 99.99 | 102.22 / 167.08 | 0 / 0 | Met workload limits |
| 2 | 5 | 5 | 29.36 / 33.89 | 0 / 0 | Met workload limits |
| 2 | 20 | 20 | 22.91 / 31.22 | 0 / 0 | Met workload limits |
| 2 | 50 | 50 | 24.89 / 39.11 | 0 / 0 | Met workload limits |
| 2 | 100 | 99.99 | 104.29 / 196.08 | 0 / 0 | Met 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| Repeat | Offered / s | journeys/s | p95 / p99 ms | Errors / dropped | Result |
| --- | --- | --- | --- | --- | --- |
| 1 | 5 | 5 | 329.64 / 379.07 | 0 / 0 | Met workload limits |
| 1 | 20 | 20 | 349.99 / 382.87 | 0 / 0 | Met workload limits |
| 1 | 50 | 42.22 | 7013.92 / 7013.92 | 842 / 327 | latency limit exceeded |
| 1 | 100 | 44.89 | 7013.92 / 7013.92 | 881 / 8804 | latency limit exceeded |
| 2 | 5 | 5 | 326.37 / 371.58 | 0 / 0 | Met workload limits |
| 2 | 20 | 20 | 353.5 / 390.58 | 0 / 0 | Met workload limits |
| 2 | 50 | 42.41 | 7013.92 / 7013.92 | 813 / 322 | latency limit exceeded |
| 2 | 100 | 43.64 | 7013.92 / 7013.92 | 824 / 9098 | latency 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%

### Elasticsearch search and ingestion
Measured

Full-text search, filtering and aggregations while new documents are indexed.

Elasticsearch search and ingestion measurements| Repeat | Offered / s | operations/s | p95 / p99 ms | Errors / dropped | Result |
| --- | --- | --- | --- | --- | --- |
| 1 | 10 | 10 | 8.76 / 11.27 | 0 / 0 | Met workload limits |
| 1 | 50 | 50 | 7 / 9.36 | 0 / 0 | Met workload limits |
| 1 | 100 | 100 | 7 / 9.47 | 0 / 0 | Met workload limits |
| 1 | 250 | 250 | 6.69 / 9.26 | 0 / 0 | Met workload limits |
| 2 | 10 | 10 | 8.76 / 10.91 | 0 / 0 | Met workload limits |
| 2 | 50 | 50 | 7.08 / 9.47 | 0 / 0 | Met workload limits |
| 2 | 100 | 100 | 6.61 / 9.26 | 0 / 0 | Met workload limits |
| 2 | 250 | 250 | 7.08 / 9.57 | 0 / 0 | Met workload limits |

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

### GitHub self-hosted runner
Insufficient RAM

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

Requires 8192 MiB RAM; plan has 4096 MiB, 3915 MiB detected.

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 | 4 GB | 3.8 GiB |
| Storage | 80 GB NVMe | 77.4 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:** Intel(R) Xeon(R) Gold 6238R CPU @ 2.20GHz

**CPU cores:** 4

**CPU frequency:** 2200 MHz

**AES-NI:** Yes

**VM-x/AMD-V:** Yes

**RAM reported:** 3.8 GiB

**Swap reported:** 0 MiB

**Disk reported:** 77.4 GiB

**Virtualization reported:** KVM

**CPU steal:** 0% of busy CPU time stolen

**Distro:** Ubuntu 24.04.3 LTS

**Kernel:** 6.8.0-88-generic

**Architecture:** x86\_64

**IPv4 reachable:** Yes

**IPv6 reachable:** No

## Advertised at test time

**Plan:** 4 vCPU / 4 GB / 80 GB

**Product line:** Cloud VPS

**Location:** Philadelphia

**vCPU:** 4 shared vCPU

**Architecture:** x86\_64

**RAM:** 4 GB

**Storage:** 80 GB NVMe

**Virtualization:** KVM

**Network:** 1 Gbps

**Transfer:** 10 TB

**Port 25:** On request

**Monthly price at test time:** $33.77

**Hourly price at test time:** $0.050

**YABS version:** v2026-09-20

**Ran at:** Oct 25, 2026, 06:27:57 UTC

**Parser version:** 5

## Run timeline

**Queued:** Oct 22, 2026, 20:21:00 UTC

**Server created:** Oct 25, 2026, 06:27:54 UTC

**First update from the server:** Oct 25, 2026, 06:27:54 UTC

**Completed:** Oct 25, 2026, 11:05:00 UTC

**Server deleted:** Oct 25, 2026, 11:05:00 UTC

**Cost of this run:** $0.23

Tests 39 of 42 done Live output 1352 lines

Setup 4 cores, 3.8 GiB RAM 4 of 4Done

Disk (fio) 603 MB/s at 4k, 3.04 GB/s at 1m 5 of 5Done

Network, IPv4 (iperf3) Median 1.45 Gbit/s send, 1.40 Gbit/s receive 3 of 3Done

Geekbench 7, single-core Score 999 18 of 18Done

Web apps 3 failed, 1 skipped 8 of 11Some failed

TestResultTime

PostgreSQL transactions 8 measured trials completed 8 trials Measurements, 8 measured trials completed 29m 32s

PostgreSQL large dataset RuntimeError: RuntimeError: TimeoutError: Stopped RuntimeError: RuntimeError: TimeoutError: 1m 38s

Redis cache 8 measured trials completed 8 trials Measurements, 8 measured trials completed 28m 25s

Redis persistent queue 8 measured trials completed 8 trials Measurements, 8 measured trials completed 28m 19s

Discourse community 8 measured trials completed 8 trials Measurements, 8 measured trials completed 36m 28s

n8n workflows 8 measured trials completed 8 trials Measurements, 8 measured trials completed 30m 43s

n8n queue workers 8 measured trials completed 8 trials Measurements, 8 measured trials completed 30m 36s

Ghost publishing 8 measured trials completed 8 trials Measurements, 8 measured trials completed 32m 29s

Formbricks / Next.js RuntimeError: RuntimeError: TimeoutError: Stopped RuntimeError: RuntimeError: TimeoutError: 13m 50s

Elasticsearch search and ingestion 8 measured trials completed 8 trials Measurements, 8 measured trials completed 35m 03s

GitHub self-hosted runner Requires 8192 MiB RAM; plan has 4096 MiB, 3915 MiB detected. Not run Requires 8192 MiB RAM; plan has 4096 MiB, 3915 MiB detected.

Odoo Community sales Application workloads Stopped 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' 1m 29s

Finish Results saved 1 of 1Done

Watch party 0 watching

This party closed at 12:05 UTC. It's read only now.

## Watch party

Loading the party
