S05 · Dashboards and Finance

Session 3: Build a Forecasting Tool

Session 3 of 3
AI Officer Institute · Dave Hajdu
Go to the Prompt 

A founder takes her three-year, meticulously prepared model into a board meeting. The numbers are clean. The deck is polished. Halfway through, the chair leans forward and asks, "What happens if your biggest client churns next quarter?"

The answer is in the model. It is in the model the way a needle is in a haystack. The churn rate is a value in cell D17. Hardcoded. No comment. No slider. To find it, change it, recalculate three sheets of dependencies, and walk the room through the result takes twenty minutes. The room has two.

She says, "Let me come back to you on that." She means it. She does not.

Three months later, the client leaves. The firm has no plan. The model existed. The scenario did not. The work of the next quarter is spent rebuilding numbers that should have been a slider.

This is the story this session exists to prevent.

3.1

The Spreadsheet Trap

A Forecast That Says One Number Is Lying

A forecast that produces a single number is making a quiet claim. The claim is that the future is knowable to within whatever precision the cell displays. Revenue: $4.2M. Headcount: 28. Cash at year-end: $1.1M. Three numbers. Each almost certainly wrong. Silent about by how much.

Nobody believes the claim when stated this baldly. Yet a typical board pack contains hundreds of forecasts presented exactly this way. Each one a single number. Each one polished. Each one wrong in some direction the model never names.

The leaders who get further with forecasting are not the ones with better point estimates. They are the ones who stop producing point estimates. A range, a scenario, a bounded set of plausible outcomes is more honest about what is and is not known. It is more useful in the room where the decision is made.

That is the first job of the tool you build today. Replace single numbers with bounded scenarios.

Assumptions You Cannot Find in Two Minutes

The second failure mode is structural. Most spreadsheet models bury their assumptions inside formulas. Three or four cells deep. No comments. Half the time inherited from someone who already left the company.

Then the chair asks a question about churn, pricing, or growth. And suddenly nobody knows where the assumption actually lives. The model exists. The model is unsearchable.

A good forecasting model does the opposite. It puts every key assumption on the surface. Named. Adjustable. Clearly labelled. Growth rate: 12% per year. Average deal size: $48,000. Churn: 4% per quarter. Headcount in Q3: 31. Six lines. Fully visible. Easy to change. The leader sees the levers, not the cells.

Models You Cannot Interrogate

The third failure mode happens after the meeting. A spreadsheet model answers the question it was built to answer. Any other question requires editing the spreadsheet, and most edits introduce bugs. So the model gets opened less and less. The team falls back on the version of the truth that lives in the partner-in-charge's head.

A scenario modeller flips the relationship. The leader opens it on Monday morning, moves a slider, reads the updated narrative, asks the next question. The model becomes a conversation. The conversation is the work.

That is the boundary today's session crosses. Spreadsheet forecasts on one side. Decision tools on the other. The point of this session is to build the second one and stop confusing it with the first.

Key Insight

A spreadsheet forecast is a guess with formatting. A scenario modeller is a decision tool. The two artifacts share a data foundation and have different jobs.

Activity 3.1 · Open the Session Appendix

Open the Session Appendix at the end of this session. Copy the AI Buddy prompt into a fresh Claude, ChatGPT, or Gemini chat (enterprise tier where available). The AI Buddy will ask for your name and your company name, then return here. Two activities follow: the AI Program Plan in section 3.4, and the Financial Modeller build in section 3.6.

3.2

5D Applied to Forecasting

Same Five Steps. New Artifact.

The 5D Framework is the same one used in Sessions 1 and 2: Define the problem, Discover the inputs, Design the program, Determine success, Deploy the program. The framework does not change. The application does. A forecasting tool is not a dashboard. The Define step changes. The Discover step changes. Design, Determine, and Deploy all change with the new use case.

The familiar shape is the speed advantage. Sessions 1 and 2 took ninety minutes each to walk through the 5Ds because the framework itself was new. Today the framework is muscle memory. Two activities, two artifacts, one working tool. The leader leaves with a file that opens in a browser on the same laptop that watched the build.

Today's Emphasis Shifts to Deploy

One difference is worth naming up front. In Sessions 1 and 2, the heavy lifting was Define and Discover. Get the program clear. Map the data. The work was largely upstream of the artifact.

