Product Growth Models: Find the Constraint Before Funding the Roadmap
Build a stock-and-flow growth model, test cohort retention and loop assumptions, and use scenarios to decide which constraint deserves product investment.
On this page11 sections
- 01Define the decision and the boundary
- 02Represent growth as stocks and flows
- 03Keep cohort retention visible
- 04Decompose a loop before assigning it a coefficient
- 05Put uncertainty beside every important input
- 06Stress-test the model rather than decorating it
- 07A fictional model changes the roadmap choice
- 08Locate the constraint, then name its evidence
- 09Review forecasts against what happened
- 10Sources
- 11Read next
A growth dashboard can report that acquisition rose, activation fell, and revenue held steady. It still cannot tell a product leader which lever deserves the next team.
That decision needs a model rather than a collection of movements.
A product growth model states how people enter a valuable state, remain there, leave it, and sometimes bring others in. It also states where evidence ends and assumptions begin.
Its purpose is not to predict one impressive number. It is to expose which uncertain relationship carries the roadmap decision.
Define the decision and the boundary
Start with the decision the model must support. “Understand growth” has no stopping point. “Choose whether the next quarter should fund acquisition, activation, or retention” can be answered.
Then set a boundary:
- the customer unit, such as a person, account, workspace, or transaction;
- the valuable state that qualifies the unit for the model;
- the entry and exit events;
- the time step;
- the commercial or product outcome under consideration;
- material mechanisms deliberately left outside.
Changing the unit changes the model. A collaboration product can gain registered users while losing active workspaces. A marketplace can gain buyers while liquidity deteriorates in one region.
Do not combine those states merely because one headline number is convenient.
Product Growth Strategies helps choose the kind of growth problem being addressed. The model here tests whether the proposed mechanism can change that problem.
Represent growth as stocks and flows
A stock is something that accumulates. A flow changes that stock during a period.
For a subscription product, the stock might be retained paying accounts. New retained accounts and expansions flow in. Churn and contraction flow out.
The basic relationship is:
retained accounts next period
= retained accounts now
+ new accounts reaching the retention horizon
+ accounts created through a growth loop
- accounts leaving the retained state
The equation looks simple because the difficult questions sit inside each term.
What counts as retained? Does an account return, complete a valuable workflow, renew, or merely remain billable? Which cohort horizon matters? Can reactivated accounts be distinguished from new ones?
MIT OpenCourseWare materials on system dynamics use stocks, flows, and feedback to explain accumulation. That discipline transfers well to product modelling.
It does not establish which product behaviour causes growth. The team must supply and test those relationships.
Keep cohort retention visible
A blended retention rate can hide a changing customer mix.
Suppose mature accounts retain well while recent cohorts decline. An aggregate may look stable because the mature stock is large. The growth model will overstate future accumulation if it applies that history to new accounts.
Keep at least these distinctions:
- acquisition or activation cohort;
- entry channel or customer segment when it changes behaviour;
- retained state and measurement horizon;
- reactivation treatment;
- observation completeness.
Google Analytics defines a cohort through an inclusion criterion and a return criterion. Its documentation also shows that standard, rolling, and cumulative calculations answer different questions.
Those are tool definitions, not a universal retention model. Device-based identity, incomplete observation windows, and instrumentation choices can all change the result.
Use Cohort Tracking to establish comparisons that can survive scrutiny before placing a cohort curve inside a growth forecast.
Decompose a loop before assigning it a coefficient
A loop turns existing use into another entry. An invitation loop might be written as:
new retained accounts from invitations
= retained accounts
x invitations sent per retained account
x invitation acceptance
x activation after acceptance
x retention to the chosen horizon
Multiplying the stages gives a loop coefficient. A coefficient of 0.02 means each retained account produces 0.02 additional retained accounts during one model period.
That is an accounting shortcut, not proof of self-sustaining growth. Stages may vary by cohort, market, account size, or saturation. The loop may also depend on paid acquisition continuing elsewhere.
Do not optimise the easiest stage in isolation. More invitations can reduce acceptance if prompts reach weak relationships. Higher acceptance can still add little retained value if invitees cannot complete the core job.
Growth Loops for Early-Stage Products covers loop closure and cycle evidence in more depth.
Put uncertainty beside every important input
An input should carry more than a point estimate.
Record:
- definition and unit;
- observation period and eligible population;
- central estimate and plausible range;
- source and known data loss;
- whether it is observed, inferred, or assumed;
- owner and next review date;
- decision sensitivity.
“Activation is 35%” is incomplete. “Thirty-day workspace activation was 32% to 38% across the last four complete monthly cohorts, excluding assisted migrations” is inspectable.
Ranges should reflect evidence, not ritual. A narrow interval built on broken identity resolution is false precision. A wide range may be appropriate when a new segment has little history.
Braun and Schweidel model when customers end a contractual relationship and why, using a hierarchical competing-risk model on landline-telecommunications data.
Their research shows how much structure can sit behind a simple churn term. It is not a ready-made model for every product, and its setting and statistical demands are much narrower than this decision spreadsheet.
Stress-test the model rather than decorating it
Change one uncertain input at a time, then change plausible combinations.
Useful scenarios include:
- the current central case;
- a downside case within observed variation;
- a credible improvement tied to a proposed intervention;
- a saturation case in which the lever weakens at scale;
- a measurement case in which one disputed definition changes.
Ask which input changes the ranking of roadmap options. That input deserves attention before a commitment.
Also test feasibility. A mathematically powerful lever may be expensive, slow, outside product authority, or exposed to a hard operational constraint.
The model should compare potential reach, evidence strength, cost, delay, and reversibility. Arithmetic alone does not choose the roadmap.
A fictional model changes the roadmap choice
The following example is hypothetical. Its numbers illustrate the method and make no claim about a real product.
A team collaboration product has a stock of 4,000 retained workspaces at the start of a month. It is deciding whether to fund acquisition, activation, retention, or invitations.
Its central inputs are:
| Input | Central case | Plausible range | Evidence status |
|---|---|---|---|
| New eligible workspaces | 2,000 | 1,800 to 2,200 | observed |
| Activation | 35% | 32% to 38% | observed |
| Retention to month one | 55% | 50% to 60% | incomplete recent cohorts |
| Loop coefficient | 0.02 | 0.01 to 0.03 | inferred from four stages |
| Existing-stock exit rate | 4% | 3.5% to 4.5% | observed |
The central case produces:
new retained from acquisition = 2,000 x 0.35 x 0.55 = 385
new retained from the loop = 4,000 x 0.02 = 80
exits from the stock = 4,000 x 0.04 = 160
net change = 385 + 80 - 160 = 305
The product leader then compares bounded scenarios:
| Scenario | Changed assumption | Modelled net change |
|---|---|---|
| Central case | none | 305 |
| More acquisition | eligible workspaces rise to 2,500 | 401 |
| Better activation | activation rises to 45% | 415 |
| Better new-cohort retention | month-one retention rises to 65% | 375 |
| Stronger invitation loop | coefficient rises to 0.03 | 345 |
Activation has the largest modelled effect, but that is not yet a roadmap answer.
The acquisition increase comes from a priced channel with known capacity. The activation scenario assumes a ten-point improvement without knowing which setup failure causes abandonment.
The loop coefficient also hides trouble. Invitation sending has risen, while acceptance and retained use among invitees have fallen. A local invitation metric improved as loop output weakened.
The decision is to fund a short activation investigation before a large build, keep acquisition at its current level, and stop treating invitation volume as loop health.
The model changed the roadmap by identifying the assumption that must be resolved. It did not prove that activation work will succeed.
Locate the constraint, then name its evidence
The smallest number is not automatically the constraint.
A stage constrains growth when improving it would materially change the stock, the improvement is feasible, and another bottleneck would not immediately absorb the gain.
Check four conditions:
- Sensitivity: does a credible change alter net growth enough to matter?
- Evidence: is the relationship observed, inferred, or merely proposed?
- Feasibility: can the team influence it within the decision horizon?
- Displacement: what work and cost does the intervention replace?
If two scenarios remain close, do not force a winner. Choose the evidence that can distinguish them at the lowest responsible cost.
Data-Informed Product Decisions provides the evidence contract and reopening discipline around that choice.
Review forecasts against what happened
A growth model should retain its previous version.
At each review, compare forecast and observation:
- Which input moved outside its range?
- Did the retained state still represent value?
- Did a cohort behave differently from the blended assumption?
- Did the loop weaken with scale or customer mix?
- Did an intervention move its local metric but not the stock?
- Did the constraint move elsewhere?
Do not rewrite the old assumptions before reviewing them. Forecast error is useful only when the original reasoning remains visible.
Retire an input when it no longer changes a decision. Split one when aggregation hides materially different behaviour. Rebuild the boundary when the product’s unit of value changes.
A model earns trust by becoming easier to challenge. The product leader can show how the system is believed to grow, which relationship remains uncertain, and why one roadmap decision follows now.
Sources
- MIT OpenCourseWare: System Dynamics Self Study introduces stocks, flows, and feedback for dynamic systems. It does not establish product-growth causality.
- Braun and Schweidel: Modeling Customer Lifetimes with Multiple Causes of Churn develops a hierarchical competing-risk model using contractual telecommunications data. It does not transfer automatically to every product.
- Google Analytics: Cohort exploration documents inclusion, return, and calculation choices. It describes one analytics product and includes identity and reporting limits.
Read next
Related books
Two books to
read next.
If you want to go further on this topic, these are two good places to start.
01
leadership
An Elegant Puzzle
by Will Larson
A human-centric guide to solving complex problems in engineering management, from sizing teams to handling technical debt to managing organizational growth.
02
leadership
The Five Dysfunctions of a Team
by Patrick Lencioni
A leadership fable about behaviours that damage teams and a practical model for rebuilding trust, conflict, commitment, accountability, and results.
Some outbound links are affiliate links and support independent bookstores.