CalculationIntermediateQuality, Cost & Token Economics / Cost modeling and unit economics / #5

Model the monthly cost of a feature used by 50,000 users averaging 12 interactions each.

BOUND · cost & unit economics

Fifty thousand users, twelve checks a month each, adds up to a small, boring number. The real risk was never the total. It was how unevenly that average was actually spread across users.

The direct answer
Break the monthly bill into real lines, not one blended price per check: a cheap base check on every interaction, an occasional deep rewrite pass some interactions trigger, a confidence escalation check for calls the model itself is unsure about, and a fixed infrastructure cost. For 50,000 users averaging 12 interactions a month, 600,000 checks, that arithmetic lands at a best estimate of $629 a month, in a realistic range of $545 to $839. The assumption that swings that range most isn't user count or token price, it's how often a check triggers the expensive deep rewrite pass, and that share isn't flat across users, it concentrates in a small tail the "12 average" quietly hides.
Do this, in order
  1. Break the monthly bill into four real lines, base check, deep rewrite, confidence escalation, and fixed infrastructure, never one blended per-interaction price.Why: the four lines land at $629 a month, and only one of them is worth watching closely.
  2. Own every number and say where it came from, token counts, price per token, and how often each path actually fires.Why: a number nobody can trace back to a source is a guess wearing a dollar sign.
  3. Size the deep rewrite trigger rate as a range, not a fixed percent, since it swings the total more than any other assumption.Why: moving that one rate from 1 in 10 to 1 in 3 swings the bill by about $294, roughly six times what the escalation rate alone can move it.
  4. Track interaction counts per user, not just the fleet average, so a skewed usage tail shows up before the compute bill does.Why: the average of 12 hid that 2 percent of users were running about 80 percent of the expensive calls.
  5. Sanity check the total against the cost per active user, not the raw dollar figure alone.Why: $629 a month sounds real in isolation, but it's under a third of one percent of the $4 subscription price per user, easy to wave off right up until the usage behind it isn't flat.
  6. Add a per-user monthly cap on the deep rewrite path that falls back to the cheap base check instead of cutting anyone off.Why: a hard cutoff breaks the product for a power user right when they need it most; a graceful fallback protects the budget without breaking anyone's morning.

How to answer this, stage by stage

Nobody's grading whether you can say the word "tokens." They're grading whether you can show the arithmetic behind one number and say which part of it you trust least.

1
Scope it to one concrete feature before estimating anything in the abstract
Say it like this
"Let's ground this in one feature. Clausewatch is a browser extension Verrick built that reads what you're typing in any text box and flags grammar and style issues before you hit send. Idunn Osterlind owns the cost model for it, and Nadege Winterburn is the finance partner who signs off on what it costs to run."
Why this works
An abstract "model the cost" question turns into a guess fast. One feature turns it into a real arithmetic problem.
2
Say your structure out loud before touching a single number
Say it like this
"I'm going to break the monthly bill into its real parts, own where every number came from, give a range instead of one figure, sanity check it against something known, then name the one assumption that would move it most."
Why this works
Tells the interviewer you have a method, not a guess with a dollar sign on it, before you've said a single figure.
3
Break the equation down before touching a single figure
Say it like this
"The monthly bill is four things added together. A base check that runs on every interaction. A deep rewrite pass that only some interactions trigger. A confidence escalation check for the calls the model itself is unsure about. And a fixed line for hosting and logging."
Why this works
Naming the equation first stops you backing into a small, comfortable number without knowing what it's actually built from.
4
Own every number and where it came from
Say it like this
"I'll assume 50,000 users each average 12 checks a month, 600,000 checks total. Each base check reads about 300 tokens of your text and the style rules, and writes back about 100 tokens of flagged fixes, on a small, fast model. That's a fraction of a cent a check, about 84 dollars a month across all 600,000."
Why this works
A number nobody can trace back to a source is a guess wearing a dollar sign.
5
Give the range, not one blended figure, and name the lever behind it
Say it like this
"Add the four lines up and the best estimate lands near 629 dollars a month. But how often a check escalates into the expensive rewrite pass moves that a lot. At the low end it's closer to 545. At the high end, over 839. The honest answer is that range, not the number sitting in the middle."
Why this works
A single point estimate is exactly the trap this kind of question is testing. Real usage doesn't sit still.
6
Run the sanity check, then ask whether the average is hiding something
Say it like this
"Six hundred twenty nine dollars a month across 50,000 users is about a penny and a third per user, under a third of one percent of what the Pro plan costs. That passes the smell test on paper. Then I'd ask how evenly that 12 average is actually spread, because if 2 percent of users are running 80 percent of the expensive calls, the average was never the real risk."
Why this works
A comfortable total can still hide a real problem if the usage behind it isn't flat.
7
Close on the decision, not the arithmetic
Say it like this
"So: four real lines, sized as a range, sanity checked per user, with a per-user cap on the expensive path that falls back gracefully instead of cutting a power user off cold."
Why this works
Ending on the decision, not the last number crunched, is what makes this sound like judgment instead of a spreadsheet read aloud.