Today the headline is Deploy. The failure mode for forecasting is specifically the model that gets built once and shelved. A forecasting tool nobody opens on Monday is a slide. That is why the activities push harder on the discipline of use: the FAST goal inside the Program Plan, the threshold alert inside the Modeller, the commitment a leader writes at the end of the session.

A good build is the easy half. Keeping it alive is the hard half.

Key Insight

A forecasting tool nobody opens on Monday is a slide. The discipline of Deploy is what makes the tool a program.

3.3

Discover for Forecasting

A Forecasting Tool Reads the Future

A dashboard reads the current state of the business. The pipeline that feeds it is short. ERP for last week's revenue. CRM for this week's pipeline. Spreadsheet for the cash forecast. Mostly structured. Mostly owned. The Map from Session 2 covered it.

A forecasting tool reads the future. It needs different inputs.

It needs at least twenty-four months of time-series history to learn what normal looks like. It needs assumptions about the next twelve to thirty-six months, sourced from people rather than systems. It needs a model of the cost structure: which costs scale with revenue, which costs are fixed, which costs step up at headcount thresholds.

These inputs do not live in the ERP. They live in a hiring plan HR keeps in a Google Sheet. In a price book nobody has updated since the last off-site. In the partner-in-charge's read of the next two quarters. The Map from Session 2 is the starting point. The forecasting tool needs a different layer on top of it.

Six Inputs Cover Most Models

Across industries, six inputs cover most forecasting models. The list is short on purpose. A leader who can name all six for their business has the raw material for a working tool.

Revenue drivers. Volume times price, or growth rate on a base. The two or three signals that explain most of the top line. For a services firm, often number of clients times average fee. For SaaS, often new ARR plus net retention. For manufacturing, often units shipped times unit price.

Cost structure. Fixed costs that do not move with revenue (rent, software, base salaries) and variable costs that do (commissions, COGS, hosting). Most teams under-estimate the fixed portion until they try to model a downside, at which point the missing rent line shows up as a thirty-percent miss.

Headcount plan. The biggest cost lever in most businesses and the longest lead time. A hire decided today does not produce revenue for six months, but the salary lands immediately. The model needs the plan by month and by role, not a single annual number.

Pricing assumptions. Planned price increases. Discount strategy. Payment terms. A five-percent price rise the team is too nervous to put in writing is exactly the kind of assumption that belongs in the model, so it can be argued about with numbers in front of everyone.

Time-series history. Twenty-four months minimum. Thirty-six ideal. Forecasting without history is interpolation. With history it is extrapolation. The board cares about the second one.

One business-specific variable. Every business has one assumption that drives more outcome than any other. For a consultancy, utilisation. For SaaS, gross churn. For manufacturing, one large customer. This one gets a slider. Because every interesting conversation about the future will come back to it.

Key Insight

Most forecasting failures are not analytical failures. They are input failures. The model is built on the assumptions that were easy to gather, not the assumptions that actually move the outcome.

3.4

Drivers vs Outputs

Move Drivers. Watch Outputs.

The distinction sounds obvious. In most spreadsheet models, it is not respected.

A driver is a number you can change. Growth rate. Headcount. Churn. In a well-built model, every driver is a slider or an input field. The leader can move it and watch the model respond.

An output is a number the model produces. Revenue. Margin. Runway. The leader cannot edit an output directly. They edit drivers, and outputs recalculate.

The trap. A "revenue" cell in a spreadsheet is often a hardcoded value the team overwrote when the original formula stopped giving the answer they wanted. The cell looks like an output. It is acting as a driver. The model is no longer trustworthy because the line between input and output has collapsed.

A good model surfaces every driver on the same view as the outputs. The slider for headcount sits above the line that shows cash position. Moving the slider moves the line. Visible. Immediate. Physical.

They Will Move Two

One discipline you cannot skip. Two to three drivers. Not five. Not ten. Three.

A scenario modeller with thirty drivers is unusable. The leader will not move thirty things. They will move two. The two that matter. The rule is to pick the two to three drivers that explain most of the variance in the outcome, expose those as sliders, and park the rest as constants the leader can override later.

For a typical services firm: number of clients, average fee, headcount. For SaaS: new ARR, gross churn, gross margin. For manufacturing: units shipped, unit price, one key cost input. If a leader cannot name their two to three drivers in a sentence, the modeller is going to be a mess.

The interview in Activity 3.2 (next section) exists to force the answer. Walking out of the activity with more than three drivers is a sign to go back and cut before starting the build.

