# Amazon Lightsail Micro, 2 TB transfer

Ohio

Benchmark complete

Finished Oct 12, 2026

Geekbench 7 single-core

Skipped

Geekbench 7 multi-core

Skipped

Disk 4K IOPS

3,092

fio random read and write, 50/50

Monthly price at test time

$7.00

Same price today

## Server

[Amazon Lightsail](https://rackcensus.com/vps-providers/lightsail-benchmarks)[Micro, 2 TB transfer](https://rackcensus.com/plans/k4spwg-lightsail-micro-2-tb-transfer-benchmarks?location=us-east-2)

-

Provider

Amazon Lightsail

-

Plan

Micro, 2 TB transfer

-

Location

Ohio

-

vCPU

2

-

RAM

1 GB

-

Storage

40 GB SSD

-

Network

Unknown

-

OS image

ubuntu\_24\_04

-

Trigger

Scheduled

-

Queued at

Oct 12, 2026, 14:14:00 UTC

[Visit Amazon Lightsail](https://rackcensus.com/go/lightsail)

## Latest runs of this plan

- [Montreal Oct 13, 2026](https://rackcensus.com/benchmarks/jmp32a-lightsail-micro-2-tb-transfer-ca-central-1-benchmark)Skipped
- [Frankfurt Oct 8, 2026](https://rackcensus.com/benchmarks/jxqotk-lightsail-micro-2-tb-transfer-eu-central-1-benchmark)Skipped
- [Oregon Oct 8, 2026](https://rackcensus.com/benchmarks/is0cuo-lightsail-micro-2-tb-transfer-us-west-2-benchmark)Skipped
- [Virginia Oct 8, 2026](https://rackcensus.com/benchmarks/o2v9uf-lightsail-micro-2-tb-transfer-us-east-1-benchmark)Skipped
- [Ireland Oct 7, 2026](https://rackcensus.com/benchmarks/gvuau6-lightsail-micro-2-tb-transfer-eu-west-1-benchmark)Skipped

[Full history of this plan](https://rackcensus.com/plans/k4spwg-lightsail-micro-2-tb-transfer-benchmarks/history)

## 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 | 10.9 GB/s | 3 | 0.568% |
| Scale higher is better | 12.7 GB/s | 3 | 1.19% |
| Add higher is better | 13.1 GB/s | 3 | 1.29% |
| Triad higher is better | 13.1 GB/s | 3 | 1.43% |

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 | 234/s | 3 | 0.238% |
| RSA 4096 verifies higher is better | 15,359/s | 3 | 0.0188% |
| SHA-256 higher is better | 258 MB/s | 3 | 0.116% |
| AES-256-GCM higher is better | 3.42 GB/s | 3 | 0.0711% |
| ChaCha20-Poly1305 higher is better | 2.2 GB/s | 3 | 0.0979% |

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 | 7.7 ms | 3 | 0.12% |
| Requests per second, 90th percentile higher is better | 257/s | 3 | 0% |
| Request latency, 99.9th percentile lower is better | 14.4 ms | 3 | 5.62% |
| Requests per second, average higher is better | 256/s | 3 | 0.182% |

Average of 3 runs. Spread is the standard deviation as a share of the average.

## Disk

| Block size | Read | Write | Total |
| --- | --- | --- | --- |
| 4K | 6 MB/s (1,547 IOPS) | 6 MB/s (1,545 IOPS) | 12.1 MB/s (3,092 IOPS) |
| 64K | 64.5 MB/s (1,032 IOPS) | 64.8 MB/s (1,037 IOPS) | 129.4 MB/s (2,069 IOPS) |
| 512K | 62 MB/s (123 IOPS) | 64.9 MB/s (129 IOPS) | 126.9 MB/s (252 IOPS) |
| 1M | 61.3 MB/s (61 IOPS) | 65.7 MB/s (65 IOPS) | 127.1 MB/s (126 IOPS) |

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

## Network

### IPv4 transfer speed

Loading...

| Target | Protocol | Send | Receive |
| --- | --- | --- | --- |
| Clouvider, London, UK (10G) | IPv4 | 1.51 Gbps | 707 Mbps |
| Eranium, Amsterdam, NL (100G) | IPv4 | 865 Mbps | 2.65 Gbps |
| Leaseweb, Singapore, SG (10G) | IPv4 | 704 Mbps | 1.05 Gbps |
| Clouvider, Los Angeles, CA, US (10G) | IPv4 | 1.08 Gbps | 769 Mbps |
| Leaseweb, NYC, NY, US (10G) | IPv4 | 2.35 Gbps | 3.17 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 | 1,059 | 0.944 ms |
| fdatasync | 1,058 | 0.946 ms |
| fsync | 349 | 2.86 ms |
| fsync\_writethrough | Not supported here | n/a |
| open\_sync | 352 | 2.84 ms |
| Two 8 kB writes |
| --- |
| open\_datasync | 533 | 1.88 ms |
| fdatasync | 976 | 1.03 ms |
| fsync | 334 | 3 ms |
| fsync\_writethrough | Not supported here | n/a |
| open\_sync | 174 | 5.74 ms |
| open\_sync at different write sizes |
| --- |
| 1 \* 16kB open\_sync write | 342 | 2.92 ms |
| 2 \* 8kB open\_sync writes | 176 | 5.69 ms |
| 4 \* 4kB open\_sync writes | 86.5 | 11.6 ms |
| 8 \* 2kB open\_sync writes | 44.5 | 22.5 ms |
| 16 \* 1kB open\_sync writes | 22.2 | 45 ms |
| fsync on a non-write descriptor |
| --- |
| write, fsync, close | 349 | 2.87 ms |
| write, close, fsync | 349 | 2.87 ms |
| Non-synced 8 kB writes |
| --- |
| write | 1,009,229 | 0.001 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 | 671 | 1.43 ms | 2.06 ms | 2.39 ms | 6.47 ms | 0 |
| Read/write (TPC-B like) | 8 | 2,380 | 2.99 ms | 6.26 ms | 9.08 ms | 13.1 ms | 0 |
| Read/write (TPC-B like) | 32 | 2,943 | 7.92 ms | 28.1 ms | 49.1 ms | 77 ms | 0 |
| Read only | 1 | 17,351 | 0.054 ms | 0.071 ms | 0.096 ms | 0.187 ms | 0 |
| Read only | 8 | 36,244 | 0.19 ms | 0.389 ms | 0.51 ms | 0.73 ms | 0 |
| Read only | 32 | 34,722 | 0.63 ms | 1.31 ms | 1.85 ms | 3.31 ms | 0 |

Scale 10 (1,000,000 accounts), loaded in 2.18 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 | 394 | 2.6 ms | 3.08 ms | 3.91 ms | 9.02 ms | 0 |
| Read/write (TPC-B like) | 8 | 1,001 | 5.88 ms | 15.9 ms | 20 ms | 32.1 ms | 0 |
| Read/write (TPC-B like) | 32 | 1,063 | 27.2 ms | 49.9 ms | 74.9 ms | 247 ms | 0 |
| Read only | 1 | 954 | 1.22 ms | 1.49 ms | 2.38 ms | 5.4 ms | 0 |
| Read only | 8 | 1,604 | 5.2 ms | 9.91 ms | 12 ms | 15 ms | 0 |
| Read only | 32 | 1,748 | 20 ms | 31 ms | 36.3 ms | 293 ms | 0 |

Scale 100 (10,000,000 accounts), loaded in 49.6 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 | 130 | 2,603 | 7.17 ms | 10.7 ms | 16.4 ms | 0 |
| Read/write | 8 | 474 | 9,481 | 13.5 ms | 46.6 ms | 70.5 ms | 0 |
| Read/write | 32 | 675 | 13,493 | 46.6 ms | 70.5 ms | 89.2 ms | 0 |
| Read only | 1 | 633 | 10,120 | 1.5 ms | 2.18 ms | 2.91 ms | 0 |
| Read only | 8 | 1,192 | 19,071 | 6.79 ms | 10.5 ms | 11.9 ms | 0 |
| Read only | 32 | 1,121 | 17,931 | 26.7 ms | 57.9 ms | 65.6 ms | 0 |

10 tables of 100,000 rows, loaded in 15.6 s. 60 s per run, one connection per thread.

### Redis

#### memtier

| Mix | Operations/s | Hits/s | Median | p99 | p99.9 |
| --- | --- | --- | --- | --- | --- |
| 1:10 set:get | 56,499 | 51,363 | 0.975 ms | 2.69 ms | 4.38 ms |
| 1:1 set:get | 55,836 | 27,917 | 0.975 ms | 2.75 ms | 4.38 ms |

1,000,000 keys of 32 bytes. 64 connections over 2 threads, 60 s per ratio.

## Web frameworks

| Framework | Fortunes req/s | Single query req/s | JSON req/s | Fortunes p99 at 256 connections |
| --- | --- | --- | --- | --- |
| Next.js nextjs | 221 | 1,037 | 1,428 | 3.53 s |
| Express express-postgresjs | 8,080 | 9,723 | 14,614 | 1.12 s |
| Fastify fastify-postgres | 7,941 | 10,835 | 15,418 | 1.16 s |
| NestJS nestjs | 1,056 | 1,954 | 8,249 | 799 ms |
| Nuxt nuxt | 4,883 | 7,836 | 12,566 | 1.89 s |
| FastAPI fastapi | 2,170 | 2,712 | 9,394 | 228 ms |
| Django django-postgresql | 1,023 | 1,236 | 2,904 | 307 ms |
| Rails rails | 1,245 | 1,741 | 6,233 | 322 ms |
| Laravel laravel | 37.9 | 38 | 879 | 6.87 s |
| Symfony symfony | 45 | 47.1 | 151 | 5.76 s |

Peak requests per second across the 64 and 256 connection levels, measured with wrk. Each test has to pass the TechEmpower response checks first, or it's marked invalid.

### WooCommerce

#### Page mix

Failed: k6 summary at 32 virtual users didn't parse: k6 recorded no requests for step category

#### Cart and checkout

Failed: k6 summary at 32 virtual users didn't parse: k6 recorded no requests for step checkout

### Discourse

#### Signed in

Skipped: discourse-setup refuses boxes with less than 1 GB of memory, this one has 909 MB

#### Anonymous

Skipped: discourse-setup refuses boxes with less than 1 GB of memory, this one has 909 MB

### Ghost

#### Readers

Failed: k6 summary at 4 virtual users didn't parse: k6 recorded no requests for step author

#### Staff in Ghost Admin

Failed: k6 summary at 4 virtual users didn't parse: k6 recorded no requests for step author

### Wagtail

#### Visitors

| Step | Requests/s | Median | p95 | p99 | Error rate |
| --- | --- | --- | --- | --- | --- |
| 1 virtual user |
| --- |
| Home page | 0.18 | 645 ms | 955 ms | 1.15 s | 0% |
| Blog index | 0.18 | 2.33 s | 3.16 s | 3.65 s | 0% |
| Blog post | 0.525 | 234 ms | 400 ms | 462 ms | 0% |
| Bread page | 0.525 | 238 ms | 590 ms | 799 ms | 0% |
| Location page | 0.18 | 235 ms | 726 ms | 790 ms | 0% |
| Site search | 0.18 | 396 ms | 602 ms | 628 ms | 0% |
| 4 virtual users |
| --- |
| Home page | 0.135 | 2.96 s | 4.27 s | 4.5 s | 0% |
| Blog index | 0.18 | 12.4 s | 15.1 s | 15.5 s | 0% |
| Blog post | 0.421 | 960 ms | 1.32 s | 1.82 s | 0% |
| Bread page | 0.451 | 1.12 s | 1.57 s | 1.62 s | 0% |
| Location page | 0.18 | 997 ms | 1.4 s | 1.43 s | 0% |
| Site search | 0.135 | 1.43 s | 2.58 s | 2.88 s | 0% |
| 16 virtual users |
| --- |
| Home page | 0.0846 | 11.2 s | 15.7 s | 16.6 s | 0% |
| Blog index | 0.141 | 31 s | 39.8 s | 40.1 s | 0% |
| Blog post | 0.352 | 7.76 s | 14.5 s | 15.2 s | 0% |
| Bread page | 0.423 | 7.28 s | 10.7 s | 12.6 s | 0% |
| Location page | 0.155 | 6.48 s | 10.1 s | 11.9 s | 0% |
| Site search | 0.127 | 8.88 s | 10.9 s | 11.5 s | 0% |

#### Editors in the Wagtail admin

| Step | Requests/s | Median | p95 | p99 | Error rate |
| --- | --- | --- | --- | --- | --- |
| 1 virtual user |
| --- |
| Admin dashboard | 0.0584 | 805 ms | 985 ms | 1.01 s | 0% |
| Page explorer | 0.131 | 2.56 s | 3.71 s | 3.94 s | 0% |
| Page editor | 0.175 | 1.27 s | 2.17 s | 2.42 s | 0% |
| Image library | 0.0584 | 716 ms | 6.93 s | 7.79 s | 0% |
| Admin page search | 0.0584 | 286 ms | 591 ms | 630 ms | 0% |
| 4 virtual users |
| --- |
| Admin dashboard | 0.0424 | 5.59 s | 5.96 s | 5.99 s | 0% |
| Page explorer | 0.0847 | 12.7 s | 17.4 s | 17.7 s | 0% |
| Page editor | 0.127 | 6.56 s | 9.32 s | 9.6 s | 0% |
| Image library | 0.0424 | 2.81 s | 3.23 s | 3.26 s | 0% |
| Admin page search | 0.0424 | 1.05 s | 1.25 s | 1.27 s | 0% |

k6 with a fixed number of virtual users, 61 to 71 s per level, after a 23 s warmup. The error rate counts responses that weren't a 200. Wagtail ran the way bakerydemo ships it: uWSGI with 2 workers of 4 threads each, whatever the box, and Postgres and Redis on stock settings. Memory peaked with Wagtail at 298 MB, Postgres at 174 MB, and Redis at 24 MB.

## Advertised vs. measured

| Spec | Advertised | Measured |
| --- | --- | --- |
| vCPU | 2 | 2 |
| CPU | Shared vCPU | 10.2% of busy CPU time stolen |
| RAM | 1 GB | 910 MiB |
| Storage | 40 GB SSD | 38.7 GiB |
| Architecture | x86\_64 | x86\_64 |
| Virtualization | KVM | AMAZON |

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) Platinum 8259CL CPU @ 2.50GHz

**CPU cores:** 2

**CPU frequency:** 2500 MHz

**AES-NI:** Yes

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

**RAM reported:** 910 MiB

**Swap reported:** 0 MiB

**Disk reported:** 38.7 GiB

**Virtualization reported:** AMAZON

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

**Distro:** Ubuntu 24.04.4 LTS

**Kernel:** 7.0.0-1012-aws

**Architecture:** x86\_64

**IPv4 reachable:** Yes

**IPv6 reachable:** Yes

## Advertised at test time

**Plan:** Micro, 2 TB transfer

**Product line:** General Purpose

**Location:** Ohio

**vCPU:** 2 shared vCPU

**Architecture:** x86\_64

**RAM:** 1 GB

**Storage:** 40 GB SSD

**Virtualization:** KVM

**Network:** Unknown

**Transfer:** 2.05 TB

**Port 25:** On request

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

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

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

**Ran at:** Oct 12, 2026, 14:14:33 UTC

**Parser version:** 5

## Run timeline

**Queued:** Oct 12, 2026, 14:14:00 UTC

**Server created:** Oct 12, 2026, 14:14:25 UTC

**First update from the server:** Oct 12, 2026, 14:14:25 UTC

**Completed:** Oct 12, 2026, 16:01:32 UTC

**Server deleted:** Oct 12, 2026, 16:01:32 UTC

**Cost of this run:** $0.017

Tests 35 of 39 done Live output 733 lines

Setup 2 cores, 909.5 MiB RAM 4 of 4Done

Disk (fio) 12.7 MB/s at 4k, 133 MB/s at 1m 5 of 5Done

Network, IPv4 (iperf3) Median 1.08 Gbit/s send, 1.05 Gbit/s receive, 2 retried 5 of 5Done

Phoronix (memory, TLS, scheduler) 3 of 3Done

Datastores 5 of 5Done

Web frameworks 4 failed, 2 skipped 12 of 16Some failed

TestResultTime

Next.js fortune 256c 162 req/s rps, fortune 256c 3m 02s

Express fortune 256c 8,080 req/s rps, fortune 256c 2m 51s

Fastify fortune 256c 7,941 req/s rps, fortune 256c 2m 50s

NestJS fortune 256c 540 req/s rps, fortune 256c 3m 07s

Nuxt fortune 256c 4,883 req/s rps, fortune 256c 2m 49s

FastAPI fortune 256c 2,134 req/s rps, fortune 256c 3m 11s

Django fortune 256c 974 req/s rps, fortune 256c 3m 09s

Rails fortune 256c 1,245 req/s rps, fortune 256c 3m 14s

Laravel fortune 256c 37.9 req/s rps, fortune 256c 3m 49s

Symfony fortune 256c 45 req/s rps, fortune 256c 5m 11s

WooCommerce page mix 32 vus Stopped k6 summary at 32 virtual users didn't parse: k6 recorded no requests for step category 6m 44s

WooCommerce cart flow 32 vus Stopped k6 summary at 32 virtual users didn't parse: k6 recorded no requests for step checkout 3m 35s

Discourse, signed in Discourse Not run discourse-setup refuses boxes with less than 1 GB of memory, this one has 909 MB

Discourse, anonymous Discourse Not run discourse-setup refuses boxes with less than 1 GB of memory, this one has 909 MB

Ghost, readers warmup Stopped k6 summary at 4 virtual users didn't parse: k6 recorded no requests for step author 13m 26s

Ghost, staff in Ghost Admin warmup Stopped k6 summary at 4 virtual users didn't parse: k6 recorded no requests for step author 4m 15s

Wagtail, visitors 16 vus 1.28 req/s rps, 16 vus 7m 07s

Wagtail, editors in the Wagtail admin 4 vus 0.34 req/s rps, 4 vus 2m 55s

Finish Results saved 1 of 1Done

Watch party 0 watching

This party closed at 17:01 UTC. It's read only now.

## Watch party

Loading the party
