ConceptIntermediateAI Opportunity & Model Strategy / When NOT to use AI / #15

What is the opportunity cost argument against a technically feasible AI feature?

BOUNDthe same five weeks, spent on two different things worth two different amounts

Codeloom builds PatchPilot, an AI tool that leaves inline review comments on pull requests. Odalys Kettering, a senior engineer, spent a hackathon building a prototype for Smell Certification: a deeper feature that flags architectural smells and rewrites commit messages, using a bigger, slower model call per PR. It works. Marek Branwell is the PM deciding whether to greenlight the full build.

The direct answer
Technical feasibility answers "can we." It never answers "should this win against everything else our engineering time could build right now." Before greenlighting a feasible AI feature, write down its real cost against the next best use of the same weeks, in the same unit. If a known, high-value fix is sitting right there and the feasible feature can't beat it on real numbers, the fix wins, no matter how exciting the feature demo was.
Do this, in order
  1. Name the real next-best use of the same engineering weeks before approving anything.Why: "can we build it" is a yes/no question. "Should this win" needs a real competitor to lose to.
  2. Price both options in the same unit: dollars, weeks, or hours, not vibes.Why: "this feels more exciting" isn't a number you can compare against anything.
  3. Include the AI feature's ongoing costs, not just its build weeks.Why: inference spend and eval upkeep don't stop after launch. A rule based fix mostly does.
  4. Check whether the alternative's value compounds while the feature's doesn't.Why: a one-time capability and a recurring saving aren't the same shape of win, even at equal cost.
  5. Let the real numbers pick, not whichever option demoed better.Why: a working prototype proves feasibility. It proves nothing about which use of the team's time actually pays back more.
  6. Revisit the call if either side's real numbers change later.Why: opportunity cost isn't a one-time verdict, it moves whenever the alternative's cost or the feature's value does.

How to answer this, stage by stage

Nobody is scoring whether you can define opportunity cost. They're scoring whether you'd have caught this before five weeks disappeared into the more exciting option.

Stage 1
Scope it to one real pair of competing options, not prioritization in general
Say it like this
"Let's ground this. Say a team has a working prototype for an AI feature that flags architectural smells in code review. It's feasible. The same five weeks could also go toward fixing a known, flaky CI pipeline. That's the actual choice, not AI versus not-AI in the abstract."
Why this works
Keeps the answer from turning into a lecture about prioritization frameworks with nothing real to weigh.
Stage 2
Say your structure out loud before any numbers
Say it like this
"I'll run this as BOUND. Break it down, what feasibility actually leaves unanswered. Own the numbers on both sides. Use a range for what would change the call. Nail the sanity check. Direction, the actual decision."
Why this works
Signals a repeatable estimation method, not a gut call dressed up as analysis after the fact.
Stage 3
Break down what "it works in the demo" actually leaves unanswered
Say it like this
"A hackathon prototype tells you the model can do the task. It tells you nothing about whether this is the best thing five weeks of two engineers could do this quarter. Those are two completely different questions, and only one of them got answered by the demo."
Why this works
Separates feasibility from priority before the conversation drifts into arguing about the demo itself.
Stage 4
Own the real numbers on both sides, out loud
Say it like this
"Smell Certification costs 30 grand to build, plus about 8,700 dollars a quarter after that in inference spend and eval upkeep, an ongoing tax. The CI flake fix costs the same 30 grand to build, once, with no ongoing tax, and our own logs show it recovers something like 37,000 dollars of engineer time in the very first quarter, and every quarter after that."
Why this works
This is the direct answer, made concrete with real figures a founder or exec can't wave away with enthusiasm.
Stage 5
Name the AI-specific cost line the rule based alternative never carries
Say it like this
"The 8,700 dollars a quarter on top of the build isn't a rounding error, it's inference cost that runs every single PR, forever, plus an eval set someone has to keep current so we'd actually notice if the model started missing real smells. A CI fix doesn't drift. Once it's fixed, the tax is basically zero."
Why this works
This is the load bearing judgment. It wouldn't make sense to ask this about a feature with no model in it, since a rule or infra fix simply doesn't carry a recurring inference and eval bill.
Stage 6
Say what would flip the call, then state the direction
Say it like this
"If the smell feature's build slipped to eight weeks instead of five, that swings it worse, not better. If it shipped in three, it might close some of the gap, but it still wouldn't touch the flake fix's compounding return. Given the real numbers today, the flake fix wins these five weeks. Smell Certification isn't dead, it's just not the best next thing."
Why this works
Shows the call is based on real sensitivity, not a fixed opinion that ignores how the numbers could move.
Stage 7
Say what you'd leave alone, then close on one line
Say it like this
"This isn't a case against AI features generally, PatchPilot's core inline comments already pay for themselves many times over. It's that this specific feasible feature loses to a specific known fix, this specific quarter. Write the comparison down, every time, and let the numbers pick."
Why this works
Closes with judgment instead of blanket skepticism about AI features, and restates the direct answer in one breath.