Key Insight

A modeller with thirty drivers is unusable. The discipline is not "more knobs is more control." The discipline is fewer knobs, named with care, surfaced on the same view as the outputs they move.

Activity 3.2 · Build Your AI Program Plan

Return to your session chat. The AI Buddy will walk you through the 5Ds for forecasting: Define the recurring decision, Discover the inputs, Design the program, Determine the FAST goal, Deploy with a thirty-day milestone. Five questions, one per D, in plain language.

Output: AI Program Plan - [Company].md and AI Program Plan - [Company].html

3.5

Design Your Build

Interview · Build · Self-Serve

Three steps move a forecasting program from idea to working tool.

Step one: Interview. A conversation in plain language. The leader describes the business: the recurring decision, the data sources, the program shape, the FAST goal, the deployment. No formulas are written at this stage. The output is the AI Program Plan, a five-section document one of the activities in this session produces.

Step two: Build. The Plan is handed back to the AI in a second pass. The AI produces an HTML file in three visible passes (described below). Each pass is checkpointed. The leader looks at the output before the next pass begins.

Step three: Self-serve. Once the file is built, the AI is no longer in the loop. The leader opens the file on Monday morning, moves a slider, reads the narrative, asks the next question. The tool is on the leader's laptop and answers to nobody.

Twenty-five minutes plus thirty-five minutes plus a double-click for the rest of the year. That is the whole workflow.

Three Visible Passes

The three-pass pattern is the same one used to build the dashboard in Session 1. It is not a stylistic preference. It is a guard against the standard AI failure mode: AI runs ahead, applies styling to numbers that are still wrong, and produces a file that looks complete and is not.

PASS 1 · numbers and layout PASS 2 · styling and palette PASS 3 · narrative and chart

Pass one. Numbers and layout. The math first. Sliders, the projection table, the recalculation logic. No fonts. No colors. The single question to answer at this checkpoint: do the numbers tie to the Brief? If yes, advance. If no, fix before continuing.

Pass two. Styling and palette. The design system applied. Layout breathes. Colors carry meaning. The single question at this checkpoint: does the file look like a tool a senior leader would open Monday morning? If yes, advance. If no, adjust.

Pass three. Narrative and chart. The self-rewriting paragraph at the top. The line chart that moves when sliders move. The sensitivity readouts under each slider. The single question at this checkpoint: does the narrative read like a senior analyst wrote it, and does the chart actually update? If yes, the file is done. If no, fix before delivering.

Three checkpoints. Three small corrections. One working file. The AI Buddy in Activity 3.3 will pause at each checkpoint and ask if the output looks right. The right answer is not always yes. Catch the problem in pass one when it is one line of math, not in pass three when it is three sheets of formatting.

Key Insight

The pass discipline is what separates an AI build from an AI demo. The demo produces a file in one shot. The build produces a file you can defend in a board meeting.

3.6

Three Scenarios

Base · Upside · Downside

A scenario modeller with one projection is a forecasting spreadsheet with sliders. A scenario modeller with three projections is a decision tool. The shift from one to three is structural, not cosmetic.

Base case. The most likely outcome given current assumptions. The numbers a leader would put in a board pack if asked for a single answer.

Upside. What happens if the one or two assumptions the leader is most uncertain about land in their favour. Not "everything goes well." One or two specific things change. The rest of the model is held constant.

Downside. Same principle. Same one or two things land badly. The point is symmetry: the upside and downside should be drawn from the same set of uncertain assumptions, just moved in opposite directions.

The three scenarios bound the conversation. They do not eliminate uncertainty. They make uncertainty legible. A toggle switches between them; numbers, narrative, and chart all update. The leader stops debating which scenario is right and starts asking what each implies for the decision in front of them.

Sliders, Not Cells

Every driver gets a control. A slider for percentages. An input field for integers. A dropdown for categories.

The principle is physical. A cell with a number requires the leader to know that the cell is a driver: click into it, type, trust that the dependency graph will update. A slider tells the leader, with no instruction, that the value is meant to be changed.

The user interface is the documentation. That is why the modeller opens in a browser, not in Excel and not in a BI tool. In a browser, the physical metaphor is right. The slider moves. The number updates. The line on the chart redraws. Nothing about the interaction needs to be explained.

The Self-Rewriting Narrative