Let's learn

What does 50,000 users averaging 12 checks a month actually cost to run, once you stop treating "12" as a fact about every single one of them?

Clausewatch is a browser extension from Verrick that reads what you type into any text box on the web and flags grammar and style problems before you hit send.

Before anything like Clausewatch, a careful writer read their own message twice before sending it, catching maybe 7 out of 10 real problems, an awkward phrase, a wrong word, a run-on sentence, and missing the rest because nobody proofreads their own writing well at 11pm.

Knowledge spark: what's a token? A chunk of text, roughly three quarters of a word, that a model reads and writes in. A model's price is set per million tokens, and every extra word you send it, or it sends back, is more tokens billed.

Clausewatch flags an average of 3 issues on a typical paragraph, in under two seconds, and Verrick's own numbers say it catches something close to 9 out of 10 of the same problems a careful human editor would flag. The base pass is fast and cheap on purpose, and it only hands a check to a slower, pricier model when the fast model's own confidence is low, trading a little latency and cost for catching the fixes a user would actually notice being wrong.

The turn: Clausewatch didn't get worse, and the model didn't get expensive. Fifty thousand users averaging 12 checks a month is a small, boring number, 600,000 checks, and on paper the monthly bill for that comes to well under a thousand dollars. The real risk was never the total. It's that "12 average" is not what any real user actually does.

The build-up: what a month of Clausewatch actually costs, part by part
$650 $325 0 Base check $84 Deep rewrite $210 Escalation $35 Infra $300 Total $629
Base check, every interactionDeep rewrite passConfidence escalationFixed infrastructure
Base check is cheap because it runs on a small fast model. Deep rewrite and escalation only fire when a check needs more than that, and together they're less than half the bill.
The average was never twelve checks a month. It was eight for most people, and two hundred and eight for two out of every hundred.
Hand sketched number line from 0 to 1200 dollars, titled Clausewatch's bill, one month. A green bracket marks the honest range from a low bound of 545 dollars to a high bound of 839 dollars. An amber dot inside the bracket marks the best estimate at 629 dollars. A red diamond further along the line, past the range, marks 1014 dollars, labeled skip the split, escalate every check. A small hand drawn browser window sits below the line as the desk item this bill belongs to.
The honest answer was never one number. It ran from about $545 to $839, with a best estimate near $629, well under what escalating every check instead of just the unsure ones would have cost.
The choice that mattered Verrick's first cost model tracked one number, the fleet-wide monthly total, and never asked how those 600,000 checks were actually spread across 50,000 people. That was a fine question to skip when Clausewatch had a few thousand users who mostly used it the same way. It stopped being fine once the user base grew past anyone's ability to eyeball who was doing what.

At its worst, a cost model built off one flat average can look perfectly healthy for months, then get blindsided the one quarter a small slice of users, students during finals, a marketing team going all in on a launch, ramps up the expensive path hard enough to blow past a budget nobody thought needed watching.

What I'd leave alone: the base check line doesn't need this kind of scrutiny. It's flat, cheap, and dominated by small-model pricing that barely moves no matter how usage shifts, so watching it closely every week would spend attention where there's no real risk to find.

The lesson: an average can be completely honest and still be the wrong number to plan a budget around, the moment the thing it's multiplying doesn't spread evenly across the people doing it.

