MSX internal report

MSX AI Burn Audit

Window: April 06, 2026 through April 12, 2026 UTC.

This deck compares OpenAI admin usage against MSX-side metering, then drills into user-level burn, funding coverage, and founders that continue spending after user activity stops.

OpenAI actual cost

$159.61

Admin API, project-scoped.

MSX metered provider cost

$80.35

From provider_usage_events.

Observed gap

$79.26

Actual OpenAI cost minus MSX provider ledger.

Burn after last user message

$45.17

86.6% of founder-attributed DB spend.

Emails are masked because a Cloudflare Pages URL is public unless access controls are added separately.

1. Reconciliation

OpenAI actual cost is roughly double our provider ledger

Daily cost, OpenAI vs MSX

OpenAI admin cost MSX provider ledger
2026-04-06
$60.46 / $24.21
2026-04-07
$12.45 / $7.64
2026-04-08
$16.41 / $12.42
2026-04-09
$13.01 / $8.19
2026-04-10
$32.68 / $13.70
2026-04-11
$6.27 / $6.24
2026-04-12
$18.33 / $7.95

Key callouts

  • OpenAI actual cost: $159.61; MSX metered provider cost: $80.35.
  • Observed gap: $79.26, with 262.47M tokens visible to OpenAI but not reflected in provider_usage_events.
  • This is too large to be rounding noise. The likely causes are a mix of stale local pricing and missing request capture on the MSX side.

OpenAI line items

gpt-5.4-2026-03-05, cached input
$35.74
gpt-5.4-2026-03-05, input
$31.34
gpt-5.4-2026-03-05, output
$21.28
gpt-5.4-mini-2026-03-17, cached input
$26.44
gpt-5.4-mini-2026-03-17, input
$25.34
gpt-5.4-mini-2026-03-17, output
$18.94
2. Model mix

The burn is concentrated in two GPT-5.4 model variants

OpenAI project key usage

Key nameKey IDRequestsInput tokensCached input
msx.devkey_IZ66a7qz…13,904543.93M496.58M

All observed admin-side usage in this window lands on the same OpenAI project key.

Model reconciliation

ModelOpenAI costMSX costGapMSX capture
gpt-5.4-2026-03-05$88.36$35.91$52.4640.6%
gpt-5.4-mini-2026-03-17$70.72$44.10$26.6262.4%
gpt-5-mini-2025-08-07$0.51$0.34$0.1766.2%
web search tool calls$0.01$0.00$0.010.0%
gpt-4o-mini-2024-07-18$0.00$0.00$0.0099.9%

`gpt-5.4-2026-03-05` is materially underpriced or undercaptured in MSX. `gpt-5.4-mini-2026-03-17` also shows a material capture gap.

3. Top users

Two users account for most of the metered spend

Top 2 user share

35.5%

148.24M of DB-metered tokens.

Users with any topup

1

23.0% of DB-metered provider cost.

Missing-agent spend

$28.19

59 agent IDs missing from agents.

Missing-auth-user spend

$4.76

35 user IDs missing from auth.users.

Top DB-metered burners

Masked userTokensProvider costDebitedTopups everFunding
benme…@gmail.com81.90M$18.52$27.78$30.00topup
marcb…@gmail.com66.35M$10.00$15.00$0.00starter
found…@example.com12.27M$8.70$13.05$0.00starter
found…@example.com10.28M$6.54$9.81$0.00starter
test-…@test.com.com29.13M$4.12$6.19$0.00starter
r43-p…@example.com10.69M$4.12$6.18$0.00starter
mikeg…@gmail.com5.47M$3.34$5.00$0.00internal
mikef…@gmail.com21.15M$3.18$4.76$0.00internal
marcb…@gmail.com3.14M$3.04$4.55$0.00internal
javi…@saleshackers.es7.05M$2.79$4.17$0.00starter
4. Funding coverage

Almost none of the burners actually topped up

Funding class by provider cost

Starter budget only
$40.30 across 22 users
Has any topup
$18.52 across 1 users
Internal credit only
$16.77 across 21 users
Unknown / no credit trail
$4.76 across 35 users
  • Only 1 user with burn in this window had any billing topup at all.
  • That topup-bearing user represents 23.0% of DB-metered provider cost.
  • The rest of the burn mostly drew from slot starter budget or internal credit, not purchased topups.

User-account classes

User classUsersTokensProvider cost
non test email22194.38M$47.93
example.com proof or disposable1848.48M$23.44
missing auth user3514.20M$4.76
proof or test named430.14M$4.21

This heuristic split is imperfect, but it shows a large share of spend tied to proof/disposable accounts or users missing from auth entirely.

5. Background founder spend

