MMMU: what the benchmark actually measures
A practical guide to mmmu, using data from the AI & LLM Index. The goal is a shortlist and a decision, not a tour of every option.
What MMMU measures
MMMU is a multimodal benchmark. University-level questions that combine text, charts, diagrams and images.
The index scores all 600 models on a 0–100 scale. The average is 67.1 and the top score is 86.9.
How to read the scores
A benchmark score is a compressed signal. It tells you how a model performed on a specific test distribution, not how it will perform on your data. Read the leaderboard as a way to form a shortlist, then validate the shortlist with your own examples.
On MMMU, the gap between the leader and the median is 19.8 points. That gap is the useful part of the chart: it shows how much separation the benchmark creates.
Leaders
GPT-5.2 Max leads at 86.9, followed by GPT-5.1 Reasoning at 86.2 and GPT-5.2 at 85.3.
Limitations
- Scores in this index are modelled estimates, not official results.
- Benchmark contamination can inflate scores for models trained on similar data.
- A high score does not guarantee good performance on a different task shape.
- Prompt format and evaluation harness can move results by several points.
Top 5 on MMMU
| Model | Provider | Score | Input / 1M |
|---|---|---|---|
| GPT-5.2 Max | OpenAI | 86.9 | $21.39 |
| GPT-5.1 Reasoning | OpenAI | 86.2 | $20.27 |
| GPT-5.2 | OpenAI | 85.3 | $19.71 |
| Claude Sonnet 4.5 Reasoning | Anthropic | 85.2 | $19.48 |
| GPT-5.1 Max | OpenAI | 85.1 | $20.50 |
Related
FAQ
Who leads MMMU?
GPT-5.2 Max leads this index at 86.9.
What is the most important factor in mmmu?
Fit to the task beats raw benchmark rank. Define the failure modes, pick the benchmarks that resemble them, then test a small shortlist on your own examples.
How many models should I evaluate?
Three is usually enough: a quality candidate, a value candidate and a fallback. More candidates add work without changing the decision.
How do I control cost?
Compare blended 3:1 price, watch output tokens, use caching where available and route simple requests to a cheaper model.