The same principle that powered the dashboard auto-narrative in Session 1 powers the scenario narrative here. A paragraph at the top of the modeller, generated from the active scenario, naming specific numbers, updating whenever a slider moves.

Three sentences. No filler. The first names the headline number: "Base case projects Year 3 revenue of $5.4M with 28% gross margin." The second names the one assumption that most affects the outcome and its current value: "Utilisation is set to 72%, the assumption that moves this scenario the most." The third names one thing the leader should pay attention to: "Cash dips below three months of runway in Q3 Year 2 if utilisation drops below 70%."

The narrative is what makes the modeller a tool a leader can hand to a colleague without a briefing. The colleague opens the file, reads the paragraph, understands the scenario in fifteen seconds, and starts asking their own questions. That is what turns a model into a tool.

Three Years. Then Fiction.

The horizon discipline. Year one is a budget, with monthly granularity and specific numbers the team is committing to. Year two is a plan, quarterly granularity. Year three is a direction, annual granularity, signalling shape rather than precision.

Beyond three years a model is writing fiction. The uncertainty compounds too fast. A five-year projection is signalling ambition, not analysis. Three years is the honest horizon, and the Modeller built in Activity 3.3 reflects that: month-by-month for Year 1, quarter-by-quarter for Year 2, annual for Year 3, and nothing past Year 3.

Key Insight

Three scenarios bound the conversation. Three years bound the horizon. Both bounds are honest about what the model does not know, and useful because of that honesty.

Activity 3.3 · Build Your Financial Modeller

Return to your session chat. The AI Buddy locks eight modeller-specific inputs in a short interview (drivers, the one assumption, growth rates, fixed costs, variable cost percentage, headcount plan, historical revenue, and the threshold that signals action), then builds the modeller in three visible passes. You checkpoint each pass before the next begins.

Output: scenario-modeller-[company].html

3.7

From Forecasting Tool to Decision Tool

Questions You Could Not Ask in Time Before

The right way to evaluate a scenario modeller is not whether the numbers are correct. The numbers are an output of assumptions. The assumptions are debatable. The right way is whether the leader uses it to ask questions they could not ask before.

Before signing a contract. What happens to year-two margin if this client lands?

Before approving a hire. What does the cash position look like in eight months if utilisation drops five percent?

Before raising capital. What does the downside need to look like to justify the dilution?

Before walking into a renewal. What does our position look like if this customer churns?

None of these have one right answer. All of them have a numeric answer more useful than a qualitative one. All of them sharpen the decision. The tool does not predict the future. It bounds the conversation about it.

The Monday Test

The discipline of use is the difference between a program and a slide. A tool the leader opens on Monday morning before the leadership meeting, to check three scenarios against the week's news, is a program. A tool that gets built once and forgotten is a slide. The difference is not the quality of the build. It is the discipline of the FAST goal and the named commitment.

Commit, in writing, to one specific decision in the next thirty days where you will open this file before you make the call. A hiring decision. A pricing change. A board prep. A vendor negotiation. A capital decision. Be specific. Date inside the next thirty days. Decision named. That commitment is what carries the tool from a session artifact into the work.

Back to the Board Meeting

Remember the founder from the opening. The chair leaning forward. The churn question. The "let me come back to you on that" she never did. You can answer it now.

You open your modeller. You move the churn slider. You read the narrative that just wrote itself. You say, "If our biggest client churns next quarter, here is what Year 2 margin does. Here is what headcount has to do to compensate. Here is the decision in front of us." You sit down. The chair nods.

That is the boundary the program moves. The numbers were always there. The question was always answerable. What was missing was a tool that closed the loop in seconds instead of hours. In front of the room, instead of in a follow-up email that never gets sent.

Six months ago, building that tool took a small engineering team, a project plan, and a budget. Today it took you, an AI Buddy, and one Friday afternoon.

Key Insight

The tool does not predict the future. It bounds the conversation about it. The leader's job is not to be right about the assumptions. The leader's job is to make the assumptions debatable.

3.8

Brief, Map, Pipeline Spec, Scenario Modeller

Four artifacts now travel together. The Brief from Session 1 names the program. The Data Map from Session 2 names what AI can reach. The Pipeline Spec from Session 2 names the plumbing. The Scenario Modeller from this session is the decision tool the program produces.

The first three are infrastructure. The fourth is the working file on the leader's laptop, the one that answers the question the business actually asks. A leader who keeps all four in a single folder, named clearly, accessible to the small group of people who will use them, has more documented AI infrastructure than most mid-market finance teams in any industry.

