GameBooth — Financial Operating Model

Canonical source: model/ in the repo. Generated 2026-08-18 21:12 UTC. Aggregates and pseudonymous IDs only.

$1.52
contribution per review
33.33
coaches to break-even
no financing line
cumulative cash turns positive (18-mo horizon)

How this model changes

This page is generated — nothing on it is editable, and the retired Google Sheet is not the model anymore. Every number here derives from exactly one input surface: model/assumptions.yaml in the repo.

To change an assumption: edit assumptions.yaml → the regression tests in model/test_model.py run (13 fixtures pin the math itself; a wrong model that renders is worse than one that doesn't) → commit → CI re-renders and re-deploys this page. The change arrives with a diff, an author, and a timestamp — a model change is a code change, reviewable and revertable like any other.

Two kinds of values never need a hand edit: measured drivers overlay automatically from the weekly prod snapshot (ops/weekly/*.json) when their sample clears the n≥5 floor, and computed figures (everything not chip- tagged below) follow from the inputs. If a number on this page looks wrong, the fix is in the yaml or in model/model.py — never in this page.

Drivers & assumptions — the honesty column

InputValueBasisNote
starting_active_coaches1✓ actual
Danny
coach_monthly_churn0.05● guess insufficient (n=3)
parents_invited_per_coach_per_month8.00● guess insufficient (n=4)
invite_to_first_purchase_conversion0.35● guess insufficient (n=1)
parent_monthly_retention0.70● guess
Highest-leverage unknown. Enters as 1/(1-r).
reviews_per_active_parent_per_month1.17◐ measured (n=6)
price_per_review15.00◐ measured (n=7)
CHANGED FROM 20.00. Rationale recovered from the sheet's Drivers tab 2026-08-18: 'Derived from a $120/hr coach rate on a <=5 min clip.' Also matches the measured beta price exactly ($15.00, n=7, every real transaction; ops/weekly 2026-08-18 snapshot).
base_take_rate0.20◆ decision
premium_take_rate0.28◆ decision
free_reviews_per_coach_month3◆ decision
Free at the BOTTOM of each month, resets monthly. NOT a cap.
matched_share0.00✓ actual
No platform_matched transactions exist yet. The projection uses the RAMP below instead — a plan, not an estimate (sheet Model row 22).
coach_reference_hourly_rate120▢ canvas
minutes_per_async_clip5▢ canvas
minutes_per_sync_session60▢ canvas
stripe_pct_of_gmv0.03▤ vendor
stripe_fixed_per_txn0.30▤ vendor
infra_cost_per_review0.75● guess
coach_onboarding_cost40● guess
fixed_monthly_costs250● guess
one_time_legal6000● guess
legal_lands_month2◆ decision

Measured overlays this build:

Changed since previous snapshot:

Sensitivity — plausible ranges (never ±% flexing)

Reviews / active parent / month$5.14$40.49Price per review (USD)$1.19$26.44Parent monthly retention$0.00$24.00Invites / coach / month−$0.75$21.94Invite → first purchase$0.43$16.93Base take rate$1.58$13.42

Swing of steady-state contribution per coach across each driver's configured plausible range (assumptions.yaml). Sorted by swing, descending. The dot on each bar marks the current base-case value.

What-if — steady state, live

Sliders explore; they change nothing. A real change is a commit to assumptions.yaml. Held fixed while you slide:

free_reviews_per_coach_month 3 ◆ decisionstripe_pct_of_gmv 0.03 ▤ vendorstripe_fixed_per_txn 0.30 ▤ vendorinfra_cost_per_review 0.75 ● guessfixed_monthly_costs 250 ● guess

Driver trends — weekly snapshots

Reviews / active parent / month
1.17 (n=6)
Invites / coach / month
1.50 (n=4)
Invite → first purchase
6 (n=1)
Parent monthly retention
not tracked yet
Coach monthly churn
0 (n=3)
Price per review (USD)
15 (n=7)

One small multiple per driver — different scales never share an axis. Series are sparse: the weekly export began 2026-08-18.

18-month projection

Every column below is COMPUTED from these assumptions (hover a chip for its note; change any of them via assumptions.yaml, never here):

parent_monthly_retention 0.70 ● guessparents_invited_per_coach_per_month 8.00 ● guessinvite_to_first_purchase_conversion 0.35 ● guessreviews_per_active_parent_per_month 1.17 ◐ measured n=6coach_monthly_churn 0.05 ● guessprice_per_review 15.00 ◐ measured n=7base_take_rate 0.20 ◆ decisionpremium_take_rate 0.28 ◆ decisionfree_reviews_per_coach_month 3 ◆ decisionstripe_pct_of_gmv 0.03 ▤ vendorstripe_fixed_per_txn 0.30 ▤ vendorinfra_cost_per_review 0.75 ● guessfixed_monthly_costs 250 ● guesscoach_onboarding_cost 40 ● guessone_time_legal 6000 ● guesslegal_lands_month 2 ◆ decision

Plus two plans (decisions, not estimates — projection: in the yaml): coaches added per month (shown as +n in the Coaches column) and the platform-matched share ramp (0 → 18% from month 10, which is what lifts the blended take rate late in the table).

CONVENTION: reviews are driven off ending parents — optimistic in a growing book. Cumulative cash from a zero starting balance; one-time legal lands month 2.

MoCoachesParentsReviewsBillable RevenueAbsorbedFixed Onboard LegalNetCash
10.952.663.100.25$0.76$4.61$250.00−$253.85−$253.85
20.904.395.122.41$7.24$7.61$250.00$6,000.00−$6,250.36−$6,504.21
31.86 +18.279.654.08$12.25$14.34$250.00$40.00−$292.09−$6,796.30
42.76 +113.5315.797.50$22.49$23.45$250.00$40.00−$290.96−$7,087.26
53.63 +119.6322.9012.02$36.07$34.01$250.00$40.00−$287.94−$7,375.19
64.44 +126.1830.5617.22$51.67$45.38$250.00$40.00−$283.71−$7,658.91
76.22 +235.7541.7223.05$69.16$61.96$250.00$80.00−$322.79−$7,981.70
87.91 +247.1855.0631.32$93.97$81.76$250.00$80.00−$317.79−$8,299.49
99.52 +259.6769.6441.09$123.26$103.41$250.00$80.00−$310.15−$8,609.64
1011.04 +272.6884.8251.70$156.26$125.96$250.00$80.00−$299.70−$8,909.33
1112.49 +285.84100.1862.72$190.97$148.77$250.00$80.00−$287.80−$9,197.13
1214.86 +3101.71118.6974.10$227.31$176.26$250.00$120.00−$318.95−$9,516.08
1317.12 +3119.13139.0387.67$270.89$206.46$250.00$120.00−$305.57−$9,821.65
1419.26 +3137.33160.27102.48$318.96$238.00$250.00$120.00−$289.04−$10,110.69
1521.30 +3155.78181.79117.89$369.58$269.96$250.00$120.00−$270.38−$10,381.07
1623.24 +3174.11203.18133.47$421.44$301.73$250.00$120.00−$250.28−$10,631.36
1725.07 +3192.08224.16148.94$473.62$332.88$250.00$120.00−$229.26−$10,860.61
1826.82 +3209.56244.55164.09$525.50$363.16$250.00$120.00−$207.66−$11,068.28

Unit economics — per review

price_per_review 15.00 ◐ measured n=7base_take_rate 0.20 ◆ decisionstripe_pct_of_gmv 0.03 ▤ vendorstripe_fixed_per_txn 0.30 ▤ vendorinfra_cost_per_review 0.75 ● guess
$3.00Platform take$0.73Stripe absorbed$0.75Infra$1.52Contribution

The free allowance is NOT free to the platform: allowance reviews earn zero take but still incur the Stripe + infra legs above. Coach pitch: async net $144.00/effective-hour = 1.20× sync net; throughput 12.00× — publish the net multiple only.

Raise gates

GateThresholdBase caseStatus
active_coaches54✗ BASE CASE FAILS
coaches_retained_90d3◌ no data yet
total_paying_parents50◌ no data yet
reviews_per_active_parent_per_month2.501.17✗ BASE CASE FAILS
month3_parent_retention0.40◌ no data yet
monthly_gmv3000◌ no data yet
platform_matched_transactions10✗ BASE CASE FAILS
consecutive_months_positive_contribution2◌ no data yet
legal_posture_counsel_signoff1◌ no data yet