For CTO · CFO · CIO

AI Build vs Buy Calculator.

Six weighted inputs, two scoring modes, live confidence meter, macro scenario stress-tests, side-by-side risk register, and sensitivity tornado. Inputs stay in your browser — no save, no send. Share via copy-link (state encoded in URL) or print to PDF for your committee.

Mode
Preset ✓ copied

Your inputs

Slide each one. Verdict + confidence update live. Defaults are mid-of-the-road.

60
50
40
55
35
$K
$K
Verdict
Confidence
Build
0
Buy
0

Score composition

How each dimension contributes to Build vs Buy.

Cost comparison (3-year)

Loaded build cost vs vendor cost over the 3-year window.

If you BUILD — risks to budget

If you BUY — risks to budget

Sensitivity tornado

Each row shows what happens to the Build − Buy score gap if you slide that input ±20 from its current value (±20% for costs). Bigger bar = more sensitive. Direction shows which side benefits.

Move favors BUILD Move favors BUY

The math, openly

Build score = (100 − capability) × 0.18 + sensitivity × 0.22 + capacity × 0.20 + (100 − urgency) × 0.10 + costScoreBuild

Buy score = capability × 0.20 + (100 − integration) × 0.18 + urgency × 0.18 + (100 − sensitivity) × 0.14 + (100 − capacity) × 0.10 + costScoreBuy

costDelta = clamp(((costBuild − costBuy) / max(costBuild, costBuy, 1)) × 100, −100, 100) — positive when build is more expensive.

Confidence = clamp(round((|build − buy| / 30) × 100), 5, 100) — proportional to the score gap.

Symmetric mode (default)costScoreBuild = −costDelta × 0.30 · costScoreBuy = +costDelta × 0.20 — higher build cost penalizes build AND rewards buy. The intuitive reading.
Literal modecostScoreBuild = +costDelta × 0.30 · costScoreBuy = −costDelta × 0.20 — the original Kinetic Gain formula preserved verbatim. Note that in literal mode, higher build cost rewards build — preserved for transparency and so the math is auditable against the published spec.

No proprietary "magic." If you disagree with a weight, slide the input to compensate. This is a starting point, not a final answer.