aliteq.

What it costs to run gpt-oss 120B (MoE)

Trying to decide what to buy? The best GPU for gpt-oss 120B (MoE) →

116.8B paramsMoE · 128 experts, 4 active128k max contextapache-2.0

Cheapest way to rent it right now

$0.10/hr

NVIDIA L40S · Q2_K · spot · ≈ $25/mo at 8h/day

Live price captured Sun, 01 Nov 2026 00:20:10 GMT.Referral link — we may earn a commission at no cost to you; it never changes which card is cheapest.

Just want to use it? Per-token API

$0.05in·$0.25out

per 1M tokens · OpenAI GPT OSS 120B on Novita AI · read Oct 29, 2026

No GPU to manage: you pay per token, which suits occasional use. Your prompts run on Novita's servers, not your own machine.

Use it on Novita AIReferral link

Price as listed on Novita's pricing page on Oct 29, 2026; it may have changed. We may earn a commission at no cost to you.

Rent a GPU or pay per token?

A per-token API charges for every token, so it is cheapest when you use gpt-oss 120B (MoE) a little. A rented GPU charges by the hour whether it is busy or idle, so it only pays off once you push enough tokens through it. Set your daily volume and see where the line falls for this model, using the cheapest live rental that fits and that we have a memory-bandwidth figure for (L40S, Q2_K, $0.104/hr spot) and Novita AI's published rate.

Tokens per day (input + output)
Input : output tokens
  • Pay per token · Novita AI$3.00/mo

    $0.10/day · $0.10 per 1M tokens blended at 3:1

  • Rent L40S · Vast.ai$3.13/mo

    $0.10/day · 0.3 GPU-hours needed, 1 h minimum billed

At 1M tokens/day the API is cheaper. Below ~1M tokens/day the API is cheaper; above it, renting the L40S wins.

Rent onVast.aiReferral link

At a glance · 3:1 input:output

Tokens/dayAPI /moRent /mo
100K$0.30$3.13
1M$3.00$3.13
10M$30.00$9.32
100M$300$93.19

Cheaper option in green. 30-day month. Break-even: ~1M tokens/day.

How we work it out. API cost = input tokens × $0.05 + output tokens × $0.25 per 1M. Rent cost = the hourly price × the GPU time needed, with at least 1 hour billed per day (spin-up, model load and idle time cost money too). GPU time assumes the L40S writes ~303 output tokens/sec for gpt-oss 120B (MoE) at Q2_K (our estimate: its 864 GB/s memory bandwidth from the spec sheet, not yet confirmed by a second source ÷ the bytes of weights read per token, × 75% efficiency, one request at a time) and reads prompt tokens 10× faster than it writes. Above 24 GPU-hours a day you would need more than one card.

These are estimates: the tokens/sec figure is our model, not a benchmark, and batching many requests (vLLM, SGLang) can raise a rented card's throughput a lot, which moves the break-even lower. Rental price captured Sun, 01 Nov 2026 00:20:10 GMT; it is a spot price, and spot machines can be interrupted. API price as listed by Novita AI on Oct 29, 2026; API prices change. Referral links: we may earn a commission at no cost to you, and it never changes which option the numbers favour.

Memory needed, by quantisation

At 16k context. Weights + KV cache + ~0.8 GB overhead.

