Local Host Lab · Tools

Cost-performance, per gigabyte and per token

What local hardware costs per gigabyte of memory, per gigabyte per second of bandwidth, and per million generated tokens, set against what hosted providers charge for the same open models. Prices move every month, so every one carries the date it was read.

Prices as of 2026-10-13 · electricity at the US residential average · estimates labelled as such

Part of the Local Host Lab notebook. The same arithmetic, with your own numbers, is in the calculator; the hardware itself is laid out on the ladder.

Assumptions

  • Electricity at $0.1831 per kWh, the US average residential price for July 2026 (EIA, Electric Power Monthly, table 5.6.A, preliminary, read 2026-10-13).
  • Power while decoding taken as the board or system power rating, which overstates it; measured draw is lower on most machines.
  • Hardware amortised over 3 years of 8 hours of decoding a day, with no resale value. The rest of the computer, cooling and the operator's time are left out.
  • One stream at a time. Decode speed is the bandwidth ceiling times 0.75, the low end of the 0.75 to 0.82 measured for dense models in this notebook (calibration). Batching many requests multiplies throughput; see the last section.
  • The reference model is a dense 27B at about 4.25 bits per weight: Qwen3.6-27B IQ4_XS, a 15.44 GB file, as measured in entries 12 and 13. On 16 GB cards it fits only with a quantised KV cache and a moderate context.

The table

Hardware PriceUSD, kind $ / GiB $ / (GB/s) 27B decodetok/s, est. Per 1M tokenshardware + power At 24 h/day
RTX 5080 16GB16 GiB · 960 GB/s · 360 W $1,489.99retail 93 1.55 47 $1.41 $0.73
RTX 3090 24GB24 GiB · 936 GB/s · 350 W $1,749eBay asking 73 1.87 45 $1.61 $0.80
RTX 4090 24GB24 GiB · 1,008 GB/s · 450 W $3,699eBay asking 154 3.67 49 $2.86 $1.27
Radeon RX 7900 XTX 24GB24 GiB · 960 GB/s · 355 W $1,050retail 44 1.09 47 $1.10 $0.63
Intel Arc Pro B60 24GB24 GiB · 456 GB/s · 200 W $649.99retail 27 1.43 22 $1.39 $0.77
RTX 5090 32GB32 GiB · 1,792 GB/s · 575 W $6,300retail 197 3.52 87 $2.63 $1.10
Tesla V100 32GB PCIe (2017)32 GiB · 900 GB/s · 250 W $795used 25 0.88 44 $0.87 $0.48
Instinct MI50 32GB (2018)32 GiB · 1,000 GB/s · 300 W $520used 16 0.52 49 $0.65 $0.43
RTX PRO 6000 Blackwell 96GB96 GiB · 1,792 GB/s · 600 W $22,500eBay asking 234 12.56 87 $8.55 $3.08
NVIDIA DGX Spark 128GB128 GiB · 273 GB/s · 240 W $6,950list 54 25.46 13 $17.54 $6.46
AMD Ryzen AI Max+ 395, 128GB (Framework Desktop)128 GiB · 256 GB/s · 120 W $3,449list 27 13.47 12 $9.29 $3.42
Mac Studio M5 Max 128GB (2026)128 GiB · 614 GB/s · 480 W $5,399list 42 8.79 30 $6.56 $2.73
Mac mini M5 Pro 64GB (2026)64 GiB · 307 GB/s · 155 W $3,199list 50 10.42 15 $7.33 $2.80
Mac Studio M5 Ultra 256GB (2026)256 GiB · 1,200 GB/s · 480 W $9,499list 37 7.92 58 $5.59 $2.14

Highlighted rows are machines measured in this notebook. Price kinds: list is the vendor's own price, retail a current store listing or street-price index, used an appraiser's range and eBay asking the median of current listings, the two that vary most; each links to its source, with the full description on hover, all read on or just before 2026-10-13. Electricity is between $0.29 and $0.92 per million tokens on every row, so on the cheapest hardware it is a third to a half of the total. The rated power used here overstates it: two V100s drew 262 to 281 W while decoding in entry 03, against a rating of 500 W.

estimated local cost, USD per million output tokens hosted Qwen3.8-27B: median $2.33, cheapest $0.50
MI50 32GB$520 · 49 tok/s est.
$0.65
V100 32GB$795 · 44 tok/s est.
$0.87
RX 7900 XTX$1,050 · 47 tok/s est.
$1.10
Arc Pro B60$650 · 22 tok/s est.
$1.39
RTX 5080$1,490 · 47 tok/s est.
$1.41
RTX 3090$1,749 · 45 tok/s est.
$1.61
RTX 5090$6,300 · 87 tok/s est.
$2.63
RTX 4090$3,699 · 49 tok/s est.
$2.86
M5 Ultra$9,499 · 58 tok/s est.
$5.59
M5 Max$5,399 · 30 tok/s est.
$6.56
M5 Pro$3,199 · 15 tok/s est.
$7.33
RTX PRO 6000$22,500 · 87 tok/s est.
$8.55
Ryzen AI Max+ 395$3,449 · 12 tok/s est.
$9.29
DGX Spark$6,950 · 13 tok/s est.
$17.54
Hardware plus electricity per million tokens of single-stream decoding of a dense 27B, at 8 hours a day over 3 years, cheapest first. The dashed lines are the median and cheapest hosted prices for the same model on OpenRouter (2026-10-13). Gaming cards and used datacenter cards land under the median hosted price; none reaches the cheapest provider, and the large-memory machines cost several times the median for a model this size.

Against hosted prices

Hosted providers sell the same open models per token. These are output-token prices, which dominate for generation; input is usually several times cheaper. All read 2026-10-13.

Model Where OutputUSD / 1M InputUSD / 1M
Qwen3.8-27B OpenRouter, median of 20 providers 2.33 0.20
Qwen3.8-27B OpenRouter, cheapest provider 0.50 0.02
Qwen3.8-27B Alibaba Cloud Model Studio, international 3.00 0.50
gpt-oss-120b OpenRouter, median of 24 providers 0.55 0.10
gpt-oss-120b OpenRouter, cheapest provider 0.15 0.03
gpt-oss-20b OpenRouter, median of 11 providers 0.15 0.03
DeepSeek-V4.1-Flash DeepSeek API, peak / off-peak 1.20 / 0.60 0.30 / 0.15
GLM-5.3-Flash Z.ai API 0.50 0.15

At one stream and eight hours a day, gaming cards and used datacenter cards come in under the median hosted price of a 27B model, and nothing comes in under the cheapest one. The large-memory machines (the DGX Spark, the Ryzen AI Max, the Macs) cost two to eight times the hosted median for this model: their strength is fitting large mixture-of-experts models, not running a 27B fast. The cheapest rows are cheap because the cards are old, and old cards lose software support: CUDA 13 and PyTorch 2.11 no longer support the V100 (V100 notes). Against the median, the notebook's first finding still stands for the machines most people would buy: local hardware buys privacy, offline use and control more than it buys a lower price per token.

What batching changes

Hosted providers serve many requests at once. Decode for several streams reads the weights once per step for all of them, so total throughput rises far faster than single-stream speed. In the llama.cpp DGX Spark benchmark file, gpt-oss-20b generated 80.1 tok/s for one stream and 436.4 tok/s summed over 16 streams, 5.4 times more, on the same machine (llama.cpp benches/dgx-spark, run 2026-02-05). A local machine used by one person rarely has 16 requests waiting. Shared within a group, it can, and the per-token cost above then falls by a similar factor.