Cua

What does one Space-hour cost on AWS when packed?

On one AWS c7g.2xlarge ($0.2900/machine-hour on demand) holding at least 25 idle Spaces of 1 vCPU and 512 MiB, a Space-hour cost at most $0.0116/Space-hour at list price (3 runs, 2026-10-25). The account plan's 25-session limit stopped the runs, not the machine.

Measured Build app 0.15.0, cua 0.9.0n = 3Raw data (CSV)

Results

Instance list price divided by the Spaces it held at once. Lower is better.

Upper bound
$0.0116/Space-hour
Values shown in the chart
MeasureValue
Upper bound$0.0116/Space-hour
Samples3

Method

Released cua 0.9.0 elastic pool. One pinned c7g.2xlarge (8 vCPU Graviton3, 16 GiB) host (cua cloud hosts add). Each run asks for 32 Spaces at once (16 concurrent cua spaces create ghcr.io/trycua/linux:24.04-slim --on aws --instance-type c7g.2xlarge --cpus 1 --memory-mb 512), runs cua sb exec <ref> -- echo ok in every created Space, counts the Spaces that answer on that one host, then deletes them all. n=3 runs. $/Space-hour = the instance's on-demand list price / Spaces held at once (AWS Price List API, c7g.2xlarge Linux on-demand us-west-2 $0.29/h, effective 2026-10-01).

Caveats

  • The ceiling of 25 Spaces per machine is the account plan's live-session limit, not the machine's: further creates were refused with 'Your plan allows 25 live sessions'. So the cost per Space-hour is an upper bound.
  • Price is the instance's on-demand list price only; extra.usd_per_space_hour_incl_public_ipv4 adds its public IPv4. Disk and traffic are not included.
  • Spaces were idle apart from the exec check: booked-shape density, not a CPU-bound load.

Environment and build

MachineMac Studio (the client), Mac14,13
ChipApple M2 Max, 12 cores
Memory96 GB
OSmacOS 26.6.2
Whereclient in California, home network
Kindcontainer (gVisor) on one elastic pool host
Cloudaws
Machine typec7g.2xlarge (8 vCPU Graviton3, 16 GiB)
Space shapeghcr.io/trycua/linux:24.04-slim, 1 vCPU / 512 MiB booked each
Autoscaleon, $0.40/h cap (blocks a 2nd host), host pinned via `cua cloud hosts add`
Buildcua CLI bundled in Cua Spaces 0.15.0 DMG (GitHub release cua-spaces-v0.15.0, published 2026-10-24T19:42Z), `cua --version` = cua 0.9.0
App0.15.0
cua0.9.0

Reproduce

# Cua Spaces 0.15.0 from cua.ai/download (its cua CLI is cua 0.9.0)
curl -fLO https://cua.ai/benchmarks/cost-per-space-hour-aws/files/pack.py
cua auth login && cua cloud connect aws --profile <aws-profile> --region us-west-2
cua daemon start --foreground &
cua cloud budget --autoscale on --max-per-hour 0.40 --monthly 20
cua cloud hosts add --provider aws --type c7g.2xlarge --ttl-hours 2
for r in 1 2 3; do python3 pack.py aws c7g.2xlarge 32 16 run$r --cpus 1 --memory-mb 512; done
cua cloud hosts rm <host> && cua cloud sweep --all --delete

Helper scripts: pack.py.

Cua commands use the published Cua Spaces 0.15.0 release and the public trycua/cua repository at the tag cua-spaces-v0.15.0. Downloads: samples (CSV), result (JSON), this page as Markdown.

Questions

Why is it an upper bound?

Every run stopped at 25 Spaces because the account plan allows 25 live sessions. The machine wasn't the limit, so more Spaces per machine would lower the cost.

What does the price include?

The instance's on-demand list price only. With its public IPv4 address it is $0.0118 per Space-hour. Disk and traffic are not included.

Can I run this myself?

Yes. The commands under Reproduce use the published Cua Spaces 0.15.0 release and the public trycua/cua repository at the tag cua-spaces-v0.15.0. A `cua bench run` command that wraps them is coming; it isn't in a release yet.

Checked 2026-10-25. Sources: the samples and result files above, measured by Cua. All benchmarks.

Open in your browser to continue

Sign-in often fails inside this app's built-in browser. Open this page in Safari or Chrome to continue.