Let's learn

PatchPilot is a tool that reads a pull request and leaves inline review comments automatically, so a developer gets feedback on style and likely bugs before a human reviewer ever opens the diff.

Hand sketched icon list titled How feature requests get judged today, with no ledger. Four rows. One, a gauge icon captioned prototype works, so it counts as feasible. Two, a box icon captioned nobody names what else those same weeks could build. Three, a question mark box icon captioned no comparison against a known waiting fix. Four, a document icon captioned it ships whether or not it beats the alternative.
Before any real comparison, this is how a feasible prototype usually wins a slot on the roadmap: by being the thing that already works, not the thing that pays back the most.

Before Marek built a real comparison habit, Codeloom greenlit features mostly on whether the prototype worked. Two quarters ago, a similarly scoped AI feature, automatic test-name suggestions, shipped after a good demo, cost about the same five weeks, and get used by fewer than 4 percent of developers today. Nobody had ever named what those five weeks could have paid for instead.

Real quarter-one cost, Smell Certification vs the CI flake fix
40k 20k 0 Build, $30k Inference $4.2k $38.7k total Smell Certification Build, $30k $30k total CI flake fix
Build costInference run-rateEval upkeep
Same five weeks of build cost either way. The smell feature carries $8,700 a quarter on top of it, a tax the flake fix never pays.

So Marek wrote the comparison down properly this time: same build weeks, same two engineers, and then he added what each option actually returns. The flake fix's return came straight from Codeloom's own CI logs, real reruns, real hours lost, not a guess.

The two options didn't cost different amounts of time. They cost the same five weeks. What differed was what those five weeks paid back, and only one side had ever bothered to write that number down.

Here's the part that isn't about the smell feature being bad at all. It genuinely works. The turn is that "works" was never the actual question on the table. The question was always going to be whether it beat the next best use of the same five weeks, and until Marek wrote the comparison out, nobody had actually asked that question.

Knowledge spark: why does an AI feature carry an ongoing tax a rule doesn't? Every PR that runs through the smell feature triggers a real model call, real inference spend, every single time, forever. And someone has to keep a golden set of known-good and known-bad examples current, or nobody would notice the model quietly getting worse. A fixed rule or a CI script doesn't call anything per use and doesn't drift, so once it's built, its ongoing cost is close to zero.
What moves the estimate most, if the team is wrong about it
Assumption Build slips 5 to 8 wks +$9,000 Eval needs weekly work +$9,000 Inference 2x estimate +$4,200
Swings the estimate mostSmaller swing
Even in the best case for Smell Certification, its total never approaches the flake fix's real, already-measured $37,000 quarterly return.

At its worst, greenlighting the feasible option without this comparison costs Codeloom two things at once: five weeks that could have recovered real engineer time starting immediately, and a new $8,700-a-quarter tax that keeps compounding as long as the feature stays in production.

The choice I would take back Greenlighting the test-name-suggestion feature two quarters ago on the strength of its demo alone, with no written comparison against anything else the same five weeks could have done. It made sense in a room excited about a working prototype. It stopped making sense once usage came in under 4 percent and nobody could say what got skipped to make room for it.

What I would leave alone: PatchPilot's core inline comment feature never gets this scrutiny anymore, it already has two years of usage data showing it saves real reviewer time every week. The opportunity-cost check is for new, unproven asks competing against a known alternative, not for a feature that's already proven its return.

The lesson: feasible and worth building are two different questions, and a good demo only ever answers the first one. Write the second one down, in real numbers, before the five weeks are spent.

Now here is the same thing as a story

The short version above is what you'd say out loud in the room. Read this one for what it actually felt like to watch a great demo lose an argument it never knew it was in.

Marek Branwell had shipped four features at Codeloom, and his instinct for what would delight developers was good. His instinct for what to say no to was newer, and less tested.

Odalys Kettering walked into his one-on-one with a laptop open. "Look at this," she said, and ran Smell Certification against a real repo. It flagged a genuine circular dependency nobody had caught in review. It rewrote a vague commit message into something a teammate could actually search for later. It was, honestly, impressive.

