Skip to content

OpenAI · model passport

OpenAI: gpt-oss-20b

gpt-oss-20b
  • Open weights
  • Apache 2.0 licence
  • 20.9B params
  • 131,072 context
  • Released 2025-08-05(curated)
10/27axes covered
Overall · LMArena
1,317#247 of 396
Best percentile
87.4LiveCodeBench (Artificial Analysis)
Cohort standing
46.4median 51.6

What the data says

Benchmarked on 10 of 27 tracked axes. Every figure below is the model's own published result on that board.

Strongest axes

  • 87.4 pct — LiveCodeBench (Artificial Analysis) (77.7%)

Weakest axes

  • 2.3 pct — Terminal-Bench (3.4%)

Uneven: 85.1 percentile points between its best and worst axis — 87.4 pct on LiveCodeBench (Artificial Analysis) versus 2.3 pct on Terminal-Bench.

  • LiveCodeBench (Artificial Analysis)87.4 pct77.7%Verify →
  • IFBench (Artificial Analysis)74.1 pct65.1%Verify →
  • MMLU-Pro (Artificial Analysis)50.2 pct74.8%Verify →
  • AIME (math)46 pct65.3%Verify →
  • GPQA Diamond43 pct60.8%Verify →
  • Coding41.4 pct1,368Verify →
  • Hard prompts38.1 pct1,323Verify →
  • Overall37.9 pct1,317Verify →
  • Instruction following32.8 pct1,281Verify →
  • Terminal-Bench2.3 pct3.4%Verify →
  • WebDev ArenaNot benchmarked
  • Vision ArenaNot benchmarked
  • Factuality ArenaNot benchmarked
  • Search ArenaNot benchmarked
  • Document ArenaNot benchmarked
  • Agent ArenaNot benchmarked
  • FrontierMathNot benchmarked
  • SimpleQA VerifiedNot benchmarked
  • ARC-AGI-2Not benchmarked
  • Humanity's Last ExamNot benchmarked
  • SimpleBenchNot benchmarked
  • LiveBenchNot benchmarked
  • BFCL v4 (function calling)Not benchmarked
  • SWE-bench Verified (live board)Not benchmarked
  • Terminal-Bench 4.0Not benchmarked
  • HHEM Hallucination (Vectara)Not benchmarked
  • SWE-bench VerifiedNot benchmarked

Percentiles are the model's standing within each board's own population. Axes marked "not benchmarked" have no published result for this model — that is an absence of data, not a low score.

How to run it

Run it yourself

Parameters20.9B
ArchitectureGptOssForCausalLM
LicenceApache 2.0

Transformers

from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "openai/gpt-oss-20b"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)

Ollama

We don't sync Ollama tags, so we won't print a command we can't verify — a wrong one would pull the wrong model. Search the Ollama library →

Unsloth fine-tuning recipes are model-specific and we don't derive them here. Unsloth docs →

Use it hosted

API model IDopenai/gpt-oss-20b
Context length131,072 tokens
Max output32,768 tokens
Input price$0.02 per 1M tokens
Cached input price$0.01 per 1M tokens
Output price$0.09 per 1M tokens

API parameters this endpoint supports

Frequency penaltyInclude reasoningLogit biasLogprobsMax tokensMin-pPresence penaltyReasoningReasoning effortRepetition penaltyResponse formatSeedStop sequencesStructured outputsTemperatureTool choiceTool callingTop-kTop logprobsTop-p

Example request

curl https://openrouter.ai/api/v1/chat/completions \
  -H "Authorization: Bearer $OPENROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"openai/gpt-oss-20b","messages":[{"role":"user","content":"Hello"}]}'

View on OpenRouter →

Identifiers, limits and prices are synced from the upstream source shown above. Any field we haven't synced is left out entirely rather than guessed.

  • gpt-oss-20b stands at 46.4 (raw mean 45.3) — measured on 10 of 27 axes.

    standingtemplateVerify →
  • gpt-oss-20b stands at 46.4 versus a cohort median of 51.6 across 145 models released within 180 days — below the peer median.

    cohorttemplateVerify →

Every claim is a computed fact from the current board data, phrased by a low-temperature model call and rejected by a validation gate if any number is not in the source row. How the leaderboards work →