How Roiva calculates value
Where a value figure comes from: formulas, their inputs, when they run, assumptions and Roiva defaults, baselines, and why entries wait for review.
Answered from these docs only, by a model that cannot see your account. Check the pages it cites.
Checked against the product on September 28, 2026
Every calculated dollar of value in Roiva comes from a value formula: arithmetic over figures Roiva can show you, run for one month at a time. This article follows a number back to where it came from. For the vocabulary itself, see Metrics, baselines, and readings.
What a formula reads
A formula is an expression, such as (baseline_minutes - current_minutes) × invoices × labor_rate, and each variable in it reads one kind of figure:
- A reading — a metric's value for the month being calculated, or the most recent one before it: this month's ticket count, synced from a connection or entered by hand. Only readings taken since the initiative started count.
- A baseline — the initiative's before-value for a metric.
- An assumption — a figure taken as given, like a loaded labor rate or a price per million tokens.
Roiva's own formulas also use a few terms you never enter: the number of days, working days, weeks or months in the month being calculated, and arithmetic over the other inputs, such as an average deal value worked out from won revenue and won deals.
Because each entry is one month's value, a figure stated for a year counts only that month's share of it. Audit cycles a year, storm events a year, annual tuition per student and an annual cost of capital are each multiplied by the months calculated ÷ 12, so a formula books a twelfth of a year's saving in a month rather than the whole year again every month.
Most of the formulas Roiva ships are a before/after pair on one metric: the baseline of a metric compared with a reading of the same metric, so both sides are measured the same way. The difference, multiplied by volume and a rate, is the value.
Some templates carry two formulas for the same saving in different units, because providers report different things: AI spend per request where the provider reports requests, per million output tokens where it reports only tokens. An initiative gets the one its connected sources can feed, and Roiva moves an untouched copy to the other if your sources change.
When a formula runs
You don't run formulas yourself. A formula is calculated for the current month:
- when a reading it uses arrives, from a sync, a CSV import or by hand, or is deleted;
- when the formula is created or changed;
- when your account saves its own figure for an assumption the formula reads;
- and every night, for every active formula, which catches a new month starting and any change to a Roiva default.
Each run writes one value entry per formula per month. Running again rewrites that month's entry while it's still waiting for review. An approved entry is never rewritten by a formula.
If any input has no figure, the formula doesn't calculate and nothing is booked. It waits, and the figure it needs is listed on the Missing Inputs page. See What an initiative needs before it has a number.
What a calculated entry shows
Open a calculated value entry from the initiative's Value Entries tab. Its Formula Inputs section shows the expression and the value of every input at the time it was calculated, and where each came from: a reading, a baseline, an assumption. A reading that came from a sync links to What's behind it, the synced records the figure was counted from. The Provenance section names the formula and the moment it ran.
Assumptions and Roiva defaults
Roiva ships a default for the assumptions its formulas read, most with the source they come from. Some, like labor rates, differ by industry, and Roiva uses the one for your account's industry. Method → Assumptions lists them:
- In Use is every assumption one of your formulas reads, and where it stands: Missing (the formula can't calculate), Roiva default, or Set.
- Library is everything your formulas could read: Roiva's defaults and your own figures.
A row on a Roiva default has Confirm or override, which opens the figure with its source. Save it as it is to confirm it, or change it. Either way it becomes your account's own figure. A missing one has Set it. Anyone on the account can set an assumption.
An assumption is never edited in place. A new figure applies from its Effective from date, and the one it replaces stays in the history: the link under each row's date opens every version, who set it and when. Approved entries keep the figure they were calculated with.
Why value waits while a formula runs on a Roiva default
A Roiva default is a reasonable basis for showing a number, but not for putting one into approved value unattended. So while any input a formula reads is still a Roiva default, what it calculates never approves itself: it waits in Approvals for a person. Once you confirm or change the figure, the entries waiting on it are recalculated with your figure.
Baselines
A baseline is filled in one of three ways:
- From your history. When your connected systems have figures for any of the three complete months before the initiative started, Roiva works out the baseline from them: the same arithmetic the formula uses for the figure now, month by month, averaged over the months it could calculate. A month counts only when every figure in it describes that month. The baseline's notes list the months and figures it came from.
- A Roiva estimate. Where there's no history, Roiva may estimate the baseline when the initiative is set up from a template, and marks it as an estimate. If those months sync in later (you connect the platform after the initiative started, and it backfills), Roiva replaces the estimate with a baseline from your history and recalculates the entries not yet approved that used the estimate.
- By hand. A baseline you enter or import is yours, and Roiva never overwrites it.
What moved an AI spend saving
A saving in what your AI spend buys can come from two places, and they are not worth the same. Your team can earn it — routing simple requests to a smaller model, turning on prompt caching, trimming context. Or your provider can hand it to you by cutting its prices, with nothing on your side changing at all.
Both look identical in the figures: your cost per unit of work falls. So where the saving is a drop in what a unit of AI work costs, and your provider's bill breaks down by model and token type, the entry shows a What moved this saving section splitting it in two:
- Vendor price changes — what your provider's prices alone would have saved you at your baseline months' usage: same models, same caching, same prompts. Nothing you did.
- What you ran — everything else. The models you chose, what you cached, how you shaped the work.
The two add up to the amount booked. The amount itself doesn't change and still reconciles to your bill — the split explains the number rather than restating it.
Roiva works this out from your own invoice, not from a provider's list prices, so tiers, batch rates and any discount you negotiated are already in it. Today that means Anthropic: its cost report gives spend per model per token type, and no other provider's does. Elsewhere the entry says it couldn't split the saving and why, which is not the same as saying your provider's prices held — use the entry's notes to record which it was.
Where the split covers only part of a period's AI spend — because you read more than one provider into it — the entry says what share it speaks for.
The Formula Trace
ROI → Initiatives, then an initiative and Formula Trace, shows how that initiative's ROI breaks down: approved value and total cost, the largest types of value and cost under each, and the platform each came from where a connection booked it. Each branch opens the entries behind it.
Adding or changing a formula
Adopting a template copies its formulas onto the initiative, which is how most formulas start. To add your own, open the initiative's Measurement tab, then Value Formulas, and click New Formula. Method → Formulas has the same button, with a choice of initiative. Give the expression, then map each variable to a Reading, a Baseline or an Assumption. Result is in says whether the expression gives dollars or cents. A formula is calculated for the current month as soon as it's saved.
To change one, open it and click Edit. Formulas Roiva ships in the library can be viewed but not edited.
On a formula's own page, Data Availability shows every input's current value and whether it's ready. When they all are, Calculate & Send for Approval calculates a period you choose. The entry it creates goes straight to approvers, not to drafts, and waits for a person whatever the auto-approve setting.
Auto-approval
Auto-approve is off unless an Owner or Admin turns on Auto-approve formula-derived value entries under Organization Settings → Approvals. With it on, an entry from a formula Roiva supplied (from a template, say) approves itself when:
- a person has already approved one of that formula's entries (confirming its inputs doesn't count);
- the amount is between half and double the formula's last approved entry;
- every input came from a real figure, none of them zero;
- no input is a Roiva default, and no count or amount entered by hand is from an earlier month;
- the amount isn't above the senior approval threshold, or far outside the initiative's planned value;
- and the initiative isn't sample data.
Anything else waits for review, and a formula you wrote yourself always waits. Auto-approved entries show Auto-approved as their status, and each one is recorded in the audit log. See Approving value and initiatives.