Hand sketched labeled parts diagram titled What the estimate is actually made of. A document icon at the center labeled Smell Feature Cost, with three labeled callouts around it: Build, 5 weeks. Inference run-rate. Eval upkeep, monthly.
The three real parts of the estimate, before either of them get turned into a chart. Only one of the three ever shows up in a demo.

For a moment, Marek almost said yes right there, the way Codeloom usually decided these things. Then he remembered the CI dashboard he'd been avoiding all week: 38 hours of team time a week, lost to reruns on flaky tests, a number that had been sitting in plain sight for a month.

"It's genuinely good," he told Odalys. "Give me two days before I greenlight it. I want to compare it against something real, not just against nothing."

Hand sketched comparison titled Two things competing for the same five weeks. Left panel, a gauge icon labeled architectural smell feature, caption feasible, modest proven value. Right panel, a scale icon labeled CI flake fix, caption known, waiting, high proven value.
Not AI versus no AI. Two real, scoped uses of the same five weeks, one proven and waiting, one exciting and unproven.

The two days weren't glamorous. He pulled Codeloom's own CI logs and found the 38-hour figure was real and conservative if anything. He priced Smell Certification properly with Odalys: five weeks to build, plus a genuine, recurring inference and eval bill neither of them had put a number on before. He priced the flake fix the same way: five weeks to build, once, with engineers who'd already scoped the root causes.

We weren't choosing between a good idea and a boring one. We were choosing between $38,700 that keeps costing money and $30,000 that starts paying it back the same quarter.

He never had a fixed number in his head for when a feasible feature should lose. He had a feeling with exactly two settings: it clearly wins on the numbers, or it doesn't. The demo alone never flipped that feeling. The written comparison did, in about twenty minutes of arithmetic.

Hand sketched quadrant chart titled Impact vs effort, the real comparison. X axis engineering effort, low to high. Y axis measured impact, unproven to proven. The smell feature sits at moderate to high effort and low measured impact. The CI flake fix sits at similar effort but high measured impact.
Same effort, plotted honestly. The gap is entirely in the vertical axis, and that gap is what the demo never showed.

Back in that first meeting, saying yes to a good demo wasn't an unreasonable habit. It had worked fine for smaller, cheaper features where being wrong cost little. It stopped being reasonable the moment two options of equal size and cost were both sitting on the table at once, one of them already proven.

Here's the replay: same prototype, same impressive demo, but with the comparison run before any decision instead of after the fact.

Hand sketched decision tree titled Which use of the next five weeks. Root node, team has five weeks of real capacity. Three branches. Feasible feature with modest proven return leads to weigh it against the alternative first. Known high value fix already waiting leads to take the fix, it compounds. Both scoped with real numbers leads to let the numbers pick, not the mood.
The fork that actually decided this, drawn out. The flake fix wins because it was scoped and known, not because the smell feature was bad.

With the comparison run first, the flake fix ships this quarter, developers get back real hours starting week six, and Smell Certification moves to next quarter's list with its real cost already on record, ready to compare against whatever else is waiting by then.

One version of this story spends $38,700 to fix a problem nobody had measured yet. The other spends $30,000 once and starts recovering real time the same quarter, because somebody finally wrote both numbers on the same page.

What I'd tell myself, back in that one-on-one: a good demo is proof the model can do the task. It was never proof this was the best five weeks we had.

BOUND: five moves for the sizing question that actually decides your roadmapNot a script for justifying a decision you already made. BOUND is what makes you write the comparison down before the demo gets to decide for you.

B
Break it down. What does "technically feasible" actually leave unanswered?
Odalys's prototype proves Smell Certification can flag real smells. It says nothing about whether that's the best use of five weeks against a known, waiting alternative.
Feasibility and priority are two separate questions. The demo only ever answers the first one.
O
Own the numbers. What does each real option actually cost and return?
Smell Certification: $30,000 to build plus $8,700 a quarter ongoing. The CI flake fix: $30,000 once, with roughly $37,000 in recovered engineer time in the very first quarter, from Codeloom's own logs.
Every number here is checkable against something real, not an estimate invented to make a point.
U
Use a range. What would make this call stronger or weaker?
If the smell feature's build slips from five weeks to eight, or eval upkeep needs weekly instead of monthly work, the gap widens, not closes. Even in its best case, it doesn't approach the flake fix's already-measured return.
This is the direct answer, expressed as a real sensitivity check instead of a single fixed guess.
N
Nail the sanity check. What trap does a team fall into without this?
A team that greenlights every feasible AI idea is optimizing for "can we build things," not "are we building the right things." That's exactly how the test-name-suggestion feature got shipped with under 4 percent usage two quarters earlier.
A working demo is seductive precisely because it feels like progress, whether or not it's the right progress.
D
Direction. What's the actual practical rule?
Technical feasibility is necessary, never sufficient. Before committing a feasible AI feature, weigh it in real numbers against the next best use of the same engineering time, and let the numbers, not the demo, make the call.
This is the rule that would have caught the wasted quarter before it happened, not after.

