# Linode Linode 4GB

[Chicago, IL](https://rackcensus.com/locations/chicago-vps-benchmarks "Every provider in Chicago")

Benchmark complete

Finished Oct 20, 2026

Geekbench 7 single-core

1,073

Faster than 38% of 2 vCPU plans

Geekbench 7 multi-core

1,977

Faster than 67% of 2 vCPU plans

Disk 4K IOPS

90,730

fio random read and write, 50/50

Monthly price at test time

$24.00

82 multi-core points per dollar

Same price today

## Server

[Linode](https://rackcensus.com/vps-providers/linode-benchmarks)[Linode 4GB](https://rackcensus.com/plans/jqz5x2-linode-linode-4gb-benchmarks?location=us-ord)

-

Provider

Linode

-

Plan

Linode 4GB

-

Location

Chicago, IL

-

vCPU

2

-

RAM

4 GB

-

Storage

80 GB SSD

-

Network

4 Gbps

-

OS image

linode/ubuntu24.04

-

Trigger

Scheduled

-

Queued at

Oct 19, 2026, 15:18:00 UTC

[Visit Linode](https://rackcensus.com/go/linode)

Referral link. If you sign up through it, I may get paid. [How this works](https://rackcensus.com/transparency#referrals-heading)

## Latest runs of this plan

- [Amsterdam, NL Oct 18, 2026](https://rackcensus.com/benchmarks/nfr7m2-linode-linode-4gb-nl-ams-benchmark)n/a
- [Frankfurt, DE Oct 18, 2026](https://rackcensus.com/benchmarks/qlpesy-linode-linode-4gb-eu-central-benchmark)n/a

[Full history of this plan](https://rackcensus.com/plans/jqz5x2-linode-linode-4gb-benchmarks/history)

## CPU

| Version | Single-core | Multi-core | Result link |
| --- | --- | --- | --- |
| Geekbench 7 | 1,073 | 1,977 | [Geekbench Browser](https://browser.geekbench.com/v7/cpu/677299) |

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,03924th of 41 | 1,67717th of 23 |
| Navigation | 95032nd of 41 | Single-core only |
| HTML5 Browser | 96429th of 41 | Single-core only |
| PDF Viewer | 1,07629th of 41 | Single-core only |
| Photo Library | 89923rd of 41 | 1,79115th of 23 |
| Clang | 94424th of 41 | 1,93315th of 23 |
| Text Processing | 93228th of 41 | 1,79816th of 23 |
| Asset Compression | 1,13818th of 41 | 2,21616th of 23 |
| HDR | 88826th of 41 | 1,53817th of 23 |
| Photo Editor | 1,40714th of 41 | 2,72414th of 23 |
| Ray Tracer | 1,23815th of 41 | 2,41016th of 23 |
| Structure from Motion | 1,16726th of 41 | Single-core only |
| Game Physics | 1,10822nd of 41 | Single-core only |
| Video Encoder | 1,04625th of 41 | Single-core only |
| Audio Encoder | 1,21521st of 41 | Single-core only |
| Video Player | 1,32414th of 41 | Single-core only |

Rank among the 41 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 | 177 MB/s (45,305 IOPS) | 177.4 MB/s (45,425 IOPS) | 354.4 MB/s (90,730 IOPS) |
| 64K | 1.58 GB/s (25,938 IOPS) | 1.59 GB/s (26,074 IOPS) | 3.17 GB/s (52,012 IOPS) |
| 512K | 3.03 GB/s (6,195 IOPS) | 3.19 GB/s (6,524 IOPS) | 6.21 GB/s (12,719 IOPS) |
| 1M | 3.48 GB/s (3,564 IOPS) | 3.71 GB/s (3,802 IOPS) | 7.19 GB/s (7,366 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 | 4.22 Gbps | 7.34 Gbps |
| Eranium, Amsterdam, NL (100G) | IPv4 | 1.56 Gbps | 1.97 Gbps |
| Leaseweb, Singapore, SG (10G) | IPv4 | 849 Mbps | 974 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.22 / 5.06 | 0 / 0 | Met workload limits |
| 1 | 500 | 497.32 | 3.96 / 4.65 | 0 / 482 | Met workload limits |
| 1 | 1000 | 992.42 | 4.01 / 4.82 | 0 / 1363 | Met workload limits |
| 1 | 3000 | 2980.04 | 4.43 / 5.56 | 0 / 3591 | Met workload limits |
| 2 | 100 | 100 | 4.48 / 5.24 | 0 / 0 | Met workload limits |
| 2 | 500 | 497.26 | 3.91 / 4.65 | 0 / 492 | Met workload limits |
| 2 | 1000 | 992.46 | 4.01 / 4.82 | 0 / 1356 | Met workload limits |
| 2 | 3000 | 2978.1 | 4.43 / 5.76 | 0 / 3938 | 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.5 / 1.63 | 0 / 0 | Met workload limits |
| 1 | 5000 | 4999.98 | 1.57 / 1.76 | 0 / 0 | Met workload limits |
| 1 | 10000 | 9999.97 | 1.55 / 1.81 | 0 / 0 | Met workload limits |
| 1 | 25000 | 23922.11 | 11.77 / 15.71 | 0 / 193867 | load generator saturated |
| 2 | 1000 | 1000 | 1.5 / 1.65 | 0 / 0 | Met workload limits |
| 2 | 5000 | 4999.97 | 1.6 / 1.81 | 0 / 0 | Met workload limits |
| 2 | 10000 | 9999.77 | 1.55 / 1.79 | 0 / 30 | Met workload limits |
| 2 | 25000 | 24355.33 | 11.4 / 13.54 | 0 / 115895 | 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.68 / 3.96 | 0 / 0 | Met workload limits |
| 1 | 500 | 500 | 2.65 / 2.95 | 0 / 0 | Met workload limits |
| 1 | 1000 | 1000 | 2.72 / 2.99 | 0 / 0 | Met workload limits |
| 1 | 3000 | 2999.96 | 2.76 / 3.23 | 0 / 0 | Met workload limits |
| 2 | 100 | 100 | 3.72 / 3.96 | 0 / 0 | Met workload limits |
| 2 | 500 | 500 | 2.68 / 2.95 | 0 / 0 | Met workload limits |
| 2 | 1000 | 999.99 | 2.76 / 3.03 | 0 / 0 | Met workload limits |
| 2 | 3000 | 2999.98 | 2.72 / 3.23 | 0 / 0 | Met workload limits |

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

### Discourse community
Failed

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

RuntimeError: RuntimeError: ValueError: GET /session/csrf returned HTTP 503

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 | 21.52 / 33.2 | 0 / 0 | Met workload limits |
| 1 | 20 | 20 | 16.91 / 22.91 | 0 / 0 | Met workload limits |
| 1 | 50 | 50 | 15.71 / 87.91 | 0 / 0 | Met workload limits |
| 1 | 100 | 82.61 | 3292.05 / 3564.9 | 0 / 2974 | latency limit exceeded |
| 2 | 5 | 5 | 22.44 / 29.36 | 0 / 0 | Met workload limits |
| 2 | 20 | 20 | 17.27 / 22.67 | 0 / 0 | Met workload limits |
| 2 | 50 | 50 | 16.04 / 76.35 | 0 / 0 | Met workload limits |
| 2 | 100 | 82.7 | 3292.05 / 3425.76 | 0 / 2967 | 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 | 33.2 / 49.42 | 0 / 0 | Met workload limits |
| 1 | 20 | 20 | 24.89 / 42 | 0 / 0 | Met workload limits |
| 1 | 50 | 50 | 97.21 / 216.7 | 0 / 0 | Met workload limits |
| 1 | 100 | 62.58 | 4481.92 / 4757.71 | 0 / 6512 | latency limit exceeded |
| 2 | 5 | 5 | 32.2 / 47.94 | 0 / 0 | Met workload limits |
| 2 | 20 | 20 | 27.6 / 52.52 | 0 / 0 | Met workload limits |
| 2 | 50 | 50 | 113.02 / 244.31 | 0 / 0 | Met workload limits |
| 2 | 100 | 63.04 | 4526.75 / 4853.36 | 0 / 6405 | latency limit exceeded |

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 | 364.24 / 444.66 | 0 / 0 | Met workload limits |
| 1 | 20 | 20 | 435.88 / 491.28 | 0 / 0 | Met workload limits |
| 1 | 50 | 43.01 | 7013.92 / 7013.92 | 878 / 120 | latency limit exceeded |
| 1 | 100 | 45.64 | 7013.92 / 7013.92 | 882 / 8621 | latency limit exceeded |
| 2 | 5 | 5 | 353.5 / 458.16 | 0 / 0 | Met workload limits |
| 2 | 20 | 20 | 423.03 / 476.81 | 0 / 0 | Met workload limits |
| 2 | 50 | 43.04 | 7013.92 / 7013.92 | 868 / 126 | latency limit exceeded |
| 2 | 100 | 46.91 | 7013.92 / 7013.92 | 898 / 8376 | 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 | 9.89 / 12.97 | 0 / 0 | Met workload limits |
| 1 | 50 | 50 | 7 / 9.36 | 0 / 0 | Met workload limits |
| 1 | 100 | 100 | 7 / 9.57 | 0 / 0 | Met workload limits |
| 1 | 250 | 250 | 7.84 / 12.29 | 0 / 0 | Met workload limits |
| 2 | 10 | 10 | 9.57 / 12.16 | 0 / 0 | Met workload limits |
| 2 | 50 | 50 | 7.33 / 10.33 | 0 / 0 | Met workload limits |
| 2 | 100 | 100 | 6.77 / 9.47 | 0 / 0 | Met workload limits |
| 2 | 250 | 250 | 7.75 / 11.65 | 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 | 2 | 2 |
| CPU | Shared vCPU | 0% of busy CPU time stolen |
| RAM | 4 GB | 3.8 GiB |
| Storage | 80 GB SSD | 78.2 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 7713 64-Core Processor

**CPU cores:** 2

**CPU frequency:** 2000 MHz

**AES-NI:** Yes

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

**RAM reported:** 3.8 GiB

**Swap reported:** 496 MiB

**Disk reported:** 78.2 GiB

**Virtualization reported:** KVM

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

**Distro:** Ubuntu 24.04.4 LTS

**Kernel:** 6.8.0-134-generic

**Architecture:** x86\_64

**IPv4 reachable:** Yes

**IPv6 reachable:** Yes

## Advertised at test time

**Plan:** Linode 4GB

**Product line:** Shared CPU

**Location:** Chicago, IL

**vCPU:** 2 shared vCPU

**Architecture:** x86\_64

**RAM:** 4 GB

**Storage:** 80 GB SSD

**Virtualization:** KVM

**Network:** 4 Gbps

**Transfer:** 4 TB

**Port 25:** On request

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

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

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

**Ran at:** Oct 20, 2026, 10:56:11 UTC

**Parser version:** 5

## Run timeline

**Queued:** Oct 19, 2026, 15:18:00 UTC

**Server created:** Oct 20, 2026, 10:54:34 UTC

**First update from the server:** Oct 20, 2026, 10:54:34 UTC

**Completed:** Oct 20, 2026, 15:23:28 UTC

**Server deleted:** Oct 20, 2026, 15:23:28 UTC

**Cost of this run:** $0.16

Tests 46 of 50 done Live output 1276 lines

Setup 2 cores, 3.8 GiB RAM 4 of 4Done

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

Network, IPv4 (iperf3) Median 1.56 Gbit/s send, 1.97 Gbit/s receive, 1 retried 3 of 3Done

Geekbench 7, single-core Score 1,073 17 of 17Done

Geekbench 7, multi-core Score 1,977 9 of 9Done

Web apps 4 failed, 1 skipped 7 of 11Some failed

TestResultTime

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

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

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

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

Discourse community RuntimeError: RuntimeError: ValueError: GET /session/csrf returned HTTP 503 Stopped RuntimeError: RuntimeError: ValueError: GET /session/csrf returned HTTP 503 16m 05s

n8n workflows 8 measured trials completed 8 trials Measurements, 8 measured trials completed 31m 21s

n8n queue workers 8 measured trials completed 8 trials Measurements, 8 measured trials completed 31m 42s

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

Formbricks / Next.js RuntimeError: RuntimeError: TimeoutError: Stopped RuntimeError: RuntimeError: TimeoutError: 15m 46s

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

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 39s

Finish Results saved 1 of 1Done

Watch party 0 watching

This party closed at 16:23 UTC. It's read only now.

## Watch party

Loading the party