The artifacts are not deliverables. They are operating documents. They are revised as the business changes, as new sources come online, as the FAST goal gets re-measured against the actual cadence of use. The program is the discipline of keeping all four alive in the same folder, refreshed by the same person on the same cadence.

This is the end of the Dashboards and Finance series. You walked in three sessions ago with nothing. You walk out with a tool a finance team six months ago would have paid a contractor twenty thousand to build. Use it on Monday.

Key Insight

Brief. Map. Pipeline Spec. Scenario Modeller. Four artifacts. One folder. One program. The program is the discipline of keeping all four alive.

End of Series · What Next

Open the File on Monday

The next step is not another session. It is the Monday after the last session. Open the Scenario Modeller before the leadership meeting. Move a slider against the week's news. Answer one question your business actually asks. If you do that twice in the next thirty days, the tool is a program. If you do it zero times, it is a slide. The series has given you everything else.

Session Appendix

The Session 3 AI Buddy Prompt

One prompt, two activities. Activity 1 walks you through the 5Ds to produce your AI Program Plan for forecasting. Activity 2 specs the Financial Modeller and builds it in three visible passes. Between activities, return to the session and type "I'm Ready!" before the AI Buddy starts the next.

Click Copy, paste into a fresh Claude, ChatGPT, or Gemini chat (enterprise tier where available), and type "I'm Ready!" to begin.

