Learn it → Apply it → Save as Skill
A stock is anything that accumulates. A flow is what changes it. Water in a bathtub, money in a bank account, trust between two people, CO2 in the atmosphere — all stocks. The faucet and the drain, deposits and withdrawals, kept promises and broken ones, emissions and absorption — all flows. Mixing the two up is one of the most common reasoning errors in business, health, finance and policy.
The Dr. Wallace's Favorite Mental Models is designed to turn useful ways of thinking into reusable tools. Each model gives you a fast visual overview, deeper interactive learning, practical application exercises and an AI-ready Markdown skill you can save for future use.
Instead of merely reading about mental models, you can gradually build your own AI skills library: a collection of portable reasoning skills that can help ChatGPT, Claude, Grok and other AI assistants apply the mental models you value.
A stock is a quantity you could measure right now with a single snapshot: water level, bank balance, headcount, inventory, trust. A flow is a rate — something per unit of time — that adds to or drains a stock. You never change a stock directly; you only ever change it by changing one of its flows.
Important: the stock changes only gradually even when a flow shifts sharply — that lag is why systems feel sluggish to manage.
The model is most useful whenever a quantity accumulates or depletes over time: money, people, trust, carbon, skill, inventory.
Work through three steps in order: the basic distinction, the model made interactive, and the most common misreading of it.
Before anything else, learn to sort what you're looking at into one of two buckets.
Anything that accumulates and can be measured at a single point in time. It is the system's memory — what it has built up from everything that happened before right now.
Examples: water in a bathtub, money in a bank account, inventory in a warehouse, people in a population, trust in a relationship, CO2 in the atmosphere, skill built up through practice.
The rate of change of a stock, measured per unit of time. An inflow adds to the stock; an outflow drains it.
Examples: the faucet filling the tub vs. the drain emptying it, deposits vs. withdrawals, hiring vs. attrition, births vs. deaths, emissions vs. absorption.
The canonical teaching example: the water level in a tub at any moment is the net result of the inflow (faucet) minus the outflow (drain), accumulated over time. Set both rates below, press Play, and watch the level respond.
Water level (the stock)
Stocks act as buffers and create delays: they change only gradually even when a flow shifts sharply. That lag makes it easy to misjudge a system — a stock can keep rising even while its inflow is shrinking, as long as inflow still exceeds outflow. A national debt, a person's weight, or CO2 concentration can all keep increasing even as the rate of increase is falling. "Slowing down" is not the same as "going down."
Inflow rate (shrinking)
Total stock (still rising)
Open an example to see how the stock and its flows show up in different parts of life.
Stock: the account balance. Inflows: deposits and interest earned. Outflows: withdrawals and fees. A balance that looks "stuck" usually means the two flows have quietly converged — find out whether fees and small withdrawals have crept up to match the deposits.
Stock: skill or expertise built up through practice. Inflow: deliberate practice and real-world use. Outflow: decay from disuse. A skill you haven't used in years is a stock that has been draining with no offsetting inflow, even though nothing dramatic happened to "cause" the loss.
Stock: units sitting in inventory. Inflow: production or receiving from suppliers. Outflow: units sold or shipped. Chronic stockouts or overstock are rarely solved by changing the stock itself — they're solved by resynchronizing the receiving rate with the shipping rate.
Stock: body weight (a rough proxy for stored energy). Inflow: calories consumed. Outflow: calories burned through activity and metabolism. Eating "a little less" than before is still a net inflow if it remains above the outflow — the stock keeps climbing until inflow actually drops below outflow.
Stock: CO2 concentration in the atmosphere. Inflow: emissions from burning fuel and other sources. Outflow: natural absorption by oceans and forests. Concentration keeps climbing every year that emissions exceed absorption, even in years when the emissions growth rate itself is falling.
Stock: trust between two people. Inflow: kept promises, honesty, consistent follow-through. Outflow: broken promises, neglect, small deceptions. Trust built slowly over years can be drained by a sustained outflow much faster than it accumulated — the two rates are rarely symmetric.
This is an illustrative walkthrough designed to teach the method.
Expand for where the stock-and-flow language came from and how it reached its most popular treatment.
It is foundational language from the field of system dynamics, originated by Jay Forrester at MIT in the 1950s and 1960s. His 1961 book, "Industrial Dynamics," is considered the field's founding text, and it introduced stocks and flows as the basic building blocks for modeling how complex systems change over time.
Donella Meadows (1941–2001) was a scientist and lead author of the 1972 report "The Limits to Growth," which used Forrester's World3 model and brought stock-and-flow thinking to a much wider audience. Her most widely read popular treatment of the concept is the book "Thinking in Systems: A Primer." Credit for the idea belongs to both: Forrester for originating the formal system-dynamics language, and Meadows for its most influential popularization.
In 2008 — seven years after Meadows' death in 2001. It was compiled and edited by her colleague Diana Wright at the Sustainability Institute from a manuscript Meadows had circulated in draft form since the 1990s.
A teaching device. Real systems usually involve many interacting stocks and flows, delays and feedback loops at once. The single-tub, two-pipe picture is the simplest possible case, used to build the vocabulary before layering on that complexity.
A shrinking inflow is not a shrinking stock. The stock keeps growing as long as inflow exceeds outflow, whatever direction the inflow itself is trending.
No one can "just raise" a bank balance or "just add" headcount. You only ever move a stock by changing one of its flows.
Stocks respond gradually. Expecting a flow change to show up in the stock immediately, then panicking when it doesn't, misreads normal lag as failure.
A slowing inflow still adds to the stock. Declaring victory when the rate merely slows, rather than reverses below the outflow, is the single most common error.
Watching the inflow alone, or the outflow alone, without the other leaves you guessing at the net direction. A complete diagnosis needs both rates.
A large stock can absorb a small change in a flow for a long time before the effect becomes visible — the buffering effect that makes systems feel sluggish.
the decision is a one-time, static choice with no accumulation dynamics at all — such as picking between two flat-fee vendor quotes.
you're analyzing a single discrete event rather than something that builds up or depletes over time.
the flows themselves depend on the stock's own level — Stocks and Flows gives you the vocabulary; Feedback Loops explains the reinforcing or self-correcting behavior layered on top.
This browser tool structures your thinking. It does not send your information anywhere or perform AI analysis.
Save as Skill converts the model into portable Markdown instructions that teach an AI when and how to apply Stocks and Flows, what questions to ask, what evidence to seek, what mistakes to avoid and how to structure its analysis.
Save the skills you find useful and organize them into your own reusable library. The Markdown is intentionally model-neutral, so it can be used wherever an AI system accepts uploaded files, project knowledge, custom instructions or reusable text context. Platform capabilities differ, so this is a portable skill file rather than a claim of one-click installation.
The unit just has to match the stock and the decision at hand — per quarter, per year, per practice session. What matters is that a flow is always a rate (an amount per some unit of time), while a stock is always an amount at an instant, with no time unit attached.
Yes. Monthly revenue is a flow into a company's cash stock, but if you're analyzing a single customer's lifetime spending, that same revenue stream can be treated as accumulating into a stock of its own. The labels depend on which boundary and time frame you've drawn around the system.
No. The bathtub is the simplified teaching case. A real stock, like a company's cash balance or a population, often has several inflows (revenue, immigration, births) and several outflows (expenses, emigration, deaths) all acting on it at once.
Ordinary cause and effect usually describes a single push and a single result. Stocks and flows is specifically about accumulation over time: the same flow, held constant, produces a steadily growing or shrinking stock rather than a one-time effect, which is what creates the delays and buffering this model is built to explain.