Finance & the CFO

Observe. Attribute. Act.

See every dollar your AI spends, attribute it to the exact agent, application, team or key that spent it, and stop the overrun before it happens. Most tools only do the first part, after the invoice.

vidai · Cost Summary
Cost Summary: spend attributed per model, with requests, input and output tokens, and cost

The problem

Billing blindness costs you a quarter.

Four provider invoices, no attribution, a spreadsheet nobody trusts, and a vendor that moved prices mid-quarter so last quarter's numbers are wrong anyway.

FOUR INVOICES · NO ATTRIBUTION · 30 DAYS LATE OpenAI$ ? no breakdown Anthropic$ ? no team Azure$ ? late Bedrock$ ? guesswork One ledger · every request priced & attributed live · before the invoice, not after it

The live ledger

Every request, priced the moment it happened.

Not "last sync." The moment the call returned, it was priced and attributed to the user, key, team, application, model and project that made it. So "what did Risk spend on Claude last month" is a query, not a forensics project.

EVERY REQUEST · PRICED & TAGGED THE MOMENT IT RETURNED Request TeamModel Cost req_4471Risk & Fraudclaude-sonnet-4.5$0.0182 req_4472Customer Opsgpt-4o-mini$0.0007 req_4473Lending AIbedrock-claude$0.0211 req_4474Data Sciencegemini-2.0-flash$0.0003 No "last sync" lag · attributed to user, key, team, application, model & project

Enforced spend control

Seeing the overrun is too late.
A cap that acts, not an alert that pings.

Everything so far was about seeing the spend truthfully. This is the part that protects it: Vidai's spend controls are enforcement, sitting in the request path and changing what happens before the next expensive call is ever made.

SPEND CIRCUIT · SPEND OVER TIME budget threshold trips redirected to a cheaper model A real enforced cap, not an alert · the runaway is stopped in minutes, not on next month's invoice
Spend circuits. Cap spend on a model. When the threshold trips, traffic is automatically redirected to a cheaper model until the period resets. The runaway is stopped in minutes, not on next month's invoice.
Budget breakers. A hard ceiling per key, team or application. Cross it and Vidai stops the spend, it doesn't just notify someone who's asleep.
Automatic fallback. The redirect target is a model you chose, so capped traffic still gets answered, just cheaper. Control without an outage.
It tells the rest of the stack. When a circuit trips, a signed webhook fires, so PagerDuty, Slack or finance know the instant the cap engaged, not at month end.

SCD2 rate cards

A rate history that survives a price change.

Rate cards are time-versioned with Type-2 slowly-changing dimensions: the same audit-grade schema your data warehouse already uses for historical correctness.

When a vendor's price moves, the old card closes with an end date and a new one opens. You can always answer, for any call ever made, "what rate was active when this was priced, and why?"

vidai · Rate Change Timeline
Rate change timeline showing historical before and after prices across models, SCD Type 2

Your rates, your way

Negotiated enterprise rates, not list prices.

Vidai hosts a maintained price catalogue so a fresh deployment is priced on day one, with no setup.

But you almost certainly don't pay list price. Register your negotiated enterprise rates as overrides, per provider, model, tier and modality. They take precedence at lookup time. A six-step resolver guarantees a call is never silently left unpriced.

vidai · Rate Cards
Rate cards registry: per provider, model, tier and modality, synced and manual sources

Cost Healing

Re-price the past when the present changes.

A vendor moved prices, or you corrected an override. Run a healing pass over the affected window. Dry-run to see the per-row before/after delta, commit when it's right. No silent rewrite, no "trust me."

RE-PRICE A HISTORICAL WINDOW 1 · Pick range 2 · Dry-run 3 · Commit Dry-run preview · per-row before / after req_8821 gpt-4o $0.42 $0.21 req_8822 claude-haiku-4 $0.09 $0.07 Total delta −$3,140 across 12,408 rows · export CSV · then commit. No silent rewrite

What-if analysis

Decide on numbers, not a hunch.

"Should we switch this model?" Pick the model you actually use, pick the alternatives, run the analysis against your real logged traffic.

The result is a table: hypothetical cost, savings, percentage, per candidate. mistral −70%, gpt-4o-mini −25%, o3-mini +1024%. The ledger is never touched.

vidai · What-If Cost Analysis
What-if cost analysis: claude-haiku-4 compared against mistral, gpt-4o-mini and o3-mini with hypothetical cost and savings

Cost-based routing

Routed to the cheapest model that fits, automatically.

What-If tells you which model would have saved how much. Cost-based routing applies that on every call from then on. Each request goes to the cheapest model that meets the policy and quality bar you set: not the one the application happened to hardcode.

Policy first, price second. The compliance, region and provider rules narrow the candidate set; cost picks the winner from what's left. Saving money never lets a regulated call leave the perimeter.
The application doesn't change. The hardcoded model name in the SDK call is treated as a hint, not a hard requirement. The plane resolves the real target.
You set the quality bar. Routing respects a tier you choose (latency budget, capability tier, evaluation score). The cheapest call inside that bar is the one made.
Every choice is logged. The ledger records the requested model, the served model and the saving. So routed decisions are auditable in the same view as every other call.

Chargeback

Who spent what, exported to your billing.

Top spenders by group, user, API key, application or model, in any window. Export the CSV with key, owner email and cost, straight into your showback system. Finance-ready, not a screenshot of a chart.

CHARGEBACK · COST BY GROUP · LAST 30 DAYS Group Requests Total cost $/req support-bot-fleet481$29.87$0.06 billing-services479$27.94$0.06 internal-tools487$26.98$0.06 Engineering429$25.43$0.06 Data Science243$15.60$0.06 Sort, search, paginate · Export CSV per scope · also by user & API key

Why it matters to finance

The 2am agent can't blow the budget.

You see every dollar, attributed, the moment it's spent. And the runaway agent that used to surface on the invoice is stopped in minutes, because Vidai already acted. Seeing it and controlling it are the same system, on your own infrastructure. That is the difference between a cost dashboard and a cost engine.

See it and stop it, on a real deployment.

A 20-minute walkthrough: chargeback, a price-change heal, a what-if, and a spend circuit tripping live.