QuantWeightsKV cacheTotalQuality
F16217.6 GB1.1 GB219.5 GBFull precision. Reference quality, twice the size of Q8 for no practical gain in most chat use.
Q8_0115.6 GB1.1 GB117.5 GBEffectively lossless. Use when VRAM is not the constraint.
Q6_K89.2 GB1.1 GB91.1 GBVery close to Q8 at meaningfully less memory. A safe high-quality pick.
Q5_K_M77.3 GB1.1 GB79.2 GBSmall, hard-to-notice quality loss. Good balance.
Q5_075.3 GB1.1 GB77.3 GBOlder-style 5-bit. Q5_K_M is usually the better pick at the same size.
Q4_K_M66.0 GB1.1 GB67.9 GBThe community default. Best quality-per-gigabyte for most people.
Q4_061.9 GB1.1 GB63.8 GBOlder-style 4-bit, measurably worse than Q4_K_M at a similar size. Avoid unless required.
IQ4_XS57.8 GB1.1 GB59.7 GBNewer 4-bit, smaller than Q4_K_M with comparable quality. Needs a recent llama.cpp.
Q3_K_M53.2 GB1.1 GB55.1 GBNoticeable degradation. Use to fit a larger model that would otherwise not run.
Q2_K45.6 GB1.1 GB47.5 GBHeavy degradation. Almost always better to run a smaller model at Q4_K_M instead.
IQ3_XS44.9 GB1.1 GB46.8 GBAggressive. Usually better than a smaller model at Q4, but test before trusting it.

Cards that can run it

Best quantisation each card fits at 16k context, with live rental price where we track one.

GPUVRAMBest fitUses~tok/sRent from
Apple M3 Ultra512 GBF16220 GB——
Apple M2 Ultra192 GBQ8_0118 GB——
Apple M4 Max (16-core CPU / 40-core GPU)128 GBQ8_0tight118 GB——
AMD Ryzen AI Max+ 395 (Strix Halo, 128 GB)128 GBQ8_0tight118 GB——
NVIDIA DGX Spark (GB10 Grace Blackwell)128 GBQ8_0tight118 GB——
NVIDIA RTX PRO 6000 Blackwell Max-Q Workstation Edition96 GBQ6_Ktight91 GB—$1.590/hrLium
NVIDIA RTX PRO 6000 Blackwell Workstation Edition96 GBQ6_Ktight91 GB—$2.000/hrLium
Apple M2 Max96 GBQ6_Ktight91 GB——
Apple M4 Pro64 GBQ4_0tight64 GB——
NVIDIA RTX 6000 Ada Generation48 GBQ2_Ktight47 GB—$0.494/hrVast.ai
AMD Radeon PRO W790048 GBQ2_Ktight47 GB——
NVIDIA RTX A600048 GBQ2_Ktight47 GB—$0.361/hrVast.ai

How these numbers are produced

  • Model shape comes from the model's own config.json — 36 layers, 64 attention heads, 8 KV heads.
  • Weight size is parameters × effective bits-per-weight. Those constants are checked against real published quantised file sizes — median error 0.7% across 40 measurements.
  • KV cache is 2 × layers × KV-heads × head-dim × context × 2 bytes. Using KV-heads rather than attention heads is what makes this correct for grouped-query attention; treating a GQA model as multi-head overstates the cache by up to 8×.
  • Tokens/sec is an estimate, not a benchmark. Generation is memory-bandwidth-bound, so this is bandwidth ÷ weight-bytes derated to 75%. Real throughput depends on your runtime, batch size and kernels. We don't run our own hardware tests — see our editorial policy.
  • This is a mixture-of-experts model. Generation reads only the experts active for each token (4 of 128), so throughput is scored on ~5.1B active parameters, not the full 117B. Memory is the opposite: every expert must still be resident in VRAM, so the figures above use the full weight set.Active = 5.1B, vendor figure: OpenAI model card (huggingface.co/openai/gpt-oss-120b, read 29 Oct 2026): "117B parameters with 5.1B active parameters". params = HF safetensors total. Also set in workers/prices/src/models.ts seeds so the daily ingest keeps it.
  • Some memory-bandwidth figures are not yet independently verified.Where that's the case we show no tokens/sec at all rather than a number we can't stand behind.
  • Rental prices are pulled hourly from provider APIs (last updated Sun, 01 Nov 2026 00:20:10 GMT). Spot/interruptible pricing can change or vanish without notice.

Try it interactively

Drag the context slider and watch the KV cache fill the card

Worth reading before you buy

Other models