Introducing Real-SWE
Benchmarking frontier AI models on private, real-world, enterprise codebases.
01Introduction
Today we are releasing Real-SWE, a benchmark that evaluates frontier AI models on private, real-world, enterprise codebases. Each task comes from a private production codebase that we licensed from a real-world company. These are problems their engineers work on, with all the context and complexity that comes with an existing product.
- Private codebases. Agents must navigate proprietary systems whose code and solutions aren’t available on the public internet.
- Work with business consequences. Getting billing right, calculating taxes, migrating customers. Changes that affect how a business runs, often across multiple services.
- Company-specific complexity. Every company has its own rules and ways of writing code. Agents have to understand those conventions and make changes that work with what’s already there.
Can a coding agent actually do the work of a software engineer in the real world?
- 1Resolution rate: 38.8%Fable 5.1Claude Code
- 2
Resolution rate: 33.8%GPT-6 AstraCodex CLI - 3Resolution rate: 28.8%GLM 5.3Claude Code
- 4Resolution rate: 23.8%Grok 4.6Grok Build
- 4Resolution rate: 23.8%Muse Spark 1.3Muse Code
- 6Resolution rate: 18.8%Kimi K3Kimi Code
- 7
Resolution rate: 16.2%GPT-5.6 SolCodex CLI
| # | Model | Harness | Resolution rate |
|---|---|---|---|
| 1 | Claude Code | 38.8% | |
| 2 | Codex CLI | 33.8% | |
| 3 | Claude Code | 28.8% | |
| 4 | Grok Build | 23.8% | |
| 4 | Muse Code | 23.8% | |
| 6 | Kimi Code | 18.8% | |
| 7 | Codex CLI | 16.2% |
Expert-generated or synthetic tasks can be well designed, but they aren’t the verbatim, actual tasks that engineers in real companies need to do. Our tasks differ on two axes: the underlying coding artifact and specificity of the instruction. Both add complexities that challenge today’s frontier models.
We use native harnesses to reflect how enterprise engineers work in practice, evaluating model-and-harness combinations rather than models in isolation.
Real company tasks require company-specific context
Correct billing depends on business rules and external services
Fix invoice billing so each business charges the right tax and exempt customers aren't taxed.
View full instructionHide full instruction
Billing reopens on Monday and every invoice this service issues is coming out untaxed. Each business on the platform settles its tax a different way: some maintain a rate themselves, some want each invoice priced against the buyer's destination by our tax authority provider, and some collect nothing at all, while a customer we hold an exemption for is charged nothing whichever way its business is configured. Pricing a destination means going to the authority with both addresses, the priced lines and the product category that business sells under, on the sandbox or the production authority according to the account the business is on; an address the authority refuses must be reported without stopping the invoice. The rate, the tax and the gross belong on the issued invoice, and once an invoice is settled the sale is filed back to the authority under that invoice's number so the returns reconcile. Invoices between European parties show both sides' VAT registrations. The authority and ledger are available at TAX_JAR_URL, PROD_TAX_JAR_URL and INFLUX_URL.
- TaxJar sandbox
- TaxJar production
- InfluxDB ledger
- NestJS service
- TypeScript
Agents work across code, infrastructure, and business tools
Tools and services across Real-SWE task environments. Each task exposes only the services its workflow needs.
- AWS emulator
- Docker
- Kubernetes
- GitHub
- Linear MCP
- PostgreSQL
- MySQL
- MongoDB
- Gel
- Redis
- Go
- Python
- Node.js
- Vitest
- Slack
- Intercom
- Google Drive
- ClickUp
Codebase Selection
We selected codebases through a rigorous screening process, focusing on real companies with substantial usage, strong engineering teams, and demanding production workloads. The sample tasks analyzed below come from these codebases, including:
- A Luma/Partiful competitor with 200K+ users and a top 100 App Store ranking
- A consumer fintech platform processing 100K+ bank statements
- Enterprise AI sales platforms supporting complex business workflows
We prioritize code written to meet an actual user or business need over code written solely to create a benchmark task. Production engineering requires understanding existing architecture, preserving behavior that users rely on, and making changes within real operational constraints.
Brief instructions can require changes across many files
Our tasks describe the change needed, leaving agents to discover implementation details in the codebase and surrounding tools. Any behavior required by the verifier must be stated or reasonably discoverable. This leads to our prompts being slightly underspecified, about par with DeepSWE and Terminal Bench, but specific enough to not omit instructions.
The work is cross-functional and complex: a single change can span multiple parts of the application. Agents must understand existing business logic and company coding patterns while keeping the surrounding system working.
A typical Real-SWE instruction is 1,742 characters.
- FrontierCode2,056 chars
- DeepSWE1,975 chars
- Terminal-Bench 31,584 chars
- FrontierSWE v2992 chars
- Real-SWE1,742 chars
11 files in Real-SWE, compared with 6 in FrontierCode and DeepSWE.
- FrontierCode6
- DeepSWE6
- Real-SWE11
Models fail even in short rollouts.
71.1% of rollouts under 10 minutes failed, compared with 74.3% of longer rollouts.
Triaging multiple systems and understanding requirements in codebases riddled with existing business logic and coding patterns is difficult.
69/97 failed
344/463 failed
- Failed
- Passed
Every task is inspired or lifted verbatim from a private, real-world codebase. We find these types of tasks super interesting for three reasons:
- Tasks on private codebases are natively out of distribution. These types of coding tasks are not available anywhere on the internet and are unlikely to have ever been trained on by any other ai model. 99% of tokens in real-world enterprises are hidden away from the frontier models.
- These tasks are economically viable work. Each task here has a direct relationship to spend and was assigned to an engineer earning a salary. Most benchmarks test interesting, experimental capabilities that are often unlikely to be widespread in the real-world.
- Company-specific engineering patterns matter. Does AI code match the bar of a real-world enterprise? Our results show us that we're far from that reality. Many enterprises care about code standards and patterns. We've found that today's models are weaker at understanding company coding patterns and frequently miss requirements or don't verify their assumptions.
02Analysis
Here's an analysis of a small sample of tasks from our benchmark. If you're interested in the sample, request access here.
Half the tasks have resolution rates below 15%
| Task | Resolution rate | |||||||
|---|---|---|---|---|---|---|---|---|
| Multi-region sweep | 7/8 | 8/8 | 2/8 | 3/8 | 8/8 | 2/8 | 5/8 | 62.5% |
| API keys & environments | 8/8 | 5/8 | 5/8 | 4/8 | 6/8 | 0/8 | 7/8 | 62.5% |
| Entitlement overage lines | 8/8 | 7/8 | 3/8 | 1/8 | 1/8 | 6/8 | 1/8 | 48.2% |
| Customer identity migration | 3/8 | 1/8 | 4/8 | 8/8 | 3/8 | 4/8 | 0/8 | 41.1% |
| API token metering | 1/8 | 5/8 | 1/8 | 0/8 | 0/8 | 1/8 | 0/8 | 14.3% |
| S3 datastore measurement | 0/8 | 0/8 | 3/8 | 2/8 | 1/8 | 1/8 | 0/8 | 12.5% |
| Billing schedule migration | 3/8 | 1/8 | 2/8 | 0/8 | 0/8 | 1/8 | 0/8 | 12.5% |
| Linearizable scan | 0/8 | 0/8 | 2/8 | 1/8 | 0/8 | 0/8 | 0/8 | 5.4% |
| Tax jurisdiction | 1/8 | 0/8 | 1/8 | 0/8 | 0/8 | 0/8 | 0/8 | 3.6% |
| Analytics stream reducer | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0.0% |
Missed requirements are the most common failure
Each failed run has one recorded outcome backed by its trajectory and verifier evidence. Model-failure labels follow the taxonomy in DeepSWE.
No model solves every task
One square per rollout: each row is a task, each column a trial, eight trials per task for every model.
GPT-6 Astra
GPT-5.6 SolDifferent models fail in different ways
Percentages are out of each model's failed runs, not all runs.
Unverified assumption
Builds on a guess about the system instead of checking it in the workspace.
GPT-5.6 Sol43.3%: 29 of 67 failed runs
GPT-6 Astra34.0%: 18 of 53 failed runsGLM 5.328.1%: 16 of 57 failed runs
Grok 4.624.6%: 15 of 61 failed runs
Fable 5.124.5%: 12 of 49 failed runs
Muse Spark 1.319.7%: 12 of 61 failed runs
Kimi K315.4%: 10 of 65 failed runs
Missed requirement
Ships a working change but leaves out something the instruction stated.
Grok 4.667.2%: 41 of 61 failed runs
Kimi K353.8%: 35 of 65 failed runs
GLM 5.338.6%: 22 of 57 failed runs
Fable 5.136.7%: 18 of 49 failed runs
Muse Spark 1.336.1%: 22 of 61 failed runs
GPT-5.6 Sol31.3%: 21 of 67 failed runs
GPT-6 Astra28.3%: 15 of 53 failed runs
Integration error
Right idea, wired into the surrounding system incorrectly.
Muse Spark 1.341.0%: 25 of 61 failed runs
Fable 5.134.7%: 17 of 49 failed runs
GPT-6 Astra34.0%: 18 of 53 failed runsKimi K327.7%: 18 of 65 failed runs
GLM 5.326.3%: 15 of 57 failed runs
GPT-5.6 Sol16.4%: 11 of 67 failed runsGrok 4.68.2%: 5 of 61 failed runs
Regression
Breaks existing behavior while making the change.
GPT-5.6 Sol9.0%: 6 of 67 failed runsFable 5.14.1%: 2 of 49 failed runs
GPT-6 Astra3.8%: 2 of 53 failed runsMuse Spark 1.33.3%: 2 of 61 failed runs
GLM 5.30%: 0 of 57 failed runs
Grok 4.60%: 0 of 61 failed runs
Kimi K30%: 0 of 65 failed runs
Wrong file
Delivers the change somewhere the running application never calls, such as a one-off script.
GLM 5.37.0%: 4 of 57 failed runs
Kimi K33.1%: 2 of 65 failed runs
Fable 5.10%: 0 of 49 failed runs
GPT-6 Astra0%: 0 of 53 failed runsGrok 4.60%: 0 of 61 failed runs
Muse Spark 1.30%: 0 of 61 failed runs
GPT-5.6 Sol0%: 0 of 67 failed runs
03Effort & the Frontier
Higher cost does not guarantee a higher resolution rate
- 1Fable 5.138.8% · $6.96
- 2GPT-6 Astra33.8% · $4.67
- 3GLM 5.328.8% · $5.12
- 4Grok 4.623.8% · $3.44
- 5Muse Spark 1.323.8% · $2.74
- 6Kimi K318.8% · $3.90
- 7GPT-5.6 Sol16.2% · $2.65
Estimated rollout costs range from $2.65 to $6.96
| Rank | Model | Estimated cost (USD) |
|---|---|---|
| 1 | GPT-5.6 Sol | $2.65 |
| 2 | Muse Spark 1.3 | $2.74 |
| 3 | Grok 4.6 | $3.44 |
| 4 | Kimi K3 | $3.90 |
| 5 | GPT-6 Astra | $4.67 |
| 6 | GLM 5.3 | $5.12 |
| 7 | Fable 5.1 | $6.96 |
04Evaluation Setup
Each agent was run in an isolated sandbox. All tasks are in Harbor format, and verifiers are injected at grading time. The verifiers are inspired by existing test suites in the codebase or use those tests verbatim.