Now here is the same thing as a story

Read the long version below when you want to feel why a total that kept agreeing with itself still went wrong, not just be told that it did.

Idunn Osterlind edited copy for six years before she ever wrote a line of product spec. She can read a paragraph once and tell you exactly which sentence a reader will trip on.

She joined Verrick the year Clausewatch launched, and for the first year she built its cost model the way almost anyone would: one number. Multiply the interactions by the price per interaction, round up, done. At 50,000 users and 12 checks a month, that number came out under a thousand dollars, and every month the finance dashboard showed a green light next to it.

For a while, green was the right color. The team shipped a deep rewrite feature, a button that rewrites an awkward paragraph in a clearer voice, and it landed well. Usage climbed steadily, and the monthly total climbed with it, exactly as predicted, exactly on the line the model had drawn.

Idunn stopped checking the model against anything except itself sometime in the second year. Not on purpose. The total kept landing close to what the spreadsheet predicted, month after month, and a number that keeps agreeing with itself stops feeling like something you need to open the hood on. At first she pulled a sample of real usage logs every month, just to eyeball whether the spread looked sane. By month nine that had thinned to once a quarter. By month sixteen, she wasn't pulling logs at all. The one number on the dashboard was doing the whole job the sample used to do.

It came back during an ordinary quarterly review. Nadege Winterburn, the finance partner who signed off on Clausewatch's compute budget, pulled the raw usage logs herself this time, not for Clausewatch specifically, just a routine pass across every AI feature the company ran. She noticed something odd in one column before she noticed anything in the total: a small slice of user IDs showing up on almost every page of the deep rewrite log.

Idunn's first instinct was the sensible one. Maybe a handful of accounts were bots, or a QA script left running. She'd seen that before. But she pulled the real distribution instead of guessing, and the shape of it stopped her.

Two out of every hundred users were running about eighty percent of the expensive rewrite calls. The other ninety eight percent were using Clausewatch almost exactly like the model assumed.

Forty nine thousand users were averaging 8 checks a month, quietly under the "12 average" the whole time. A thousand users, professional writers, marketing teams drafting five versions of the same email, a small cluster of university accounts during exam season, were averaging 208 checks each, about 26 times as many, and a much higher share of theirs were the expensive kind. The fleet average of 12 was real. It was also true of almost nobody.

The decision that opened the door went back to Clausewatch's very first budget meeting, before it had a thousand users, let alone fifty thousand. The model tracked one number because one number was all anyone needed to answer "can we afford this." Nobody decided, on purpose, that it would still be the only number two years and forty nine times the user base later. It just kept agreeing with itself, and a number that keeps agreeing with itself stops looking like a choice anyone made.

Run that quarterly review again with one change: a per-user running total, checked automatically every week, not just the fleet sum. The same thousand power users still show up, the same eighty percent share of the expensive calls still exists. But now it shows up in week three of month one, on a chart Idunn already has open, not as a coincidence Nadege happened to notice in a column she wasn't even looking for.

One design trusted a total that kept agreeing with itself. The other watches the shape underneath it, not just the number sitting on top.

What I'd tell myself, back in that very first budget meeting: a single total is a fine answer to "can we afford this today." It was never going to be a fine answer to "who is actually using this, and how much," and the day nobody's asking that second question is a day that doesn't announce itself on any dashboard.

BOUND: the arithmetic Idunn's one number was standing in for

Not a story question wearing a framework's clothes. This is an estimation problem, and BOUND is what keeps one comfortable total from hiding the shape underneath it.

