Half of your agent spend goes to the runs least likely to succeed.

metermaid finds where AI agent money actually goes, prices what it wasted, and hands you the fix. Start with a free audit that never leaves your machine.

341,054 public agent runs12 models4 frameworksOpen source, keys and traces stay local
NOTICE OF VIOLATIONticket 00931-A
Run
pr-fixer / dvc-7497
Model
claude-3-7-sonnet
Violation
Low-yield run · 151 steps, no result
Evidence
Passed the step-48 budget for this task type at 19% expected resolve
Fine$9.34
Fix attached: stop at step 48 for task type test-fix. Saves 62% of this run's cost at a 3-point resolve trade-off. PR opened against gateway/policies.yaml.

Every dollar lands in one of four buckets. You only want to pay for one.

metermaid produces this split for every task type from your own billing data and traces. The proportions here are Claude 3.7 Sonnet on SWE-agent across 45,000 public runs. Yours will differ, and that difference is where the money is.

38%
6%
16%
40%
Productive

Spend on runs that resolved the task.

Mechanical waste

Loops, blind retries, oversized tool output re-sent every step. Cheap to find, cheap to fix, and the first thing we show you.

Failed runs

Hit a cap, exhausted context, cut off mid-call. Produced nothing.

Low-yield tail

Long runs where a dollar buys a tenth of what the first dollar bought.

The Agent Waste Index

What 341,054 public agent runs, from Llama to Claude, say about where the money goes. Public, reproducible, every retraction included.

45%

of spend goes to the longest fifth of runs under cached pricing (51% without). Those runs resolve at a third the rate of the shortest fifth. Every model, every framework.

<2%

of modern agent runs loop or blindly retry. The classic failure is solved. In 2024-era open models it was 14–31%.

0 vs 55%

of runs dragging oversized tool output, same models, same tasks: bash-only scaffold vs SWE-agent. The scaffold leaks more than the model does.

4% 8% 13% 24% 51% 59%47%38%28%19% shortest fifthlongest fifthruns by length share of spend resolve rate

Claude 3.7 Sonnet, 14,374 runs. The same shape appears for Claude 3.5, GPT-4o, Qwen3-Coder, Llama, and both Open-SWE models.

What it means

Success rates fall steadily as runs get longer, while every step costs more than the last because the context grows. By the last fifth of a run, a dollar buys a tenth to a fortieth of what the first dollar bought.

Most teams set a hard step cap or none. Almost none measures the trade-off. That measurement is the control metermaid sells: step and cost budgets by task type, set from your own curve, with the resolve trade-off shown in the same table.

Read the full Index

Connect, decompose, fix, verify.

In dollars, per task type, reconciled to the invoice.

  1. Connect billing, traces, and outcomes

    Read-only admin keys for Anthropic, OpenAI, Bedrock, Vertex, and Azure. Traces over OpenTelemetry, imported from Langfuse or LangSmith, or straight from Claude Code. Outcomes from GitHub, Slack, or a webhook. Or run the CLI and connect nothing.

  2. Decompose spend into the four buckets

    Cost per resolved task by agent, team, and task type. Your resolve-by-length curve. Failed-run cost. Where oversized tool output is being re-sent. Spend nobody owns.

  3. Apply the fix, with the trade-off shown

    Step and cost budgets from your own curve. Tool-output truncation. Cap calibration. Prompt caching, batch pricing, model tier by task type. Each one is a pull request or a config change you review and merge.

  4. Verify the savings on the next invoice

    Before and after on invoiced cost and resolved tasks, method published, confounders flagged. The number finance puts in the board pack.

For finance and operators

The line item gets line items.

  • Spend by agent, team, and owner across every provider, including the spend nobody owns.
  • The four-bucket split and cost per resolved task, monthly, reconciled to invoices.
  • Budgets and alerts by task type, and a board pack that explains the number.
  • The question to start with: what share of last month's agent spend produced nothing? If nobody can answer, that is the finding.
For engineers and heads of AI

Instrument for outcome and length, not loops.

  • Resolve-by-length curves per task type and the expected value of each additional step.
  • Scaffold and model comparisons on cost, not only capability. Truncating tool output is the single most valuable fix in the data.
  • Detectors as diagnostics: loops, blind retries, context bloat, caps killing runs, unbounded tool results.
  • Fixes as pull requests against your prompts, skills, and gateway config. You review, you merge.

Free to look. Paid to keep looking.

The audit and pipeline are open source and stay that way. You pay for continuity, the join across providers and traces, governance, action, and real time.

Free$0Finance1.5% of spend under management, $1k/mo floorEngineeringFinance + $0.02 per run above 10k/moControl20% of verified savings, capped in year oneEnterprisefrom $100k/yr
Open-source CLI and pipelineYesYesYesYesYes
Historical analysisOne, up to 10k runsSpend onlyContinuousContinuousContinuous
Connected billing, allocation to ownersYesYesYesYes
Budgets, alerts, chargeback, board packYesYesYesYes
Trace ingest, cost per resolved task, resolve-by-length curvesYesYesYes
Fix pull requests with trade-offsYesYesYes
Live step and cost budgets, stop and escalate decisionsYesYes
Your cloud, SSO and SCIM, audit log, data residencyYes
Benchmark position against the IndexFor contributed runsLiveLiveLive

Talk to us about a plan

Run the audit. Send the output. Get your curve.

The CLI hashes every key and id before it writes anything. Send us the anonymized report and we return your resolve-by-length curve, your four-bucket split, and where you sit against 341,000 public runs. Contributors get the next edition of the Index first.

One link now. One report later. No newsletter.

# clone and install
git clone https://github.com/metermaidai/audit
cd audit && pip install requests

# spend audit: read-only admin API, runs locally
export ANTHROPIC_ADMIN_KEY=sk-ant-admin-...
python metermaid_audit.py --anon

# trace audit: loops, retries, big output, failed runs
python trajectory_audit.py ./your-traces

Questions we already get

Does any of my data leave my machine?

Not with the CLI. It reads your provider's admin API or your trace files locally and writes a report to disk. Sharing the anonymized output is a separate, deliberate step, and the anon flag hashes every key, workspace, and project id first. The web app is a different product with its own data agreement, and the Enterprise tier keeps traces inside your VPC.

Why is the audit free if that's where the findings come from?

Because the findings regenerate. A one-time report shows you last month. The product shows you next month, across every provider and framework, tied to outcomes, with owners, budgets, and the fixes applied and verified. If one audit fixes your problem for good, you weren't a customer, and we're glad it helped.

The Index stops at Claude 3.7 and GPT-4o. What about current frontier models?

Public trajectory datasets stop there; leaderboard and academic trace archives for newer models are access-restricted. The patterns hold from a 1.7B model to Claude 3.7 Sonnet, which is why we expect them to hold, but that is an expectation. Contributed production runs are how the next edition gets there.

Isn't this just LangSmith, Langfuse, or a FinOps tool?

Trace tools show engineers calls, tokens, and latency. FinOps tools show finance the invoice. Neither joins invoice to task to outcome, and neither tells you what a resolved task costs or where your budget should stop. We import from the trace tools and export to the FinOps tools.

Are the dollar figures in the Index real?

No, and every table says so. Public datasets carry no per-run cost, so dollars are estimated from characters at Sonnet-class rates. The percentages and orderings are what we stand behind. Your numbers in the product are your invoiced costs.