The recap, one line per letter: break it down separates "can we" from "should this win," own the numbers prices both real options honestly, use a range checks whether the call survives being wrong, nail the sanity check names the trap of shipping whatever's feasible, and direction is the actual rule for what to do about it.

And if you want to be sure it really works, try it somewhere elseSame five letters, a warehouse routing product instead of a code review tool. The judgment call this time is a feasible AI feature against a known equipment fix.

Thessaly Vann runs product at Loadwell, a warehouse routing platform. An engineer built a working prototype for FlowScout, an AI feature that reroutes pickers in real time based on predicted congestion. It works in simulation. Loadwell also has a known, unfixed problem: a specific conveyor sensor that misreads about 6 percent of scans, forcing manual recounts that cost the floor about 22 hours a week. Mapped onto BOUND: break it down means the simulation proves FlowScout can predict congestion, not that it beats fixing the sensor with the same engineering time. Own the numbers means pricing both: FlowScout at four weeks to build plus an ongoing inference and monitoring cost against warehouse WiFi reliability, the sensor fix at four weeks to build, once, with a real 22-hours-a-week recovery already measurable from the recount logs. Use a range means checking what happens if FlowScout's congestion predictions turn out to be only 70 percent reliable in a real warehouse instead of the simulation's 94 percent, which would need human override often enough to erode most of its value. Nail the sanity check means noticing that "the model is impressive" and "the model is the best use of four weeks" got treated as the same claim. Direction is the same rule again: fix the sensor first, this quarter, and re-scope FlowScout once real warehouse WiFi data exists to price its actual reliability.

Swap the trigger and it still runs.
Speed: an interviewer caps you at sixty seconds. Skip straight to "same weeks, name what else they could build, price both, let the number pick," and stop.
Cost: no time to pull real CI logs before the meeting. Say so honestly, use a conservative estimate, and flag that the real number needs confirming before the call is final.
The model got better, for real: say a future version of the smell detector needs far less eval upkeep. Rerun the comparison, because the ongoing tax shrinking is exactly the kind of change that should flip a close call.

Where people run it wrong.
They treat "it's technically possible" as the whole approval bar, skipping the comparison against any real alternative entirely.
They price the AI feature's build cost only, and forget the ongoing inference and eval bill that a rule based fix would never carry.
They let which option demoed better decide, instead of which option's real numbers actually win.

How to use it live. The moment an interviewer describes a feasible AI feature, don't ask whether it works. Ask what else those same engineering weeks could have built, and whether anyone ever wrote that comparison down. That question buys real thinking time, and it's usually exactly where the honest answer is hiding.

Flashcards (tap any card to flip it)

1 · THE FRAMEWORK
What framework fits weighing a feasible AI feature against its real opportunity cost?
Tap to flip
ANSWER
BOUND: break it down, own the numbers, use a range, nail the sanity check, direction. It forces a written comparison against the real next-best use of the same time, instead of judging a feature on feasibility alone.
2 · THE PEOPLE
Who is this answer about?
Tap to flip
ANSWER
Marek Branwell, the PM deciding whether to greenlight Smell Certification at Codeloom, maker of PatchPilot. Odalys Kettering is the engineer who built the working prototype.
3 · THE HABIT
What habit does this answer exist to build?
Tap to flip
ANSWER
Write down the real next-best use of the same engineering time, in the same unit, before greenlighting any feasible AI feature.
4 · THE ANCHOR
What's the one concrete thing this answer says to actually do?
Tap to flip
ANSWER
Price both real options in the same unit, including the AI feature's ongoing inference and eval costs, and let the number that wins decide, not the option that demoed better.
5 · THE OLD DECISION
What old decision would this answer take back?
Tap to flip
ANSWER
Greenlighting the test-name-suggestion feature two quarters earlier on the strength of its demo, with no written comparison against any alternative. It made sense with an exciting prototype in the room. It didn't hold up once usage came in under 4 percent.
6 · THE NUMBER
Fill in the blank: Smell Certification totals about $___ in its first quarter, while the CI flake fix totals $___, once, and recovers roughly $37,000 in the same quarter.
Tap to flip
ANSWER
$38,700, versus $30,000. Same five weeks of build cost. The gap is entirely the smell feature's ongoing inference and eval tax.
7 · THE RISK, SURVIVED
What breaks if a team skips this comparison, and how does the anchor survive it?
Tap to flip
ANSWER
The team ends up optimizing for "can we build things" instead of "are we building the right things," the way the low-usage test-name feature shipped. Writing the real comparison down catches this before the weeks are spent, not after.
8 · CROSS PRODUCT TRANSFER
Section 4 runs BOUND again on a different product. Which one, and what's the equivalent comparison?
Tap to flip
ANSWER
Loadwell's warehouse routing platform, weighing FlowScout's real-time congestion prediction against fixing a known conveyor sensor. The equivalent comparison is the same shape: a feasible model feature against a known fix with an already-measured return.

