Labor economics for your AI workforce.
You hired a workforce made of agents and nobody is measuring what any one of them produces. Margin prices every operation against cost‑per‑outcome: a merged PR, a passed test, a resolved ticket. It proves the fix before it ships.
The method, held to a real bar.
No inflated totals. These four are the whole method: the real face‑offs we have run, the trials each has to clear, the parity bar that promotes a route, and the flag every figure on this page carries.
Real, head‑to‑head — is_simulated=false.
A real power floor, before anything counts as “proven.”
And to auto‑revert — one line, both ways.
Each reproduces from a committed artifact.
Our own estate, metered.
We meter our own work first: what a cheaper route has earned back at proven parity, never a projection, and the live console read behind it, refreshed when the page loads.
| Project | Metered calls | Outcomes | Last seen |
|---|---|---|---|
What would this be at your scale?
Your spend at the blended rate from the sample estate above, where one flow routes and the rest hold. Not a best‑case single flow.
Reading the sample estate…
Per‑token price is the wrong number.
Tokens are not the unit of value. A merged PR is. Margin prices work against the only honest denominator: cost‑per‑outcome.
You do not have to take our word for the gap.
Rippling ran about 2,100 scored runs per model over their own payroll and personnel data, then published it. Seven models finished within one point of each other on pass rate. The bills ranged from $621 to $4,359.
7.0× the bill, for pass rates inside a single point of each other. Seven models, one suite, 2,100 scored runs each.
We thought token efficiency was the driver of cost, but really it’s just the cost per token. Given the constant shifts in both variables, we have to just track dollars.
Rippling is not a customer and has not evaluated Margin. They measured the problem on their own systems and reached the same conclusion we build on: at equal quality, the price you pay is a choice, and per‑token telemetry will not tell you which choice you made.
Picking a cheaper model is the easy part. Knowing where it breaks is not.
Every provider publishes what the small model costs. Nobody publishes which of your tasks survive on it. We run both on your own work and score how often the cheaper one still landed the job — that score is parity, and a route is adopted only above the floor we set. Parity is measured under your harness, on your tasks. A benchmark score is a claim about the harness it ran in, not the model alone, so a number measured in another harness does not carry to yours.
It points the other way just as often. We only tell you to keep spending after running the cheaper option and watching it lose. You validate the wage rather than cutting it.
A router optimizes one stack. Margin proves the whole system, then acts.
Every router will tell you it cut your bill. Ask how it knows. One picking from a public benchmark never ran what it replaced. We run both, and say what our number is conditional on.
You budget for the boxes. You pay for the edges. One supervisor sits between every hand-off, so each worker you add is two more edges — and the tokens live on the edges, not in the boxes.
A support pipeline, drawn to scale. Every worker is one box and two edges through the supervisor; the waste hides on the edges — re-sent context, rework that changes nothing, the round-trip through the planner. That is what Margin meters, and where it acts.
- — Spend by day and by model
- — One stack, one vendor
- — The saving is asserted
- ✓ Cost per outcome, per operation
- ✓ The whole chain, every vendor
- ✓ Runs what it replaced
- ✓ Auto-reverts if quality dips
Three lines, and the meter is running.
Point the meter at the OpenAI, Anthropic or Gemini SDK an agent already calls. Right: a real workflow from our estate, as recorded.
# TypeScript — Python: pip install margin-meter
$ npm install margin-meter
import { MarginMeter, instrumentGemini }
from "margin-meter";
const meter = new MarginMeter();
instrumentGemini(model, meter, {
workflowId: "jobscraper-fit-scoring",
});
// every generateContent() call is now metered{
"workflow": "jobscraper-fit-scoring",
"model": "gemini-2.5-flash",
"calls": 5,
"outcomes": { "passed": 5, "total": 5 },
"total_cost_usd": 0.004875,
"cost_per_outcome_usd": 0.000975,
"is_simulated": false
}The supply‑chain map at a buyer’s scale, and the honest read on our own books.
One card is a company at your scale with the bottleneck lit, a sample and labelled as one. The other is our own books, every figure measured.
Small on purpose, and measured rather than seeded.
The economics of intelligence, written down.
The three elasticities people run together, how the parity engine proves a cheaper config holds, and where this goes next.
Margin never sees your prompts.
A meter, not a proxy. We cannot read a request, and our ingest going down cannot stop your agents.
margin-meter is public on PyPI and npm. Read it before you install it.
Don’t take our word for the numbers. A test fails the build if they slip.
We hold no compliance badge we haven’t earned and show no logo we can’t name. What we can show is the guardrail: five checks that run on every commit, each one failing closed, so a number that cannot prove itself never reaches this page, starting with the outcome the whole metric divides by.
provenance checkThe headline savings must reproduce from a committed artifact tagged is_simulated=false. Read a metric that is missing or simulated and the check fails closed, rather than passing on a blank.
auto-route adversarial checkA route is promoted only once parity clears a high bar we hold ourselves to and the candidate is cheaper, and it auto-reverts the moment parity slips back below that line.
regression gateA build that cut cost by dropping its pass-rate fails, however large the saving. Quality is settled before economics, never the other way around.
pricing accuracy checkPer-token math is checked against published pricing, with cached reads billed at their real fraction, so a saving cannot be inflated by a friendly rounding choice.
outcome integrity checkAn outcome has to be positively determined. An ambiguous or empty signal raises, instead of being quietly counted as a pass and fabricating the very number cost‑per‑outcome divides by.
These are floors, and a floor moves one way. Adding a stricter case is welcome; relaxing one is blocked at commit time. When a floor does have to move, we change it in the open with a human sign‑off, never silently.
Get your cost‑per‑outcome read.
You get the founder, not a sales rep. We’ll show you the one route worth flipping, with its parity proof. Nothing is gated.
Or write to subh@trymargin.io. A person replies, usually the same day.