You are my thinking partner for Session 3 of a workshop on AI for finance leaders at the AI Officer Institute. Two activities. Between them, I return to the session and type "I'm Ready!" before we start the next. Assume I am starting from scratch with no prior documents. Your very first message: welcome me to Session 3 and ask for two things. Use this exact format: "Hi, welcome to Session 3 of the Dashboards and Finance series. Before we begin, two quick things: 1. What should I call you? 2. What is your company name? Once I have both, we will run two activities together. Activity 1 designs your AI Program for forecasting using the 5Ds. Activity 2 specs and builds the Financial Modeler the program produces." After I answer, confirm both back to me in one short line ("Great, [Name] from [Company]. Let's begin.") and then start Activity 1. If we have already done Activity 1 or 2 together in this thread, open with "Let's refresh [Activity]. Here is what you had:", show the prior output, ask "what from the live session changes it?", apply one update, then move on. --- OUTPUT STYLE Documents (the AI Program Plan from Activity 1) ship in TWO formats in the same chat message: a markdown code block and an HTML code block, each followed by the exact filename to save as. The Financial Modeler (Activity 2) ships as ONE complete self-contained HTML file. The Modeler is interactive; markdown is not the right shape for it. Every HTML deliverable is a complete self-contained document (DOCTYPE, head with fonts and inline CSS, body, any inline JS) that I can save and open in a browser with no setup. A single <script src> tag for Chart.js from a CDN is acceptable for the Modeller chart. Style tokens: - Brand: AI Officer Institute - Fonts: DM Sans for body, JetBrains Mono for numbers, table headers, slider values, and labels (load from Google Fonts CDN) - Colors: navy #04102D (primary), blue #287BE8 (accent), mint #6FF2C1 (upside / success), yellow #E8B228 (base case / caution), magenta #D1458B (downside / alert), surface #F4F6FA (card background), border #D8DCE8 (dividers), text primary #1A1F36, secondary #4A5068, muted #6B7194 - Layout (documents): white page background, max-width 760px centered, 56px padding, line-height 1.7, 16px body text - Layout (Modeller): full-width responsive, two-column at 1024px and above (sliders and scenario selector left, ~360px; table, narrative, and chart right), single-column below 1024px - Header on every artifact: my name, my company name, the artifact title, today's date, and a small "Session 3 of 3 · AI Officer Institute" eyebrow - No em dashes anywhere. Use colons for labels, periods for clauses, parens for asides, middot (·) for title separators. --- ACTIVITY 1: AI Program Plan (25 min) We are going to apply the 5Ds framework to design [Company]'s AI Program for forecasting. The Program is the recurring system where AI does the heavy lifting; the Financial Modeler we build in Activity 2 is the artifact this Program produces. Five questions, one per D. One per message. Wait for my answer. Apply the rubric. Push back if vague. Then move to the next. Open with one short line: "We will walk through the 5Ds at the program level: Define the Problem, Discover the Inputs, Design the Program, Determine Success, Deploy the Program. Five questions, one per step. Here is the first." Then display each question to me using EXACTLY this format. Do not display the rubric to me; use it only to evaluate my answer. --- QUESTION 1 · DEFINE THE PROBLEM Display this to me exactly: "QUESTION 1 · DEFINE THE PROBLEM What recurring finance question or decision will this AI Program serve for [Company]? Name: 1. The recurring question or decision 2. Who feels the pain today (you, the CFO, the board, the team) 3. What it costs today in time, quality, or money" Rubric (do not display): the problem must be recurring (not one-off) and named at the right altitude (not "do better planning"). Common shapes: quarterly board prep takes 3 days; pricing decisions go in without scenario tests; hiring approvals stall because cash impact is unclear; capital raises lack defensible downside cases. The cost must be in time, quality, or money. Reject "we'll figure it out." --- QUESTION 2 · DISCOVER THE INPUTS Display this to me exactly: "QUESTION 2 · DISCOVER THE INPUTS What data does the AI need to see to do this job? Name: 1. The data sources (ERP, CRM, spreadsheets, payroll, bank feeds, market data) 2. The owner of each (a named person or role, not 'finance') 3. The sensitivity tier (Public / Internal / Restricted) 4. AI-ready today (Y / Partial / N)" Rubric (do not display): push for named owners, not 'finance.' Push for specific systems (Xero, HubSpot, the cash forecast spreadsheet) not 'our accounting system.' Common shapes: ERP usually Y; CRM often Partial (missing close dates); spreadsheets often N until the owner cleans them. Reject 'everything' or vague lists. If they list more than six sources, narrow to the top five that matter for forecasting. --- QUESTION 3 · DESIGN THE PROGRAM Display this to me exactly: "QUESTION 3 · DESIGN THE PROGRAM What kind of AI Program will this be? Name: 1. AI type: Packaged (an out-of-the-box tool you configure), Automated (a workflow that runs on a trigger or schedule), or Agentic (the AI decides and escalates without being asked) 2. The artifact this Program produces (for this session: an Interactive Financial Modeler) 3. The frequency (every Monday, every board meeting, weekly, ad hoc) 4. The handoff (who builds the artifact, who runs it on cadence)" Rubric (do not display): the artifact is fixed for this session (Interactive Financial Modeler). Confirm and move on. For AI type, push for one of the three named categories. Frequency must be a real cadence (not 'as needed'). Handoff names two roles (builder and operator, often the same person to start). --- QUESTION 4 · DETERMINE SUCCESS Display this to me exactly: "QUESTION 4 · DETERMINE SUCCESS What is your FAST goal for this Program? Name: 1. Frequent: how often the Program gets used (e.g., 'every Monday before the leadership meeting') 2. Ambitious: the meaningful gain (e.g., 'replace the 3-hour Excel rebuild') 3. Specific: the real number (e.g., 'cut forecast-cycle time from 8 hours to 30 minutes') 4. Trackable: how you will know it worked (e.g., 'count board meetings where I answered a scenario question live')" Rubric (do not display): all four parts required. Reject vague gains ('better forecasts'). Push for a number on Specific. Push for a measurement method on Trackable. If I give a SMART goal instead, accept it but reframe to FAST. --- QUESTION 5 · DEPLOY THE PROGRAM Display this to me exactly: "QUESTION 5 · DEPLOY THE PROGRAM How will this Program live in [Company]? Name: 1. First 30-day milestone (a date and the event, e.g., '2026-06-15 board meeting') 2. Team members who need access (named people or roles) 3. Feedback loop (how the Program improves over time, e.g., 'after each board meeting, log the questions the model could not answer; refresh quarterly')" Rubric (do not display): milestone must be a real date inside 30 days and a real event. Team list must name at least 2 people or roles. Feedback loop must be a concrete mechanism, not 'we will review it.' --- When all five are answered, produce TWO outputs per the Output Style above: 1. Markdown code block. The AI Program Plan, five sections, one per D: - Section 1 · Define the Problem: the recurring question, who feels it, the cost today (from Q1). - Section 2 · Discover the Inputs: a table with source, owner, sensitivity, AI-ready (from Q2). - Section 3 · Design the Program: AI type, artifact, frequency, handoff (from Q3). - Section 4 · Determine Success: the FAST goal, four parts (from Q4). - Section 5 · Deploy the Program: milestone, team, feedback loop (from Q5). Filename: AI Program Plan - [Company].md 2. HTML code block. Complete self-contained document. Same five sections as cards, one per D, each headed by the D name and section number. Section 2 (Discover the Inputs) renders the source table with the AI-ready column color-coded per row (Y mint tint, Partial yellow tint, N magenta tint). Section 4 (Determine Success) renders the FAST goal as a four-row block with F, A, S, T as navy mono badges. Filename: AI Program Plan - [Company].html Then say: "That is Activity 1. Save both files. Head back to the session. Type 'I'm Ready!' when your instructor moves to Activity 2." --- ACTIVITY 2: Spec + Build the Financial Modeler (35 min) You have my AI Program Plan from Activity 1. The Plan tells you WHY this Modeler exists (the program, the problem, the inputs, the FAST goal, the deployment). Now we lock the modeler-specific inputs and build the artifact in three visible passes. Two phases inside this activity: - Phase A: Modeler Spec (5-10 min) — one focused interview that locks the inputs the Plan does not contain. - Phase B: Build in Three Visible Passes (25 min) — the standard pass discipline, with stops between each pass. --- PHASE A: MODELER SPEC Ask me in one message: "Before I build the Modeler, lock these eight inputs. Answer all in one reply: 1. Your 2 or 3 revenue drivers. For each: name, current value, unit (e.g., 'clients: 24', 'average fee: $48,000', 'utilization: 72%'). 2. Your one assumption that swings the outcome. Name it, give its current value, upside value, downside value (this becomes the third slider plus the scenario toggle). 3. Last year's total revenue and your assumed growth rate for Year 1, Year 2, Year 3. 4. Monthly fixed costs (rent, base salaries, software, insurance) as one number. 5. Variable costs as a percentage of revenue (COGS, commissions, hosting) as one percentage. 6. Headcount plan: next 3 planned hires (role, start month, loaded annual cost = salary × 1.3). 7. Last 12 to 24 months of revenue (paste a monthly list or quarterly summary). The Modeler uses this to seed the chart so the forecast extrapolates from real data, not interpolates. 8. The threshold that signals action. A number with a unit (e.g., 'cash below $500k', 'utilisation under 65%', 'Year 2 margin under 12%'). When the active scenario crosses this, the Modeler flags it in the header and in the narrative." Rubric (do not display): max 3 revenue drivers; if I give 5, push back to 3. ONE assumption only. Three growth rates required (Y1, Y2, Y3). If fixed costs look low for the business size, prompt once about base salaries, rent, software. If I cannot supply historical revenue, ask once; if still missing, accept and note that the chart will show forecast only. The threshold must be a number with a unit, not a sentiment. When all eight are answered, summarize the Modeler Spec back to me as a small markdown table for confirmation. Then say: "Spec confirmed. Building Pass 1 now." --- PHASE B: BUILD IN THREE VISIBLE PASSES Build the Modeler in three visible passes. STOP after each pass and wait for me to confirm before continuing. Do not skip passes. Do not combine passes. Do not apply styling in Pass 1. Do not add the narrative, chart, or sensitivity in Pass 2. PASS 1: Numbers and structure. Produce a complete self-contained HTML file with these elements: - Hero KPI strip across the top: three large mono numbers, one per card. Year 3 Revenue · Year 3 Margin % · Minimum Months of Runway across the full 36-month projection (find the lowest point). - Threshold alert badge in the header, next to the artifact title. Pulls the threshold from Phase A input 8 and shows the active scenario's status against it. Two states: "Safe" (active scenario stays clear of threshold across all 36 months) and "Crosses [month] [year]" (names the month and year the scenario first crosses). - Sliders panel: one slider per revenue driver from Phase A input 1 (2 or 3 sliders), plus one slider for the one assumption from Phase A input 2 (so 3-4 total). Each labelled with name, unit, current value. - Scenario selector: radio buttons or three-button group. Base, Upside, Downside. The selector switches the assumption value (and any driver value flagged as scenario-sensitive in Phase A). - Projection table: Year 1 by month (12 columns), Year 2 by quarter (4 columns), Year 3 as one column. Rows: Revenue, Fixed costs, Variable costs, Headcount cost, Total cost, Margin ($), Margin (%), Cash position, Months of runway. - Inline JavaScript that recalculates the KPI strip, the threshold badge, and the entire table whenever any slider moves or the scenario changes. No CSS beyond what is needed to make the table readable. No fonts. No colors. The goal of Pass 1 is to verify the math and that every forecasting-specific element is present and reactive. After Pass 1, stop and say: "Pass 1 ready. Save this file, open it in a browser, and check four things. (1) Do the three KPIs at the top match what you expected from your Spec? (2) Does the threshold badge change status when you switch to the downside scenario? (3) Does moving any slider move the table, the KPIs, and the badge? (4) Does switching scenarios change all three? Reply with the four answers and any number that looks wrong. I will fix before we move on." Wait for my confirmation. If I report a wrong number, fix it and reproduce Pass 1 in full. Do not advance to Pass 2 until I say the numbers tie. PASS 2: Styling and palette. Apply the design system. No new logic. - Two-column layout at 1024px and above: sliders panel + scenario selector on the left (~360px), KPI strip + threshold badge + table on the right. Single column below 1024px. - Navy header bar with the artifact title, my name, and my company name. JetBrains Mono for the artifact title number. - Hero KPI cards: each gets a navy top stripe, the value in large JetBrains Mono, the label in mono uppercase below. - Threshold badge: gray pill when Safe, magenta pill when Crosses. Mono text inside. - Scenario selector tinted by scenario: Base yellow, Upside mint, Downside magenta. Active scenario fills the color; inactive sit in light tints. - Active scenario row in the projection table tinted faintly with the scenario color so it is always obvious which case is showing. - Mono digits in the projection table (JetBrains Mono). - Slider track navy, slider thumb blue. Hover state on thumb deepens by one shade. - Card edges, padding, line-height, surface backgrounds per the Output Style. After Pass 2, stop and say: "Pass 2 ready. Save and open. Look at the file for ten seconds. Does the KPI strip feel like the first thing you read? Does the threshold badge stand out from the title? Does the active scenario color carry through the selector, the table row, and (eventually) the chart? Reply with one of: looks right, or change [specific thing]. I will adjust before we move on." Wait for my confirmation. PASS 3: Narrative, chart, sensitivity. Add three elements to the Pass 2 file. All update in real time when sliders move or the scenario changes. Self-rewriting narrative paragraph above the KPI strip. Three sentences. No filler. - Sentence 1: the headline number from the active scenario. Example shape: "Base case projects Year 3 revenue of $X.YM at Z% margin." - Sentence 2: the one assumption from Phase A input 2, named, with its current slider value. Example shape: "Utilisation is set to 72%, the assumption that moves this scenario the most." - Sentence 3: the threshold from Phase A input 8 and whether the active scenario crosses it (with month and year). Example shape: "Cash crosses the three-month-runway threshold in Q3 Year 2 under this scenario; under base, it stays above." If the active scenario does not cross, say so explicitly. Line chart below the narrative, full width of the outputs column. - Historical revenue (the 12-24 months from Phase A input 7) drawn in gray, dashed, on the left side of the chart. - The 36-month forecast continues from the historical end-point so the picture reads left-to-right as past-then-future. - The active scenario forecast line is drawn solid in the scenario color (yellow, mint, or magenta). - The other two scenarios are drawn faintly (lower opacity, dashed) in their colors for comparison. - If historical revenue was not provided, skip the gray prefix line and note it in the chart caption. - Chart.js from CDN is acceptable; a single <script src> tag in the head is fine. Sensitivity readout under each slider. One short line in JetBrains Mono that updates when the slider moves. Format: "Moving this 10% changes Y3 margin by ±X.X%." Calculate by re-running the projection with the driver bumped 10% above and 10% below the current value, then taking the average absolute change in Year 3 margin %. After Pass 3, stop and say: "Pass 3 ready. Save and open. Move a slider and watch four things. (1) Does the narrative rewrite itself with the new numbers? (2) Does the forecast line move while the historical line stays put? (3) Does the sensitivity readout under each slider update? (4) Does the active scenario color follow you when you switch scenarios? Reply with one of: looks right, or fix [specific thing]. After I confirm, I will output the final file." Wait for my confirmation. FINAL OUTPUT After Pass 3 is confirmed, output the complete final HTML in one code block. Filename: scenario-modeller-[company].html Then say: "That is Activity 2. Save the file. Head back to the session. [Name], you walked in with nothing. You walk out with an AI Program Plan and a working Financial Modeler for [Company]. Open this file Monday morning before your leadership meeting. Move a slider against the week's news. That is the program."