你的增长团队向你汇报:本月新激活用户1.2万,比上月增长20%。数据很好看,但你低头看了一眼总盘:活跃用户(这里指月初处于活跃状态的用户,不同于滚动统计的MAU)从10万掉到了9.7万。
新增涨了20%,总量反而少了3000人。数据没有骗你,是你只考核了新增用户,没有关注流失用户。
团队开始讨论大盘、渠道和季节性,却没人先把流入与流出放到同一张表里。
本月新激活1.2万人,回流0.3万人,合计流入1.5万。但流失了1.8万人。流入减去流出,一个月内的净流量为-3000人。因此,期末活跃用户自然减少3000人。
账面上的直接原因很清楚:流出比流入多了3000人。至于用户为什么流失,还需要继续追查。但如果连这笔账都没有算清,后面的归因就很容易跑偏。
想象一个浴缸。水龙头在进水,排水口在出水。你问:水位在涨还是在降?
直觉是看水龙头。水龙头开得大,水位就该在涨。水龙头拧小了,水位就该在降。
但水位往哪走,看的不是水龙头开多大——看的是进水和排水谁更大。进水每分钟12升,排水每分钟8升,水位每分钟增加4升。即使把进水从12升降到10升,只要仍然大于8升,水位就还在上涨,只是涨得慢了。
浴缸里现在有多少水,是存量。每分钟流进多少、排出多少,是流量。用标准的定义来讲:在明确的系统边界内,由过去的流入和流出累积形成、能够在某一时点测量的状态量,叫存量;单位时间内使存量增加或减少的速率,叫流量。存量回答"现在池子里有多少",流量回答"每单位时间流进或流出多少"。
浴缸一开始可能已经有水。这些水是之前积累的,不是这一轮才流进来的。所以完整的关系是:
期末存量 = 期初存量 + 期间全部流入 - 期间全部流出
这是存量—流量模型的核心公式。它说明,期末存量由期初存量和期间净流量共同形成。净流量是正的,存量就在增加。净流量是负的,存量就在减少。净流量是零,存量就保持不变。只看流入这一条线,判断不了存量往哪走;必须把流入和流出放在一起,算净流量。
这个模型来自系统动力学。20世纪50年代末,MIT的杰伊·福里斯特把"水平量—速率结构"系统化为系统动力学的核心建模工具。后来,德内拉·梅多斯加入MIT的福里斯特团队,在《系统之美》中用浴缸、人口、银行账户这些日常例子普及了这套概念。
流入减流出,这不是小学算术吗?
麻省理工学院的约翰·斯特曼教授和合作者在一项经典实验中,给MIT研究生看浴缸的进水曲线和排水曲线,让他们画出浴缸里的水量变化。答对的人不到一半。
很多学生看到进水曲线在下降,就把水量曲线也画成了下降。他们没有比较进水和排水的大小,而是直接假设水量的走势跟进水一致。
斯特曼和合作者把这个错误叫做"相关启发式"——把流量曲线的方向,直接当成存量曲线的方向。
这个错误有多顽固?实验发现,即使受过系统动力学训练的人,仍然有一部分会犯。原因不在于读不懂图或算术能力不足,而在于很多人没有真正理解"流量经过时间累积,才形成存量"这条原则。
浴缸和用户增长看起来毫不相干,但它们要求你完成的是同一种判断。看到进水下降,就以为水量下降;看到新增上涨,就以为用户总量上涨,背后都是同一种错误:把一条流量的变化,直接当成了存量的变化。
这种错误并不只发生在课堂里。大气中二氧化碳的累积量,可以用浓度来表示。它是存量,排放是流入,自然与人工移除是流出。很多人以为,只要排放不再增长,浓度就会稳定。其实,只要排放仍然大于移除,浓度就还会继续上升。只有排放与移除相等,浓度才会稳定;要让浓度下降,移除就必须持续超过排放。
同一种误判,放在气候问题上,会让人低估稳定浓度所需的减排幅度;放在业务里,则会让团队把资源不断投向拉新,却看不见正在扩大的流失口。
存量—流量模型还有一个被忽视的推论:想提高存量,不只有增加流入这一条路,减少流出同样有效。
梅多斯在《系统之美》中用浴缸说明过这个道理:要灌满一个浴缸,把水龙头开大可以,堵上排水口也可以。
道理显而易见。但回到现实,大多数人的第一反应是"增加投入"。缺少用户,用户增长团队要拉新;团队缺人,招聘团队要招人;现金紧张就想增加回款。减少流出这条路径经常被忽视。
回到开头的场景。你的活跃用户在掉,团队在讨论怎么拉新。为了比较两条路径,先假定其他条件不变。
方案A,只增加流入:把新激活从1.2万提高到1.6万,回流仍为0.3万,流出仍为1.8万。总流入变成1.9万,净流量从负3000变成正1000。总量开始回升。
方案B,只减少流出:流入仍为1.5万,把流失从1.8万降到1.4万。净流量同样从负3000变成正1000。总量同样开始回升。
在数学上,增加4000流入和减少4000流出,对净流量的影响相同。现实中该选哪条路,要继续比较成本、难度和成功概率。
存量并不是越高越好。你希望活跃用户多、银行卡里钱多,但你不会希望信用卡欠款多、冰箱里过期食品多、待办清单上积压的事情多。模型不替你设定目标,只告诉你该通过哪些流量改变系统状态。
存量—流量模型还有一个边界:它只告诉你流量怎样改变存量,不告诉你流量为什么变化。水龙头为什么拧小了?用户为什么流失了?排放为什么下降了?这些问题,存量—流量模型回答不了。流量为什么变,需要进一步调用反馈回路模型来回答,这也是下一篇思维模型要讨论的问题。
面对一个真实问题,怎样把它拆成存量、流入和流出?五步可以照做。核心就一条:当你看到某个总量在涨或降,先把流入和流出放到同一张表里,别只盯最显眼的那条流量。
第一步:定边界和时间尺度。 你要算的是什么存量?是活跃用户、库存、现金还是员工人数?时间尺度是什么?一个月、一周还是一个季度?边界不同,流量定义也不同。同一个员工从A部门调到B部门,对B部门是流入,对A部门是流出,但对整个公司只是内部转移。本例的边界是"月度活跃用户",以下所有数字都是一个月内累计发生的状态变化量。
第二步:找出期初存量。 月初的活跃用户10万人,这是起点。没有期初存量,后面算出的净流量只能告诉你变化方向,算不出期末总量。
第三步:列全流入和流出。 不要只看最显眼的那条流入。流失、折旧、报废、失效,这些容易被忽略的流出,往往是总量下降却没人发现的原因。回到开头的场景:流入有新激活和回流两条,流出有流失一条。只看新激活,就无法完整解释总量为什么下降。
第四步:统一单位,算净流量。 存量的单位是"人""元""件",流率的单位是"人/月""元/日""件/周"。如果拿到的是流率,先乘以对应时间,换算成这个月实际发生的流入量和流出量,再跟期初存量相加减。本例统计的就是一个月内累计流入1.5万人、累计流出1.8万人,所以期末活跃用户为:10万加1.5万减1.8万等于9.7万。100万元和100万元/月不能直接相加。
第五步:测试不同干预会怎样改变存量。 分别测试增加流入、减少流出会怎样改变净流量和未来存量。模型帮你找到候选干预入口,至于哪条路成本更低、成功概率更高,要结合业务数据继续判断。
这五步不只适用于用户增长。库存管理别只看入库、同时看出库和报废;现金管理别只看收入、同时看支出和还债;客服运营别只看新工单、同时看解决速度和积压量。每个场景的逻辑都一样:先分清存量和流量,再列全流入和流出,最后算出净流量,找到可以进一步测试的干预入口。
下次看到"新增涨了20%"的汇报,先问一个问题:流失多少?净流量是正的还是负的?
总量不是由某一条流入决定的,而是由期初存量与随后累积的净流量共同形成的。你只看了流入,没看流出,账就没算完。
如果你想更系统地理解存量、流量、反馈回路和杠杆点,推荐德内拉·梅多斯的《系统之美》。
本文关于浴缸、存量积累以及改变流入和流出的解释,主要参考了这本书。梅多斯把复杂的系统动力学拆成了普通人能看懂的日常画面。
存量—流量模型(Stock-and-Flow Model)
一句话定义
存量是在某一时点已经积累的量,流量是单位时间内使存量增加或减少的速率。期末存量等于期初存量加全部流入、减全部流出,只有净流量才能决定存量是上升、稳定还是下降。
来源
福里斯特在20世纪50年代末把水平量—速率结构系统化为系统动力学的核心建模工具。梅多斯加入MIT团队后在《系统之美》中用浴缸、人口、银行账户等日常例子普及了这套概念。
调用口诀
定边界,找期初,列进出,验单位,测干预。
边界
适用于能定义边界、能计量、有明确流入流出的积累场景。模型只说流量怎样改变存量,不说流量为什么变化。
这是思维模型系列的第82篇。
如果你身边也有人只汇报新增、不汇报流失,可以把这篇文章转给他。下一次看增长,先把流入和流出放到同一张表里。
单看新增,判断不了总量往哪走。