BBreak it down. What's the actual equation?
Monthly cost equals four lines added together: base check cost, plus deep rewrite cost, plus confidence escalation cost, plus a fixed infrastructure line. Four terms, not one number standing in for all of them.
Say the equation before naming a figure, or the number you land on is a guess wearing a decimal point.
OOwn the numbers. Where did each one come from?
600,000 checks a month, 50,000 users at 12 each. Base check: 300 input tokens, 100 output tokens, a small fast model at 20 cents per million input tokens and 80 cents per million output. Deep rewrite: 900 input, 300 output, a stronger model at 1 dollar and 4 dollars per million. Escalation: the same stronger model, 300 input, 100 output, triggered whenever the base model's own top suggestion scores under about 70 percent confidence.
This is also where the rejected alternative sits, see below: escalating every check instead of only the unsure ones.
UUse a range, not one number.
The deep rewrite trigger rate is the assumption doing the real work. At 1 in 10 checks, the total lands near $545. At 1 in 3, it's over $839. The honest monthly figure is that range, with a best estimate near $629 at Clausewatch's actual measured rate, about 1 in 6.
A single confident number is exactly what let a real usage skew hide behind a total that kept agreeing with itself.
NNail the sanity check. Does the number survive being compared to something real?
$629 a month across 50,000 users is about 1.3 cents a user, under a third of one percent of the $4 Pro subscription price. That survives the smell test at the fleet level. It does not survive being checked against the actual spread: 2 percent of users, running 80 percent of the deep rewrite calls, are each running roughly 26 times the checks of a typical user.
The hardest step, and the one most answers skip. A sane fleet average can still hide an insane per-user number.
DDirection. Which assumption would move the answer most?
Deep rewrite trigger rate. Moving it from 1 in 10 to 1 in 3 swings the total by about $294, almost twice what a flat 50 percent shift in token pricing would move it, and about six times what the escalation rate alone can move it.
Naming the shakiest assumption out loud is what a good estimator does that a bad one skips.
What moves the estimate most, if the assumption behind it is wrong
Deep rewrite rate, 1 in 10 to 1 in 3 ~$294 Token pricing, a 50 percent shift ~$165 Escalation rate, 1 in 12 to 1 in 5 ~$49
Biggest swingMedium swingSmaller swing
Estimated dollars a month moved if each assumption changes. The deep rewrite trigger rate swings the budget almost twice as much as a full pricing shift, and about six times as much as the escalation rate.

Three things worth stating directly, since this is where the real judgment sits. The alternative Idunn's team considered, and rejected, was dropping the confidence-based escalation entirely and just running every check through the stronger model, one fewer moving part in the system. It lost because that alone would push the bill to about $1,014 a month, about 61 percent more, mostly paying the strong model's price on checks the small model was already getting right. The AI-specific failure worth naming by name is cost blindness to usage skew: a feature's own routing decision, which calls escalate to a pricier model, depends on the model's own uncertainty about that day's writing, not a fixed unit-economics number, so the trigger rate can drift with who's using the product even while total interaction count stays exactly on plan. The guardrail is a per-user cap: any single account whose deep rewrite usage crosses a set weekly ceiling falls back automatically to the cheap base check, no hard cutoff, so a power user's fix bar gets shorter, never blank. That guardrail isn't free. It trades a little of the deepest editing a heavy user might want against a bounded, predictable ceiling on what any one account can cost. And the bar Clausewatch holds itself to was never zero missed style issues across 600,000 checks a month, no probabilistic checker can promise that. It's a cost ceiling tied to actual usage shape, checked weekly per user, not one fleet-wide average standing in for 50,000 very different writing habits.

And if you want to be sure it really works, try it somewhere else

Same five letters, a library's rare-book scans instead of a browser extension's paragraphs, and this time the lever that swings the bill isn't a trigger rate at all.

Coverleaf is a cataloging tool the Loamcastle Library Consortium built. A cataloger photographs a book's cover and title page, and Coverleaf drafts the catalog description from the photo plus whatever metadata already exists. Petrona Bramante runs digitization for the consortium's forty branches.

The build-up: Coverleaf handles about 6,000 new items a month. A standard call, one photo at normal resolution plus the item's existing record, costs a fraction of a cent, about $18 a month across the whole consortium. An archival pass, three to five photos at four times the resolution for a rare or damaged item, costs more than ten times as much per item. At launch, Loamcastle modeled archival passes at under 1 in 20 items, based on its first year of mostly ordinary donations.

The decision Petrona would take back Setting Coverleaf's archival threshold once, at launch, off the first year's donation mix, and never tying it to how that mix was actually changing branch by branch.

Two years and one large estate donation later, one branch alone was routing closer to 1 in 4 items through the archival path, and that branch's monthly bill had quietly grown past the whole consortium's original combined budget line, not because more books arrived, but because the mix of what arrived had shifted underneath a threshold nobody had revisited.