Active founders continue spending well after the last user message

Top founders by post-user-message burn

Masked userFounderTotal costPost-user costShareLagOffice
benme…@gmail.comaussie-yield-finder.msx.dev$18.52$14.7179.5%4.8dreachable
marcb…@gmail.comdeploy-ventures.msx.dev$10.00$9.9899.8%3.1dreachable
test-…@test.com.combrightpath-ventures.msx.dev$4.08$4.0498.9%1.3darchived
mikef…@gmail.comreplacement-and-reship-track.msx.dev$3.18$3.0696.3%0.9darchived
marcb…@gmail.combuy-now-or-wait-shopping-com-2.msx.dev$3.04$3.04100.0%no user messagestopped
mikeg…@gmail.comgentle-daily-accountability.msx.dev$3.34$2.7883.2%0.6darchived
marcb…@gmail.compurchase-compass.msx.dev$1.05$1.05100.0%no user messagearchived
marcb…@gmail.compurchase-timing-lab.msx.dev$0.88$0.88100.0%no user messagearchived

What we can say confidently

  • $45.17 of founder-attributed provider cost happened after the last recorded user message in the same founder.
  • I found no spend in this window after `agents.archived_at` and none after `founder_trial_agents.ended_at`.
  • The leak pattern is therefore “active founder keeps doing work after the user stops interacting”, not “archived founder keeps burning forever”.
6. Ben case

The reported cancellation issue is visible in live spend data

Usage after subscription cancellation

Masked userFounderCost after cancelTokens after cancelCanceled atLast usage
benme…@gmail.comaussie-yield-finder.msx.dev$8.5142.12MApr 11, 2026 05:29 UTCApr 12, 2026 23:59 UTC

Interpretation

  • Ben's founder continued to spend after the slot subscription reached `canceled` with `total_slots = 0` and `consumed_slots = 1`.
  • Observed post-cancel spend in this window: $8.51.
  • This does not prove the exact trigger path, but it does prove that cancellation state and founder spend were out of sync.
7. Data integrity

Deleted agents and missing auth users materially weaken attribution

Missing agent IDs

  • 59 distinct agent IDs in `provider_usage_events` no longer exist in `agents`.
  • Those rows account for $28.19 and 63.87M tokens in the same window.
Masked userMissing agentProvider costTokensLast usage
found…@example.com0eba4a29…$8.7012.27MApr 06, 2026 07:40 UTC
found…@example.com7e537454…$6.5410.28MApr 06, 2026 07:39 UTC
r43-p…@example.comf6af506e…$3.9810.60MApr 06, 2026 09:23 UTC
missing auth user68cc5240…$1.337.20MApr 07, 2026 05:49 UTC
clock…@example.comf75af710…$1.116.54MApr 07, 2026 05:48 UTC
missing auth userfbc518f6…$0.89576.3KApr 10, 2026 14:13 UTC
found…@example.com3cb13030…$0.882.37MApr 06, 2026 09:22 UTC
torni…@example.com1b644ee5…$0.721.90MApr 06, 2026 09:24 UTC

Missing auth users

  • 35 user IDs with spend are absent from `auth.users`.
  • That missing-auth cohort represents $4.76 of provider cost.
  • This makes “which customer spent this?” materially less reliable than it should be.

Ledger mix in this window

DirectionBucketReferenceEventsAmount
debitfounder_aiprovider_usage_event8,028$113.21
creditinternal_creditfounder_trial26$155.00
creditslot_starter_budgetbilling_purchase_grant13$195.00
debitproduct_opexruntime_capability_call6$0.06
creditslot_starter_budgetstripe_subscription_update2$30.00
creditbilling_topupbilling_purchase_grant1$15.00
8. Conclusions

What needs operator attention next

  1. Fix the cancellation-to-founder gating path first. Ben's founder is still the clearest real-customer example of spend continuing after cancellation state flipped.
  2. Repair the provider-cost model, especially for `gpt-5.4-2026-03-05`, before relying on MSX-side cost dashboards.
  3. Close the request-capture gap for `gpt-5.4-mini-2026-03-17`; OpenAI sees far more tokens than `provider_usage_events` records.
  4. Stop deleting or otherwise losing agent/user attribution rows if the usage ledger depends on them for later burn analysis.
  5. Instrument founder background work so we can distinguish real user-driven runs from orphan loops or periodic jobs without inference.

Method: OpenAI Admin Costs + Completions Usage APIs, plus live Supabase reads from `provider_usage_events`, `budget_ledger_events`, `agents`, `founder_trial_agents`, `agent_messages`, `billing_slot_subscriptions`, `user_capacity`, and `auth.users`.

1 / 8