Ballet vs Claude code production cost benchmarks
Thirty days of production usage across five live customer workflows, compared with building the same workflow on Claude.
The short version
76% cheaper to own over a year than building the same workflow on Claude.
53× return on the repetitive support it replaces on one workflow, at one customer.
On the highest-volume customer workflow, a Ballet run bills at $0.088. That is about 5.5× the raw token cost of running those same tokens directly.
Year-one ownership of that workflow is $3,303 on Ballet against $13,873 building it in-house on Claude.
Twelve-month total cost of ownership
One workflow the Freshdesk auto-responder, 2,238 runs a month.
| Approach | Build | Run (12 mo) | Maintain | Year one |
|---|---|---|---|---|
| Build it yourself on Claude | $8,400 | $433 | $5,040 | $13,873 |
| Ballet | $940 | $2,363 | $0 | $3,303 |
76% cheaper, and live in days rather than weeks. A self-built loop needs someone to build it, host it, monitor it, handle retries, and fix it when Freshdesk changes an API. Cost-per-run figures price all of that at zero.
Build is two weeks of engineering at a loaded $105/hour (80 hours = $8,400). Maintain is four hours a month at the same rate ($5,040 a year). Ballet's build figure is the $137 of console usage we actually measured plus a day of someone's time.
What it replaces
2,238 tickets a month at 8 minutes of agent time and $35/hour is $10,444 of support work, against a Ballet bill of $197. A 53× return, on one workflow, at one customer.
Cost per run across production
All measured, 30 days. Per-run cost depends on the job $0.09 to $3.04 in this set.
| Workflow | Runs | Cost / run | 30-day bill |
|---|---|---|---|
| Freshdesk AI Auto-Responder v2 | 2,238 | $0.0880 | $197 |
| Zendesk Refund Assistant | 295 | $0.2302 | $68 |
| Withdrawal API Response Generator | 129 | $0.2013 | $26 |
| Implementation Handoff (Custom SF) | 46 | $3.0371 | $140 |
| Invoice queue worker | 18 | $2.5888 | $47 |
Where the money goes
Nearly half of billed usage in the window is people building workflows, not running them.
| Event type | Share of billed usage |
|---|---|
| Workflow steps - running production jobs | 52% |
| Console - building workflows | 45% |
| Context compaction | 4% |
Build cost is one-off; run cost approaches zero.
What the percentages mean
| Figure | What it compares | What it does not |
|---|---|---|
| 76% cheaper | Year-one ownership of the workflow: $3,303 on Ballet vs $13,873 to build and run it on Claude. | Token consumption. Not a per-run token price. |
| 53× | Support labour replaced ($10,444) divided by the Ballet bill ($197), same workflow. | A company-wide ROI. Two workflows in the original set have an ROI profile. |
| 5.5× raw tokens | Ballet's billed run vs the raw Anthropic cost of the tokens that run consumed. | Cheaper than DIY tokens. It is not. |
| 96% / 10% tokens | A token-consumption claim that has been circulating internally. | Bills. burns about 1.3× the tokens a customer would use themselves, so it loses a raw-token comparison and wins on ownership. |
A workflow only comes out cheaper on token cost if the do-it-yourself equivalent would burn far more tokens than we do — typically deep tool loops over large documents. Simple ticket loops do not. They come out cheaper on ownership and labour.
How the numbers were built
- Ballet figures measured from the production usage ledger, 30 days to 10 September 2026.
- Claude figures modelled from published Anthropic list prices against observed token counts, assuming 3× input tokens for agentic context resend.
- Build is two weeks at a loaded $105/hour ($8,400). Maintain is four hours a month at the same rate ($5,040 a year). Ballet build = measured console usage + one day of someone's time.
- Labour rates from our own ROI assessor (8 minutes / ticket, $35/hour, medium confidence).