Same method, different lever: for Clausewatch, the trigger rate that mattered was how often a check needed the expensive rewrite pass. For Coverleaf, it's how often an item needs the expensive archival scan, and that share moves with what people donate, not with anything the engineering team controls.

Swap the trigger and it still runs.
Speed: an interviewer caps you at ninety seconds. Skip straight to it: break the bill into real lines, size the biggest lever as a range, sanity check the total per unit of work, not just the fleet sum.
Cost: there's no budget this quarter for both a bigger review sample and a per-user cap. The cap wins. A ceiling on what any one account can cost beats a bigger sample that just re-measures the same skewed average more precisely.
The model got better, for real: say Clausewatch's base model gets upgraded and its baseline accuracy climbs. That's not proof the deep rewrite trigger rate improved with it. The easy, common checks could get even easier while the power-user tail keeps triggering the expensive path exactly as often as before.

Where people run it wrong.
They price the feature off the average user, and never ask how the usage behind that average is actually shaped.
They notice the total is small and stop watching it, instead of asking whether small and evenly spread are the same thing.
They fix a scary bill by throttling everyone a little, instead of finding the small slice of usage actually driving it.

How to use it live. Say the real question out loud before quoting a number: "before I give you a total, do you want the fleet average, or do you want to know if that average is true of anyone." That buys a beat to think instead of repeating a comfortable number nobody has actually checked against the real spread.

Flashcards (tap any card to flip it)

1 · THE FRAMEWORK
What framework is this, and what's its one job?
Tap to flip
ANSWER
BOUND: show the arithmetic, own the assumptions. Built for estimation and sizing questions, not a story about someone's morning.
2 · THE PERSON
Who is this answer about?
Tap to flip
ANSWER
Idunn Osterlind, who owns Clausewatch's cost model at Verrick. Edited copy for six years before moving into product.
3 · THE BLIND SPOT
What did Verrick's dashboard never show, even though the monthly total always looked fine?
Tap to flip
ANSWER
How those 12 average interactions were actually spread across users. The dashboard only ever showed one fleet-wide total, never a per-user distribution.
4 · THE EQUATION
What four parts make up Clausewatch's real monthly bill?
Tap to flip
ANSWER
A base check on every interaction, an occasional deep rewrite pass, a confidence escalation check for unsure calls, and a fixed infrastructure line.
5 · THE OLD DECISION
What decision would Idunn take back?
Tap to flip
ANSWER
Building the cost model off one blended fleet-wide average from day one, with no way to see that a small share of users ran the expensive deep rewrite path far more than everyone else.
6 · THE NUMBER
Fill in the blank: the honest monthly range ran from about $545 to $___, with a best estimate near $___.
Tap to flip
ANSWER
$839, and $629. The gap between them, about $294, comes almost entirely from one lever: how often checks trigger the deep rewrite pass.
7 · THE REPLAY
Same audit, new design, what changes?
Tap to flip
ANSWER
A per-user running total, checked automatically every week, surfaces the same power-user tail in week three of month one, on a chart Idunn already has open, instead of month sixteen when a finance partner happens to notice a strange column.
8 · CROSS-PRODUCT TRANSFER
Section 4 answers this same question again for a different product. Which product, and what lever dominates there?
Tap to flip
ANSWER
Coverleaf, a catalog description tool for the Loamcastle Library Consortium. There, it's not a trigger rate, it's how often an item needs the far pricier archival scan, a lever that moves with what people donate, not with engineering.

Check yourself Score: 0 / 0

Fill in the blank
1. At the best estimate of $629 a month across 50,000 users, the average cost per user is about $___ a month.
Show hint
Divide the best-estimate total by the number of users, then check it against the sanity-check step.
Show answer
$0.013, a little over a penny. That's under a third of one percent of the $4 Pro subscription price, which is what made the total look completely safe on its own, before anyone checked how it was actually spread.
True or false
2. True or false: because the fleet-wide average was only 12 interactions a user, no single group of users could be responsible for a large share of Clausewatch's expensive deep rewrite calls.
  • True
  • False
