What are the margins on inference?
One GB200 NVL72 rack serving GLM-5.3 for a day at 95 tokens/s per user.
Each GPU sells 171 output tokens/s at $19.39 per million, input included: $11.97 an hour against $5.85 rent. Each user sees 95 tok/s, what OpenRouter calls throughput.
How the numbers add up
| Throughput per GPU | output tok/s | |
|---|---|---|
| Benchmark1 | InferenceX, 95 tok/s per user | 311 |
| On real traffic | OpenRouter: 6.3 fresh input tokens per output vs 5 in the benchmark | 269 |
| Sold15,16 | 98% uptime × 65% utilization | 171 |
| Tokens per day | ||
| Output | 1.1B | |
| Fresh input | 10% of 63 per output | 6.7B |
| Cached input2 | 90% | 60.4B |
| 12% of all GLM-5.3 traffic on OpenRouter | ||
| Revenue | per day | |
| Output3 | 1.0661B × $4.40/M | $4,691 |
| Fresh input | 6.7164B × $1.12/M | $7,522 |
| Cached input | 60.447B × $0.14/M | $8,463 |
| Total | $20,676 | |
| Cost | per day | |
| Rent8 | 72 GPUs × $5.85 × 24 h | $10,109 |
| Overhead14 | 2% of revenue | $414 |
| Total | $10,522 | |
| Profit | 49% of revenue | $10,153 |
Not included: taxes, and sales and marketing beyond the overhead slider. Totals are computed before rounding.
FAQ
Where does the throughput number come from?
How optimized is the serving setup?
The GB200 figure comes from the 24-prefill, 16-decode run in InferenceX's public recipe (run logs):
- NVIDIA Dynamo over SGLang, October 2026 development builds
- prefill on 24 GPUs (three workers of 8), decode on 16 (one worker); throughput is per GPU
- NVFP4 weights, FP8 KV cache, EAGLE speculative decoding with up to 6 draft tokens
- experts spread across the 16 decode GPUs, data-parallel attention, FlashInfer MoE kernels
- sessions pinned to one prefill worker; prefill caches overflow to CPU memory
The page applies that per-GPU rate to all 72 GPUs, as if the rack were split ideally for its traffic (about 47 prefill and 25 decode). With this recipe's 8- and 16-GPU blocks the nearest split, 40 and 32, serves about 15% less. Providers with their own stacks may do better: GLM's GB200 throughput at 100 tok/s per user went from 69 to 287 per GPU between August and October 2026.
Other estimates show 50–90% margins; why is this lower?
Rent explains most of it.
- They charge about $5 per GB300-hour, roughly what an owner or a large multi-year deal pays; on demand, one rack costs $12.42. At $5 rent and list prices this page gives a GB300 73% at 60% utilization, and its own contract and owning cases are 49% and 73%.
- This page uses OpenRouter's real traffic, whose 63 input tokens per output load prefill harder than the benchmark sessions, and median provider prices rather than list.
- DeepSeek's $38 of revenue per GPU-hour comes from a lab serving its own model on its own stack, with capacity that grows with demand.
- Serving software is improving fast. 25% more tokens per GPU takes the margin from 49% to 59% on the contract and from 10% to 28% on demand.
Where do kernels, speculative decoding and routing show up?
Only in the throughput. The page has no control for serving software; its throughput is one measured run, and a better stack shows up as a higher number. On OpenRouter's traffic a GB200 spends about 65% of its time on prefill (fresh input) and 35% on decode (output), so prefill speed matters more than decode speed here.
- Prefill gets faster with attention and FP4 GEMM kernels, and with chunk sizes tuned to the context lengths.
- Decode gets faster with speculative decoding, MoE kernels and wider expert parallelism. The run already drafts up to 6 tokens a step with EAGLE.
- The page assumes the ideal split between prefill and decode GPUs. A real deployment loses some capacity to worker block sizes unless its split is tuned to its traffic.
The two biggest gains are on the sliders. Cache hits rise when a conversation is routed back to the rack that holds its cache and when caches stay longer in GPU and CPU memory. Utilization rises with batch or off-peak pricing, or a second model on the rack to fill the quiet hours.
Why GLM-5.3?
How is "63 input tokens per output" worked out?
Why does the cache rate matter so much?
Which prices does it use?
Are reasoning tokens counted?
What does GPU utilization mean, and why 65%?
The share of the rack's measured capacity that is sold, averaged over the day. A rack has to be ready for its busiest times, so it sells the average share of them:
- across days, OpenRouter's open-model traffic averages 81–84% of its week's busiest day (calculation)
- within a day, Azure chat traffic averages 77% of its busiest hour (Azure LLM Inference Dataset 2024; DynamoLLM puts peaks at 1.7× the average for chat, 2.8× for coding); worldwide agent traffic is flatter (FineServe, 2026)
- a high-traffic model gets the upper end, with headroom for bursts: 0.84 × 0.82 × 0.95 ≈ 65%
- first-party services run higher (DeepSeek's fleet averaged 82% of its peak); multi-model marketplaces lower (Alibaba's GPUs were 13–34% busy, Aegaeon)
- a new provider also has to win OpenRouter's routing on price, speed and reliability to get traffic at all
Renting and owning get the same 65%: a single rack cannot hand back part of itself when demand drops.
Why multiply the benchmark by utilization?
Why does faster output per user lower profit?
How is the rent set?
Why is owning so much cheaper than renting on demand?
What about NVIDIA's "$5M in, $75M of tokens out"?
What overhead is included, and why 2%?
How current is this?
Can I change the assumptions or contribute?
Sources (17)
- InferenceX AgentX: GLM-5.2/5.3 on GB200/GB300, 393 Claude Code traces, p90 interactivity 2026-10-23
- OpenRouter GLM-5.3 page: daily prompt, completion and cached token counts, Sep 25 to Oct 24, 2026 (ratios computed in research/openrouter_ratios.py) 2026-10-25
- OpenRouter GLM-5.3 endpoints and prices (48 endpoints, 16 FP4) 2026-10-25
- Z.ai API pricing 2026-10-16
- CoreWeave pricing: GB200 NVL72 $42.00/hr per 4-GPU node ($10.50/GPU-hr) 2026-10-25
- CoreWeave docs: NVL72-powered instances must be deployed as full racks of 18 nodes 2026-10-27
- Verda GB300 NVL72 pay-as-you-go $12.42/GPU-hr ($894.20 for 72 GPUs) 2026-10-25
- Disclosed NVL72 contracts (HIVE/BUZZ 8-Ks) and 2026 price rise (CoreWeave Q2 call, Nebius Q2 letter, IREN FY26 call) 2026-10-25
- SemiAnalysis, H100 vs GB200 NVL72 training benchmarks (capex section) 2024, re-cited 2026
- Data Gravity, How much does an NVIDIA NVL72 cost? 2026-08-31
- EIA Electric Power Monthly, Table 5.6.A 2026-07 (preliminary)
- CBRE North America colocation pricing via Encor Advisors 2025-H2
- Owning opex: NVIDIA DGX support terms; CoreWeave 2025 10-K technology & infrastructure expense less D&A (~$1.04M per MW-year, ~$342 per 120 kW rack-day); remote hands $125/hr 2026-10-25
- Stripe pricing: 2.9% + 30¢ per domestic card payment, 0.4% per paid invoice, 0.8% for ACH debit (capped at $5) 2026-10-28
- InferenceX TCO calculator: mean time between interrupts 24 days, 12-hour recovery, availability 0.98; Meta Prometheus GB200/GB300 MTBI ~47-54K GPU-hours 2026-10-25
- Load shape of LLM serving: OpenRouter open-model traffic, average day 81-84% of the busiest day of its week, Sep 25 to Oct 24, 2026 (research/openrouter_load_shape.py); Azure LLM Inference Dataset 2024, chat averages 77% of its busiest hour (research/azure_trace_utilization.py) 2026-10-26
- zai-org/GLM-5.3 model card 2026-08-28