SWE-bench
A family of benchmarks where a model must fix real issues in real open-source repositories, checked by the projects' own tests.
Why it matters. One of the better signals for practical coding and agent ability.
How it works
SWE-bench is a family of benchmarks built from real issues and pull requests in open-source Python repositories. The model gets the repository and the issue text and must produce a code change; it is scored by whether the tests linked to the original fix now pass without breaking other tests.
There are several variants, including SWE-bench Verified, a human-checked subset of well-specified, solvable tasks, and others covering more languages or harder tasks. Scores depend heavily on the agent harness, tools, attempts and time allowed, which makers describe in their reports.
It is a useful signal for agentic coding on real codebases, but it covers specific repositories and kinds of tasks. Check the variant and harness behind a score before comparing.
Worked example
Illustrative: a 70% score on a 500-task variant means 350 tasks were resolved, i.e. the model's patch made the target tests pass without breaking the others. A score on a different variant with different tasks is not directly comparable.
Common mistakes
- Comparing a Verified score with a score on another SWE-bench variant.
- Ignoring the harness: the same model can score quite differently with different scaffolding.
- Assuming a high score means equal skill in your language, stack or repository size.
Across the catalog today
Top SWE-bench Verified scores
- Claude Fable 5Anthropic95%
- Claude Opus 4.8Anthropic88.6%
- Claude Opus 4.7Anthropic87.6%
- Claude Sonnet 5Anthropic85.2%
- Claude Opus 4.5Anthropic80.9%
- Claude Opus 4.6Anthropic80.8%
Self-reported by each maker, from its own card; settings differ between makers.
All 15 SWE-bench Verified scoresSee it on a real card: Benchmarks on Claude Opus 5.5.