Show hint
Check what Nadege found when she pulled the actual usage distribution, not the fleet average.
Show answer
False. Two percent of users, about 1,000 people, averaged 208 checks a month each and accounted for roughly 80 percent of all deep rewrite calls, while the other 98 percent used Clausewatch close to what the average implied.
Multiple choice
3. Why did the $629 estimate need a range instead of one point figure?
  • A. Because the number of users, 50,000, wasn't precisely known.
  • B. Because how often a check triggers the expensive deep rewrite pass swings the total by hundreds of dollars, more than any other assumption.
  • C. Because Verrick's finance team requires every estimate to include a range regardless of the numbers.
  • D. Because the base check's token price changes every day.
Show hint
Look at the D step in the framework recap, and the sensitivity chart next to it.
Show answer
B. The deep rewrite trigger rate swings the total by about $294, almost twice what a full pricing shift moves it and about six times what the escalation rate alone can move it.
Short answer, name the rejected alternative
4. What alternative did Idunn's team consider for the confidence escalation step, and why did it lose?
Show hint
Look at the O step in the framework recap, where the rejected alternative is named directly.
Show answer
Model answer: Escalating every check to the stronger model instead of only the ones the base model itself flagged as unsure. It lost because it would push the monthly bill to about $1,014, roughly 61 percent more, mostly paying the pricier model's rate on checks the cheap model was already getting right.
Short answer, apply it yourself
5. Pick an AI feature you use yourself that has a cheap, fast default path and an occasional heavier path (a deeper edit, a retry, a longer generation). Name one way you'd check whether that heavier path is evenly used across people, or concentrated in a small group.
Show hint
Think about who would actually need the heavier path more than an average user would, and why.
Show answer
Model answer: A photo app's "enhance" button might run a cheap sharpen pass by default and a much heavier reconstruction pass only when a photo is very blurry. I'd check how many heavy passes come from the same handful of accounts, say, people who upload lots of old scanned photos, versus how spread out they are across everyone who uses the button.
Multiple choice
6. If Clausewatch's deep rewrite trigger rate rose from the best estimate of 1 in 6 checks to 1 in 3, what happens to the monthly total, and why?
  • A. It stays about the same, since deep rewrite calls are a small share of all checks.
  • B. It rises from about $629 to about $839, since the deep rewrite line alone roughly doubles from $210 to $420.
  • C. It falls, since a higher trigger rate means fewer checks need the base pass.
  • D. It becomes impossible to estimate without knowing the exact number of power users.
Show hint
This is exactly the high-bound scenario from the U step. Check what the deep rewrite line costs at 200,000 calls a month.
Show answer
B. Doubling the trigger rate doubles the deep rewrite call count from 100,000 to 200,000 a month, and that line alone moves from $210 to $420, taking the total from $629 to $839.
Before you close the answer
Why this works
Tests whether you'll price an AI feature off a comfortable fleet-wide average, or ask how that average is actually spread across real people. Most candidates stop at the total and call it done.
Follow-up traps
"$629 a month sounds too cheap for a real AI feature, are you sure that's right?" Response: it's cheap because most checks are simple pattern matches on a small, fast model. Only the fraction that genuinely needs judgment escalates to the pricier model, and that escalation cost is already inside the $629.

"If it's this cheap, why not just always use the better model everywhere and simplify the system?" Response: modeled it. Escalating every check instead of only the unsure ones pushes the bill to about $1,014, roughly 61 percent more, for accuracy gains that mostly matter on calls already flagged as uncertain, not the typo fixes the cheap pass already gets right.
If pressed
The per-user cap doesn't hard block anyone. It sits at about 400 deep rewrite calls in a single week, and once an account crosses it, Clausewatch quietly falls back to the cheap base check for the rest of that week instead of refusing to help, so the fix bar gets shorter for a power user, never blank.
From U2xAI Academy

From answering questions to owning outcomes.

A live workshop where you ship a working AI agent, defend a launch decision, and walk away with a portfolio recruiters can't wave off, not just more questions to study.

  • A live AI agent you actually shipped
  • A launch decision you can defend under pressure
  • An interview-ready portfolio, not more flashcards
Know more