Stocks and Flows Reasoning
Picture it
Section titled “Picture it”A stock is a level that accumulates (like water in a bathtub); flows are the rates that fill or drain it. The level changes only by the net of the flows, which is why people misjudge it.
graph LR IN["Inflow:<br/>new signups / month"] --> S["STOCK:<br/>active users<br/>(the level right now)"] S --> OUT["Outflow:<br/>churn / month"] classDef flow fill:#e6f0fe,stroke:#1967d2,color:#10316b classDef stock fill:#e3f5e8,stroke:#16a34a,color:#14532d,font-weight:bold class IN,OUT flow class S stock
Cutting churn (the outflow) raises the level even with signups flat; a big inflow still shrinks the stock if the outflow is bigger. Reason about the level and the two rates separately.
People systematically misjudge accumulations. They confuse a stock (a quantity that builds up: cash, debt, a customer base, a backlog, technical debt) with the flows that change it, and infer the stock’s direction from a flow’s direction. The classic error: “the inflow is falling, so the stock is falling.” It is not - the stock keeps rising while inflow exceeds outflow. This skill makes the structure explicit: name the stock, name its inflows and outflows separately, and reason about its trajectory from the net flow. The output is a stock-flow map. It corrects a specific, well-evidenced accumulation error; it does not claim to teach systems thinking wholesale.
When to Use
Section titled “When to Use”- A quantity accumulates over time (runway, debt, backlog, headcount, customer base, reserves, technical debt) and the question is whether it is rising or falling.
- A trend in a flow is being used to infer the stock (“churn dropped, so the base is growing”).
- Before acting on an “it’s getting better/worse” intuition about an accumulation.
When NOT to Use
Section titled “When NOT to Use”- The quantity does not accumulate (a one-off event, a ratio with no stock).
- A simple direct relationship with no accumulation is all that is at play.
- Mapping forward consequences (use futures-wheel) or systemic causes (use iceberg-model); this is specifically about accumulation dynamics.
Instructions
Section titled “Instructions”When asked to reason about an accumulating quantity, follow these steps:
- Name the stock. The quantity that accumulates, and its current level if known. Make sure it is a stock (a level), not a flow (a rate).
- List the inflows. What adds to the stock, and at what rate / trend.
- List the outflows. What drains the stock, and at what rate / trend. Do not skip the outflow - ignoring it is a common error.
- Compute the net flow. Inflow minus outflow: is the stock currently gaining or losing, and is the net flow itself trending up or down?
- State the corrected trajectory. What the stock actually does (rises / falls / plateaus and when), derived from the net flow, not from any single flow’s direction.
- Name the naive intuition it corrects. What someone would wrongly conclude from the flow alone, and why it is wrong.
- Emit the stock-flow map per
references/TEMPLATE.md.
Output Format
Section titled “Output Format”Use the template in references/TEMPLATE.md. The deliverable is the stock-flow map with the corrected trajectory, not prose.
Quality Checklist
Section titled “Quality Checklist”Before finalizing, verify:
- The stock is genuinely a level (accumulation), not a flow/rate.
- Both inflows and outflows are listed; the outflow is not ignored.
- The trajectory is derived from the net flow, not from one flow’s direction.
- The naive intuition being corrected is named.
- No overclaim: it corrects an accumulation error, it does not teach systems thinking wholesale (see
evidence/dossier.md). - The output is the stock-flow map artifact, not prose.
Evidence
Section titled “Evidence”Tier S. The underlying failure is robustly demonstrated: across repeated experiments, including with highly educated subjects, people misread stock/flow relationships and infer stock direction from flow direction (Sterman’s accumulation experiments; Cronin, Gonzalez & Sterman 2009; Meadows, Thinking in Systems). The strong evidence is that the error is real and that making the structure explicit removes it on a given problem; it is not a claim of broad systems-thinking transfer. Evidence is from human reasoners, transferred to AI use, not AI-validated. Full grading: evidence/dossier.md.
Examples
Section titled “Examples”See references/EXAMPLE.md for a completed stock-flow map.
Deep dive: worked example
Section titled “Deep dive: worked example”A full worked run (the shared Northwind scenario)
Stock-Flow Map - Worked Example
Section titled “Stock-Flow Map - Worked Example”A completed run of think-stocks-and-flows-reasoning, on the shared Northwind scenario. This is the quality bar a generated map should meet.
Northwind is a B2B SaaS. The team just cut churn and concluded “we’re growing again.” This skill checks whether the customer base is actually rising.
- The accumulating quantity: active paying customers - current level: 1,000.
| Inflows (add to the stock) | Rate / trend |
|---|---|
| New customers won per month | ~30/month, flat (and slightly declining as the funnel weakens) |
| Outflows (drain the stock) | Rate / trend |
|---|---|
| Customers churned per month | was ~50/month; the retention fix cut it to ~35/month |
Net flow
Section titled “Net flow”- Inflow vs outflow right now: 30 in, 35 out = net -5/month (still losing customers), even after the churn cut.
- Net-flow trend: improving (the gap closed from -20 to -5), but still negative; and inflow is drifting down, which could re-widen it.
Corrected trajectory
Section titled “Corrected trajectory”- The customer base is still shrinking, just more slowly (~5/month), not growing. It only starts growing once new-customer inflow (30) exceeds churn outflow (35) - i.e. either win >35/month or cut churn below 30/month.
Naive intuition it corrects
Section titled “Naive intuition it corrects”- “We halved churn, so we’re growing.” Wrong: churn is a flow; the customer base is the stock. A lower outflow slows the decline but does not reverse it while inflow is still below outflow. The team would have celebrated growth while the base kept eroding.
Note: the value is refusing to read the stock (customer base) off the direction of one flow (churn). The fix reframes the goal correctly: to actually grow, raise inflow above 35 or cut churn below 30 - which sends the team back to the acquisition work (the free-tier / funnel decisions), now with the right target.
Grounding: the full evidence dossier
Section titled “Grounding: the full evidence dossier”What the research does and does not show, with graded sources
Evidence Dossier: Stocks and Flows Reasoning
Section titled “Evidence Dossier: Stocks and Flows Reasoning”Single source of truth for the
stocks-and-flows-reasoningskill. The SKILL.md, sidecar, and evals derive from this. A strong-evidence anchor (named empirical core).
| Skill | thinking-framework-skills.stocks-and-flows-reasoning (installable name think-stocks-and-flows-reasoning) |
| Family | systems-and-consequences |
| Evidence tier | S (a robustly demonstrated reasoning failure the skill corrects) |
| Confidence | High that people systematically misjudge accumulation; the correction is mechanical |
| Status | draft (authored 2026-05-31 from the discovery corpus) |
1. The mechanism (what actually does the work)
Section titled “1. The mechanism (what actually does the work)”People reason badly about accumulations. They confuse a stock (a quantity that accumulates: cash, debt, headcount, a customer base, a backlog, technical debt, CO2, trust) with the flows that change it (the inflow that adds to it, the outflow that drains it). The classic error: assuming that because an inflow is falling, the stock is falling. It is not - the stock keeps rising as long as inflow exceeds outflow. (Emissions can slow while atmospheric CO2 still rises; churn can drop while the customer base still shrinks if new-customer inflow is lower.)
The skill makes the structure explicit: name the stock, name its inflows and outflows separately, and reason about the stock’s trajectory from the net flow (inflow minus outflow), not from the direction of any single flow. The work is done by forcing the stock/flow distinction that intuition collapses.
2. Lineage
Section titled “2. Lineage”- System dynamics: Jay Forrester (origin); John Sterman, Business Dynamics (2000); Donella Meadows, Thinking in Systems (2008). The accumulation-misjudgment experiments are Sterman’s (and Cronin, Gonzalez & Sterman, “Why don’t well-educated adults understand accumulation?”, 2009).
No trademark. Named descriptively.
3. What the evidence shows, and what it does NOT show
Section titled “3. What the evidence shows, and what it does NOT show”Strongly supported (the S): the failure is robust. Across repeated experiments - including with highly educated subjects (MIT graduate students) - people systematically misread stock/flow relationships (the “bathtub” tasks), inferring stock direction from flow direction. This is one of the better-documented systematic reasoning errors.
What that means for the skill (honest framing): the strong evidence is that the error is real and widespread, and that making the stock/flow structure explicit removes it on a given problem. There is no claim that running this skill improves general systems-thinking transfer (the broader systems-thinking-pedagogy evidence is mixed). So: claim that it corrects a specific, well-evidenced accumulation error; do not claim it teaches systems thinking wholesale.
4. Transferred-evidence flag
Section titled “4. Transferred-evidence flag”The evidence is from human reasoners. Transferred to AI use; a model can also slip into flow-direction-equals-stock-direction reasoning when narrating a trend. The AI value: forcing the explicit stock/inflow/outflow separation and the net-flow logic is a direct counter, and the stock-flow map is inspectable.
5. When it works / when it fails
Section titled “5. When it works / when it fails”Works best when: a problem involves a quantity that accumulates over time, and the question is whether it is rising or falling (runway, debt, backlog, headcount, customer base, technical debt, reserves, emissions); when a trend in a flow is being used to infer the stock.
Fails or misleads when (poor-fit / anti-patterns):
- The quantity does not accumulate (a one-off event, a ratio with no stock structure).
- Confusing the stock with a flow (the very error - e.g., treating “revenue this month”, a flow, as “cash”, a stock).
- Assuming a falling inflow means a falling stock, or ignoring the outflow entirely.
- Treating a flattening flow as a falling stock.
- When a simple direct relationship (no accumulation) is all that is at play.
6. Output artifact
Section titled “6. Output artifact”A stock-flow map: the stock named explicitly; its inflows and outflows listed separately; the net-flow logic (is inflow above or below outflow, and trending which way); the corrected trajectory of the stock; and the naive intuition it corrects (what someone would wrongly conclude from the flow alone).
7. Sources
Section titled “7. Sources”- Sterman, J. (2000). Business Dynamics; and Sterman’s accumulation experiments.
- Cronin, M., Gonzalez, C., & Sterman, J. (2009). “Why don’t well-educated adults understand accumulation?” Organizational Behavior and Human Decision Processes.
- Meadows, D. (2008). Thinking in Systems.
Verification status: the Sterman accumulation-failure finding is well-attested; confirm the Cronin/Gonzalez/Sterman citation specifics before a public quantified claim. The honest scope - “corrects a specific accumulation error,” not “teaches systems thinking” - is the core caveat.