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.
| Lever | Base | Optimistic | Pessimistic | Source |
|---|---|---|---|---|
| Demand vs. trailing run-rate | 0% | +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%/yr | System-derived level; inflation Default |
| DSO (collection lag) | 42.3 days | 37.3 days (โ5) | 48.6 days (+15%) | System-derived, anomalous invoices excluded |
| DPO (payment lag) | 60 days, all scenarios | Assumption โ open-A/P average age (142 days) judged unrealistic as forward policy | ||
| Interest rate on variable debt | 8.0% | โ100 bps | +200 bps | System check: only $10K LOC exists โ lever immaterial (ยฑ$200/yr); ignored in scenarios beyond base interest |
| Pipeline win rate | Not applicable โ zero open estimates | System check: 0 estimates with status 'A' (5 closed, 112 expired) | ||
| Seasonality | Monthly index from trailing 12 months, 50% damped (range 0.82โ1.20) | System-derived | ||
| One-time items (CapEx, raises, draws) | None modeled | User input pending | ||
| Minimum cash threshold | $200,000 | Default | ||
All levers overridable โ re-run the prompt with new values to regenerate.
| Metric | Base | Optimistic | Pessimistic |
|---|---|---|---|
| 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 threshold | 10 of 12 ๐ด | 0 โ | 11 of 12 (negative from Aug-26) ๐ด |
Dashed line = $200K minimum-cash threshold. Cash continuity (Beginning = prior Ending) verified programmatically in all three scenarios.
| 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.
transactionaccountingline where accttype='Income', posting only, credit-normal via SUM(-tal.amount).ABS().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).
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.
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).
-- 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.