Shipping
The Cost of a Correct Answer

One of the clearest lessons I have learned about AI economics came from an internal voice workflow. The operating report had the numbers teams usually ask for: monthly platform spend, cost per call, average duration, call volume, and connection reliability. On paper, the unit cost looked encouraging.
But a cheap connected call was not the same as a successful outcome. Caller-side hang-ups had to be separated from system failures. A call that connected could still require a human handoff. The hardening roadmap treated multiple speakers, validation, and safeguards as necessary before the workflow could scale responsibly.
That experience changed the question for me. The economical system is not the one that is cheapest to invoke. It is the lowest-cost option that can complete a defined task while clearing quality, reliability, recovery, latency, and risk gates. When correction time cannot be converted to currency defensibly, keep it visible as its own constraint instead of hiding it inside a convenient dollar figure.
Price is an input, not the decision
Current OpenAI pricing documentation and Anthropic pricing documentation distinguish input, output, caching, batch, and other service costs. They are primary sources for current rates, not evidence that a model suits a task.
Model IDs, service tiers, regional options, and rates change. A decision recorded as "use the cheap model" without a date, exact model identifier, workload, and quality bar is not reproducible.
Model-routing research shows that the tradeoff can be managed. RouteLLM learned routers between stronger and weaker models and reported lower cost without quality loss on tested benchmarks. BEST-Route jointly selected a model and sample count, reporting cost reductions with a small performance change on its datasets.
Those findings support experimentation, not a copied architecture. They evaluate particular models, data, metrics, and routing methods. A career-writing task has different failure costs, so its team must define "correct."
Correctness begins with the user's job
For a voice workflow, a completed call is still an ambiguous unit. Did the system reach the intended person? Did it understand the request? Did the user complete the task, receive an appropriate handoff, or leave because the system failed? A connection event cannot answer those questions.
I would define the qualifying outcome before comparing models or vendors:
What counts as a qualifying outcome
- Task completion: did the user finish the intended job or reach the correct next step?
- Accuracy: were the captured facts, choices, and downstream records correct?
- Recovery: could the system detect uncertainty and move the user to a safe fallback?
- Reliability: did the interaction survive interruptions, accents, multiple speakers, and tool latency?
- User burden: how much repetition, correction, or human follow-up did the workflow create?
The hard gates depend on consequence. A factual error in a casual information call is different from a wrong value entering a financial or identity-sensitive workflow. The quality bar should be set before the team sees cost comparisons. Otherwise, a low price can quietly redefine what counts as acceptable.
The comparison must freeze the moving parts
A model or vendor comparison is only useful when the team can reproduce it. Record the exact task contract, model IDs, provider, region or service tier, prompts, response schema, tool configuration, retry policy, caching, and dated price evidence.
Then test the slices that change operating behavior, not only the easiest happy path. For a voice product, that could include routine calls, ambiguous requests, interruptions, multiple speakers, failed validation, and cases that require a human handoff. Use sanitized or synthetic cases unless real inputs have an approved purpose and handling path.
Quality review should be blind to the candidate where practical. Reviewers need the original input, raw output or transcript, tool actions, final accepted result, correction work, and reason for failure. An aggregate score without those records cannot explain why a candidate looked cheap.
For every attempt, capture direct model and tool cost, end-to-end latency, errors, retries, schema failures, and the final outcome state. Separate user abandonment, caller-side termination, system failure, and intentional human escalation. Those events have different causes and different product responses.
The primary economic measure is:
Direct cost per qualifying outcome = total model, tool, and retry cost divided by outcomes that clear the task-specific gates.
Companion measures keep the denominator honest: qualification rate, correction minutes, handoff rate, recovery success, median latency, p95 latency, and failures by cause. Report an end-to-end dollar cost only when the labor and remediation assumptions are explicit.
The decision packet should expose every tradeoff
The operating artifact I would use is a timestamped AI Economics Decision Packet. It contains:
- the product task and consequence of an incorrect output;
- the frozen case set and operating slices;
- the hard quality gate and scored rubric;
- exact model and request configuration;
- dated price evidence;
- quality results and uncertainty by slice;
- direct cost per qualifying outcome and the denominator behind it;
- correction burden, reviewer agreement, median latency, p95 latency, and failure rate;
- the chosen default, escalation rule, rollback trigger, and expiry date;
- the evidence that would reverse the decision.
The packet must show slice results, not only an overall winner. A low-cost model might pass routine cases and fail ambiguous ones. That result could support routing: start with the lower-cost candidate for a validated slice, then escalate when an observable condition predicts risk.
The condition itself needs evaluation. Prompt length, missing outcome fields, or a failed grounding check may be more useful than asking a model whether it feels confident. A router adds latency, cost, and another failure mode, so the packet must compare it with a simple default-model baseline.
A premium model can be the economical choice
This process can over-engineer a small decision. If volume is low, the difference in direct inference cost may be negligible. A single stronger model can reduce operational complexity and make failures easier to diagnose.
That can be the correct outcome. The framework does not require routing. When correction time is not converted to currency, treat quality, correction burden, reliability, and latency as gates. If several candidates clear them, choose the lowest direct cost. If only the premium model clears them, its higher request price is the cost of meeting the product bar.
Re-run the routing decision when traffic mix shifts, a provider changes a model or price, the task contract changes, slice quality drifts, or correction burden crosses the recorded trigger. Every decision packet therefore needs an expiry date.
Make the denominator reviewable
The next step is not to select a favorite model. It is to write the qualifying outcome, list the failure states that do not count, and rebuild the unit-cost view around that denominator. Then freeze the method, run representative cases, and keep the limitations beside the result.
The internal voice workflow did not teach me that one model or vendor is universally economical. It taught me that a low unit cost becomes meaningful only after the team separates connection from completion, user behavior from system failure, and cheap attempts from correct outcomes.