Check yourself Score: 0 / 0

Multiple choice
1. Why does Smell Certification cost more than the CI flake fix over a full quarter, even though both take the same five weeks to build?
  • A. Odalys used more expensive engineers to build it.
  • B. It carries an ongoing inference and eval-upkeep cost the flake fix never does.
  • C. Codeloom's leadership demanded a bigger budget for AI features.
  • D. The prototype needed to be rebuilt from scratch.
Show hint
Look at the stacked-bar chart and the knowledge spark in "Let's learn."
Show answer
B. Inference run-rate and eval upkeep are recurring costs a fixed rule or infra fix simply doesn't carry once it's built.
True or false
2. True or false: Marek's conclusion means Smell Certification should never be built at all.
  • True
  • False
Show hint
Look at Stage 7 of the walkthrough and the direction step of the recap.
Show answer
False. It loses this specific quarter's five weeks to a specific known alternative. It moves to next quarter's list with its real cost already scoped, not to the trash.
Fill in the blank
3. Fill in the blank: Codeloom's own CI logs showed flaky test reruns were costing the team about ___ hours a week.
Show hint
Look at the story section, where Marek checks the CI dashboard.
Show answer
38 hours a week. A real, already-measured number, not an estimate invented to win the comparison.
Short answer, where it wouldn't matter
4. Name a feature at Codeloom that does NOT need this kind of opportunity-cost comparison, and say why not.
Show hint
Look at "what I would leave alone."
Show answer
Model answer: PatchPilot's core inline comment feature. It already has two years of usage data proving its return, so it doesn't need to be re-argued against a hypothetical alternative every time it comes up.
Short answer, apply it yourself
5. Think of a feature or project you've seen get approved mainly because a demo went well. What real alternative use of the same time or budget never got named out loud?
Show hint
Think about what else the same team, same weeks, could plausibly have built instead.
Show answer
Model answer: A retailer once greenlit an AI-generated product description tool after a strong demo, while a known checkout-error bug costing real weekly sales sat unfixed for another quarter, because nobody had priced the two against each other.
Short answer, work the number
6. If the CI flake fix's real recovered value turned out to be only $15,000 in the first quarter instead of $37,000, would the direction of this answer change?
Show hint
Compare $15,000 against Smell Certification's real $38,700 quarter-one cost.
Show answer
Model answer: Even at $15,000, the flake fix still costs less to build and carries no ongoing tax, so it likely still wins this specific quarter, though the case would be less lopsided and worth rechecking against Smell Certification's own upside if the estimate keeps moving.
Before you close the answer
Why this works
Tests whether you can separate "the model works" from "this is the best use of our time," and whether you'll actually price an AI feature's full, ongoing cost against a real alternative instead of judging it on the strength of a demo.
Follow-up traps
"Isn't this true of any engineering decision, not just AI?" Response: opportunity cost applies everywhere, but the AI feature specifically carries a recurring inference and eval bill a rule based alternative usually doesn't, which is what widens the real gap here.

"What if leadership just wants the flashier feature regardless of the numbers?" Response: bring the written comparison to that conversation directly, a real number is harder to overrule with enthusiasm alone than a verbal objection is.
If pressed
The $8,700 quarterly figure assumed the eval set only needed monthly refreshing. If real usage showed the model drifting faster than that, monthly refresh would need to become weekly, which is exactly the assumption the sensitivity chart flags as the biggest single swing on the estimate.
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