DigitalOcean Basic 1 vCPU / 1 GB
Server
-
ProviderDigitalOcean
-
PlanBasic 1 vCPU / 1 GB
-
LocationFrankfurt 1
-
vCPU1
-
RAM1 GB
-
Storage25 GB SSD
-
Network2 Gbps
-
OS imageubuntu-24-04-x64
-
TriggerScheduled
-
Queued atOct 8, 2026, 09:54:00 UTC
Referral link. If you sign up through it, I may get paid.
Latest runs of this plan
- New York 3 Oct 8, 2026 Skipped
- Amsterdam 3 Oct 7, 2026 Skipped
- Frankfurt 1 Oct 7, 2026 Skipped
- Amsterdam 3 Oct 6, 2026 Skipped
- Frankfurt 1 Oct 6, 2026 Skipped
CPU
Geekbench was skipped because this plan has less than 2 GB of RAM, which isn't enough for Geekbench 7 to run without swap.
Memory, TLS and scheduler
Memory bandwidth (STREAM)
| Test | Result | Runs | Spread |
|---|---|---|---|
| Copy higher is better | 9.79 GB/s | 3 | 3.73% |
| Scale higher is better | 9.37 GB/s | 3 | 4.3% |
| Add higher is better | 10.4 GB/s | 3 | 4.67% |
| Triad higher is better | 10.6 GB/s | 3 | 3.34% |
Average of 3 runs. Spread is the standard deviation as a share of the average.
TLS and crypto (OpenSSL)
| Test | Result | Runs | Spread |
|---|---|---|---|
| RSA 4096 signs higher is better | 172/s | 3 | 3.47% |
| RSA 4096 verifies higher is better | 11,945/s | 3 | 1.63% |
| SHA-256 higher is better | 207 MB/s | 3 | 2.17% |
| AES-256-GCM higher is better | 2.89 GB/s | 3 | 10.8% |
| ChaCha20-Poly1305 higher is better | 1.36 GB/s | 3 | 6.69% |
Average of 3 runs. Spread is the standard deviation as a share of the average.
Scheduler latency (schbench)
| Test | Result | Runs | Spread |
|---|---|---|---|
| Request latency, median lower is better | 4.9 ms | 3 | 2.61% |
| Requests per second, 90th percentile higher is better | 203/s | 3 | 2.05% |
| Request latency, 99.9th percentile lower is better | 11.7 ms | 3 | 4.76% |
| Requests per second, average higher is better | 191/s | 3 | 2.77% |
Average of 3 runs. Spread is the standard deviation as a share of the average.
Disk
| Block size | Read | Write | Total |
|---|---|---|---|
| 4K | 138.9 MB/s (35,558 IOPS) | 139.3 MB/s (35,652 IOPS) | 278.2 MB/s (71,210 IOPS) |
| 64K | 1.07 GB/s (17,589 IOPS) | 1.08 GB/s (17,682 IOPS) | 2.15 GB/s (35,271 IOPS) |
| 512K | 745.8 MB/s (1,491 IOPS) | 785.4 MB/s (1,570 IOPS) | 1.5 GB/s (3,061 IOPS) |
| 1M | 767.3 MB/s (767 IOPS) | 818.4 MB/s (818 IOPS) | 1.55 GB/s (1,585 IOPS) |
fio random read and write, 50/50, run by YABS against the boot disk.
Network
IPv4 transfer speed
| Target | Protocol | Send | Receive |
|---|---|---|---|
| Clouvider, London, UK (10G) | IPv4 | 1.98 Gbps | 1.87 Gbps |
| Eranium, Amsterdam, NL (100G) | IPv4 | 2 Gbps | 1.89 Gbps |
| Leaseweb, Singapore, SG (10G) | IPv4 | 1.1 Gbps | 1.24 Gbps |
| Clouvider, Los Angeles, CA, US (10G) | IPv4 | 913 Mbps | 1.32 Gbps |
| Leaseweb, NYC, NY, US (10G) | IPv4 | 1.55 Gbps | 1.58 Gbps |
Public iperf3 servers vary in capacity and availability. Compare a target only with itself over time.
Datastores
PostgreSQL
fsync speed (pg_test_fsync)
| Method | Operations per second | Time per operation |
|---|---|---|
| One 8 kB write | ||
| open_datasync | 7,554 | 0.132 ms |
| fdatasync | 7,278 | 0.137 ms |
| fsync | 4,511 | 0.222 ms |
| fsync_writethrough | Not supported here | n/a |
| open_sync | 4,736 | 0.211 ms |
| Two 8 kB writes | ||
| open_datasync | 3,393 | 0.295 ms |
| fdatasync | 5,329 | 0.188 ms |
| fsync | 4,468 | 0.224 ms |
| fsync_writethrough | Not supported here | n/a |
| open_sync | 1,954 | 0.512 ms |
| open_sync at different write sizes | ||
| 1 * 16kB open_sync write | 4,548 | 0.22 ms |
| 2 * 8kB open_sync writes | 2,524 | 0.396 ms |
| 4 * 4kB open_sync writes | 1,237 | 0.808 ms |
| 8 * 2kB open_sync writes | 512 | 1.95 ms |
| 16 * 1kB open_sync writes | 284 | 3.52 ms |
| fsync on a non-write descriptor | ||
| write, fsync, close | 4,137 | 0.242 ms |
| write, close, fsync | 4,130 | 0.242 ms |
| Non-synced 8 kB writes | ||
| write | 634,058 | 0.002 ms |
pg_test_fsync against the Docker volume Postgres keeps its data on. fdatasync is Linux's default wal_sync_method.
pgbench at scale 10
| Workload | Clients | Transactions/s | Median | p95 | p99 | p99.9 | Failed |
|---|---|---|---|---|---|---|---|
| Read/write (TPC-B like) | 1 | 1,578 | 0.567 ms | 1.03 ms | 1.85 ms | 4.24 ms | 0 |
| Read/write (TPC-B like) | 8 | 1,578 | 4.57 ms | 8.79 ms | 13.3 ms | 22.8 ms | 0 |
| Read/write (TPC-B like) | 32 | 1,224 | 21.6 ms | 56.3 ms | 91.7 ms | 149 ms | 0 |
| Read only | 1 | 23,383 | 0.039 ms | 0.066 ms | 0.088 ms | 0.292 ms | 0 |
| Read only | 8 | 19,043 | 0.372 ms | 0.703 ms | 0.893 ms | 2 ms | 0 |
| Read only | 32 | 11,682 | 2.44 ms | 3.29 ms | 4.88 ms | 6.84 ms | 0 |
Scale 10 (1,000,000 accounts), loaded in 2.8 s. 60 s per run, prepared statements. Latency comes from sampled transaction logs, and p99.9 is left out when fewer than 1,000 were sampled.
pgbench at scale 100
| Workload | Clients | Transactions/s | Median | p95 | p99 | p99.9 | Failed |
|---|---|---|---|---|---|---|---|
| Read/write (TPC-B like) | 1 | 788 | 1.12 ms | 2.12 ms | 3.79 ms | 8.44 ms | 0 |
| Read/write (TPC-B like) | 8 | 1,207 | 6 ms | 10.9 ms | 16.1 ms | 31.2 ms | 0 |
| Read/write (TPC-B like) | 32 | 994 | 30.5 ms | 45.2 ms | 55.7 ms | 80.8 ms | 0 |
| Read only | 1 | 2,153 | 0.417 ms | 0.913 ms | 1.71 ms | 3.73 ms | 0 |
| Read only | 8 | 5,741 | 1.2 ms | 2.9 ms | 4.65 ms | 8.81 ms | 0 |
| Read only | 32 | 4,621 | 5.9 ms | 11.4 ms | 15.7 ms | 24.7 ms | 0 |
Scale 100 (10,000,000 accounts), loaded in 27.7 s. 60 s per run, prepared statements. Latency comes from sampled transaction logs, and p99.9 is left out when fewer than 1,000 were sampled.
MySQL
sysbench OLTP
| Workload | Threads | Transactions/s | Queries/s | Median | p95 | p99 | Errors |
|---|---|---|---|---|---|---|---|
| Read/write | 1 | 225 | 4,506 | 4.03 ms | 7.17 ms | 12.1 ms | 0 |
| Read/write | 8 | 275 | 5,508 | 27.2 ms | 45 ms | 57.9 ms | 0 |
| Read/write | 32 | 264 | 5,277 | 115 ms | 180 ms | 223 ms | 0 |
| Read only | 1 | 611 | 9,774 | 1.55 ms | 2.31 ms | 3.43 ms | 0 |
| Read only | 8 | 586 | 9,378 | 13.2 ms | 18.6 ms | 22.3 ms | 0 |
| Read only | 32 | 505 | 8,084 | 62.2 ms | 83 ms | 94.1 ms | 0 |
10 tables of 100,000 rows, loaded in 20.3 s. 60 s per run, one connection per thread.
Redis
memtier
| Mix | Operations/s | Hits/s | Median | p99 | p99.9 |
|---|---|---|---|---|---|
| 1:10 set:get | 22,606 | 20,551 | 2.61 ms | 6.21 ms | 10.9 ms |
| 1:1 set:get | 21,959 | 10,979 | 2.58 ms | 8.9 ms | 13.4 ms |
1,000,000 keys of 32 bytes. 64 connections over 1 thread, 60 s per ratio.
Web frameworks
| Framework | Fortunes req/s | Single query req/s | JSON req/s | Fortunes p99 at 256 connections |
|---|---|---|---|---|
| Next.js | The results arrived but couldn't be read, so no numbers are shown. | |||
| Express | The results arrived but couldn't be read, so no numbers are shown. | |||
| Fastify | The results arrived but couldn't be read, so no numbers are shown. | |||
| NestJS | The results arrived but couldn't be read, so no numbers are shown. | |||
| Nuxt | The results arrived but couldn't be read, so no numbers are shown. | |||
| FastAPI | The results arrived but couldn't be read, so no numbers are shown. | |||
| Django | The results arrived but couldn't be read, so no numbers are shown. | |||
| Rails | The results arrived but couldn't be read, so no numbers are shown. | |||
| Laravel | The results arrived but couldn't be read, so no numbers are shown. | |||
| Symfony | The results arrived but couldn't be read, so no numbers are shown. | |||
WooCommerce
Page mix
| Step | Requests/s | Median | p95 | p99 | Error rate |
|---|---|---|---|---|---|
| 8 virtual users | |||||
| Home page | 0.635 | 2.23 s | 2.78 s | 3.07 s | 0% |
| Shop page | 0.635 | 2.99 s | 3.53 s | 3.56 s | 0% |
| Category page | 0.635 | 2.65 s | 3.25 s | 3.48 s | 0% |
| Product page | 0.635 | 2.26 s | 2.59 s | 2.63 s | 0% |
| Product search | 0.635 | 2.12 s | 2.4 s | 2.44 s | 0% |
| 32 virtual users | |||||
| Home page | 0.902 | 10.3 s | 12.5 s | 12.5 s | 0% |
| Shop page | 0.592 | 11.8 s | 13.3 s | 13.4 s | 0% |
| Category page | 0.451 | 10.9 s | 12.6 s | 12.8 s | 0% |
| Product page | 0.451 | 9.3 s | 9.68 s | 9.71 s | 0% |
| Product search | 0.451 | 9.67 s | 10.6 s | 10.7 s | 0% |
Cart and checkout
| Step | Requests/s | Median | p95 | p99 | Error rate |
|---|---|---|---|---|---|
| 8 virtual users | |||||
| Add to cart | 0.971 | 2.37 s | 3 s | 3.37 s | 0% |
| Cart | 0.971 | 2.52 s | 2.9 s | 3.21 s | 0% |
| Checkout | 0.971 | 1.95 s | 2.35 s | 2.38 s | 0% |
| 32 virtual users | |||||
| Add to cart | 1.35 | 8.22 s | 10.5 s | 10.8 s | 0% |
| Cart | 1.24 | 9.85 s | 10.4 s | 10.7 s | 0% |
| Checkout | 0.902 | 7.97 s | 10 s | 10.1 s | 0% |
k6 with a fixed number of virtual users, 65 to 74 s per level. The error rate counts responses that weren't a 200.
Advertised vs. measured
| Spec | Advertised | Measured |
|---|---|---|
| vCPU | 1 | 1 |
| CPU | Shared vCPU | 4.2% of busy CPU time stolen |
| RAM | 1 GB | 961 MiB |
| Storage | 25 GB SSD | 24.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
- DO-Regular
- CPU cores
- 1
- CPU frequency
- 2494 MHz
- AES-NI
- Yes
- VM-x/AMD-V
- Yes
- RAM reported
- 961 MiB
- Swap reported
- 0 MiB
- Disk reported
- 24.1 GiB
- Virtualization reported
- KVM
- CPU steal
- 4.2% of busy CPU time stolen
- Distro
- Ubuntu 24.04.5 LTS
- Kernel
- 6.8.0-142-generic
- Architecture
- x86_64
- IPv4 reachable
- Yes
- IPv6 reachable
- Yes
Advertised at test time
- Plan
- Basic 1 vCPU / 1 GB
- Product line
- Basic
- Location
- Frankfurt 1
- vCPU
- 1 shared vCPU
- Architecture
- x86_64
- RAM
- 1 GB
- Storage
- 25 GB SSD
- Virtualization
- KVM
- Network
- 2 Gbps
- Transfer
- 1 TB
- Port 25
- Closed
- Monthly price at test time
- $6.00
- Hourly price at test time
- $0.0089
- YABS version
- v2026-09-20
- Ran at
- Oct 8, 2026, 09:57:54 UTC
- Parser version
- 5
Run timeline
- Queued
- Oct 8, 2026, 09:54:00 UTC
- Server created
- Oct 8, 2026, 09:55:32 UTC
- First update from the server
- Oct 8, 2026, 09:55:32 UTC
- Completed
- Oct 8, 2026, 11:08:00 UTC
- Server deleted
- Oct 8, 2026, 11:08:00 UTC
- Cost of this run
- $0.011
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading output.
This party closed at . It's read only now.
Reconnecting. Hang tight.