๐Ÿ”ฎ Three-Scenario Financial Forecast

12 months: July 2026 โ€“ June 2027 ยท Built from live NetSuite data on 2026-07-24 ยท Minimum-cash threshold: $200,000
1 ยท Executive Summary
๐Ÿ”ด Human review required. The base case breaches the $200K minimum-cash threshold in 10 of 12 months and ends the year at โˆ’$88K. The pessimistic case goes cash-negative from August 2026 onward, reaching โˆ’$902K. Only the optimistic case stays above threshold all year. Trailing costs have outpaced revenue since March 2026 โ€” the business is currently running at roughly breakeven-to-negative operating income.
Base โ€” FY Revenue / Op Income / Min Cash
$15.74M / โˆ’$272K / โˆ’$88K ๐Ÿ”ด
Optimistic โ€” FY Revenue / OI / Min Cash
$17.00M / +$310K / $212K โœ…
Pessimistic โ€” FY Revenue / OI / Min Cash
$14.16M / โˆ’$1.13M / โˆ’$902K ๐Ÿ”ด

These are conditional paths, not predictions โ€” each is the mechanical consequence of the labeled assumptions in Section 2 applied to system-derived baselines. No probability is assigned to any scenario.

Key swing factor: demand vs. run-rate. A โˆ’10% demand shift moves full-year operating income by โˆ’$515K โ€” more than the variable-cost-ratio, wage, DSO, and interest levers combined (Section 5). Secondary: with fixed costs of ~$445K/month against a ~33% gross margin, monthly breakeven revenue is โ‰ˆ$1.36M โ€” right at the current run-rate, which is why the base case hovers near zero OI.

2 ยท Assumptions โ€” Every Lever, Every Scenario
LeverBaseOptimisticPessimisticSource
Demand vs. trailing run-rate0%+8%โˆ’10%Default
Variable-cost ratio (of revenue)67.3%66.3% (โˆ’1.0 pt)69.3% (+2.0 pts)System-derived base; deltas Default
Fixed opex$444.7K/mo +3%/yr+3%/yr+5%/yrSystem-derived level; inflation Default
DSO (collection lag)42.3 days37.3 days (โˆ’5)48.6 days (+15%)System-derived, anomalous invoices excluded
DPO (payment lag)60 days, all scenariosAssumption โ€” open-A/P average age (142 days) judged unrealistic as forward policy
Interest rate on variable debt8.0%โˆ’100 bps+200 bpsSystem check: only $10K LOC exists โ†’ lever immaterial (ยฑ$200/yr); ignored in scenarios beyond base interest
Pipeline win rateNot applicable โ€” zero open estimatesSystem check: 0 estimates with status 'A' (5 closed, 112 expired)
SeasonalityMonthly index from trailing 12 months, 50% damped (range 0.82โ€“1.20)System-derived
One-time items (CapEx, raises, draws)None modeledUser input pending
Minimum cash threshold$200,000Default

All levers overridable โ€” re-run the prompt with new values to regenerate.

3 ยท Scenario Comparison
MetricBaseOptimisticPessimistic
FY Revenue (12 mo)$15,737,112$16,996,081$14,163,400
Month-12 revenue run-rate (annualized)$14,661,024$15,833,906$13,194,921
Gross Margin %32.7%33.7%30.7%
FY Operating Incomeโˆ’$271,692+$310,361โˆ’$1,127,201
Ending Cash (Jun 2027)โˆ’$88,267 ๐Ÿ”ด$513,213โˆ’$901,742 ๐Ÿ”ด
Minimum cash (month)โˆ’$88,267 (Jun-27) ๐Ÿ”ด$212,406 (Sep-26)โˆ’$901,742 (Jun-27) ๐Ÿ”ด
Months below $200K threshold10 of 12 ๐Ÿ”ด0 โœ…11 of 12 (negative from Aug-26) ๐Ÿ”ด
4 ยท Fan Charts โ€” Monthly Revenue & Ending Cash

Dashed line = $200K minimum-cash threshold. Cash continuity (Beginning = prior Ending) verified programmatically in all three scenarios.

5 ยท Swing Analysis โ€” One-at-a-Time Sensitivity (vs. Base)
Single lever moved (pessimistic direction)ฮ” FY Operating Incomeฮ” Minimum Cash
Demand โˆ’10% โ† biggest swingโˆ’$515,115โˆ’$503,407
Variable-cost ratio +2 ptsโˆ’$314,742โˆ’$269,405
Wage inflation 5% vs. 3% (fixed opex)โˆ’$57,127โˆ’$40,320
DSO +15% (timing only)$0โˆ’$49,687
Interest +200 bps on $10K LOCโˆ’$200โˆ’$200 (immaterial)

Demand is the dominant lever by ~1.6ร— over cost ratio. The interest lever is confirmed immaterial: the only debt instrument on the books is a $10,000 Line of Credit Payable.

6 ยท Data Lineage Appendix
Anchors (queried live 2026-07-24)
  • Trailing-12 revenue: $15.74M (avg $1.311M/mo), from transactionaccountingline where accttype='Income', posting only, credit-normal via SUM(-tal.amount).
  • โš ๏ธ March 2026 normalized: raw March revenue was $11.61M. Two invoices โ€” INV1437 ($6.98M) and INV1436 ($2.79M), both still 100% unpaid โ€” and inventory adjustment IA108 (COGS swing of ~$20.2M net) were excluded from run-rate, cost, and A/R baselines as data anomalies. Recommend investigating these three transactions. Normalized March: revenue $1.84M, total cost $2.27M.
  • Backlog: $3,248,009 across 13,525 open SOs (status B: $3.14M / 13,325 orders; status F: $106K / 200). Line amounts wrapped in ABS().
  • Pipeline: $0 โ€” zero open estimates (status 'A'). No win-rate lever applied.
  • Starting cash: $921,646 = sum of Bank-type accounts excluding "Cash : Vietnam Bank" (โˆ’$8.72M, judged a data anomaly; main account "US Checking" holds $850K). Recommend review.
  • Debt: Line of Credit Payable $10,000 is the only borrowings-like liability. No long-term debt accounts with balances.
Base-case bridge (backlog + run-rate reconciliation)

First-3-month base revenue = $3.744M; open backlog of $3.248M covers 86.8% of it โ€” i.e., the near-term base case is essentially "ship the backlog plus a thin layer of book-and-bill at trailing run-rate." Months 4โ€“12 are seasonal run-rate only (no pipeline exists to convert).

Fixed/variable derivation

Method: OLS regression of monthly total cost (COGS + Expense + OthExpense) against monthly revenue over the normalized trailing 12 months โ†’ variable ratio 0.673, fixed $444,709/mo, Rยฒ = 0.24. The low Rยฒ reflects a structural shift (opex roughly tripled from ~$250K/mo to ~$1.3M/mo starting March 2026); the regression was retained because the account-class fallback (COGS-only variable = 58%) understates variability. Treat the split as approximate.

Cash translation

Collections = revenue lagged by scenario DSO (base 42.3 days = open A/R ex-anomalies $1.82M รท daily TTM revenue). Payments = total cost lagged 60 days (assumed DPO). Interest on $10K LOC at 8%. Beginning cash each month = prior month ending (verified).

Queries used
-- Trailing 24-month revenue
SELECT TO_CHAR(t.trandate,'YYYY-MM'), ROUND(SUM(-tal.amount),2)
FROM transactionaccountingline tal
JOIN transaction t ON tal.transaction=t.id JOIN account a ON tal.account=a.id
WHERE t.posting='T' AND a.accttype='Income'
  AND t.trandate >= ADD_MONTHS(TRUNC(SYSDATE,'MM'),-24) GROUP BY ... ;

-- Cost structure: same, accttype IN ('COGS','Expense','OthExpense'), SUM(tal.amount), 12 mo
-- Backlog: transaction t JOIN transactionline tl (mainline='F'),
--   type='SalesOrd' AND status IN ('A','B','E','F'), SUM(ABS(tl.netamount))
-- Pipeline: type='Estimate' AND status='A' โ†’ 0 rows
-- Cash: accttype='Bank' GROUP BY account (Vietnam Bank excluded)
-- A/R: type='CustInvc' AND status='A' AND foreignamountunpaid>0 (INV1436/37 excluded)
-- Debt: accttype IN ('LongTermLiab','OthCurrLiab') โ†’ only $10K LOC

Generated by Sonar AI ยท Three-Scenario Financial Forecast ยท Scenarios are assumption-conditioned paths, not predictions. All figures in USD (base currency assumed). Report user: Burt Brocus.