AARRR 框架,也称为“海盗模型”或 AARRR 漏斗,是了解客户行为的经典框架。AARRR模型是一种营销和增长战略框架,用于分析和优化在线业务的关键指标。它由Dave McClure在2007年提出,被广泛应用于互联网创业公司和数字营销领域。

AARRR模型由五个关键指标组成,每个海盗指标代表一个用户行为阶段。这些海盗指标是:
1. 获取(Acquisition):有多少用户注册了您的产品/服务?
2. 激活(Activation):这些新用户是否真正使用该产品/服务?
3. 留存(Retention):激活用户会继续使用该产品/服务吗?
4. 收入(Revenue):有多少用户继续向您付费以及多少钱?
5. 推荐(Referral):用户是否喜欢该产品/服务并愿意分享它?
AARRR模型的目标是在这五个阶段中不断优化和改进,以实现持续的用户增长和收入增长。通过深入了解每个阶段的关键指标和用户行为,企业可以针对性地制定营销策略和改进产品功能,以推动业务增长。

如何构建 AARRR 海盗漏斗
1. 获取(Acquisition)
- 有多少用户注册了?
- 有多少人*载下**了该应用程序?
- 有多少用户点击了登录页面?
- 有多少独立用户访问了该网站?
- 注册转化率
获取可能是最容易定义的指标,但您跟踪的内容将取决于您正在构建的产品类型。对于电子商务网站来说,整体独立用户数是一个重要指标,但对于 B2B 产品来说,用户注册量更好。在这里添加质量指标也可能是谨慎的做法。根据理想的客户档案 (ICP) 跟踪注册情况对于避免针对错误类型的新用户进行过度优化非常重要。
人们称之为海盗模型,即与海盗所做的事情类似,实现掠夺式增长;但框架并没有规定你应该首先优化什么。
2. 激活(Activation)
- 在第一周内完成特定操作的新用户
- 使用您的核心功能的新用户
- 使用产品/网站花费 x 分钟的新用户
有些用户创建了账户,但从未使用过您的产品。跟踪激活可以帮助您区分注册问题和长期留存问题。一个良好的激活指标可以捕捉到用户在使用您的产品中获得价值时的“顿悟”时刻。这是指用户意识到您的产品对他们有益,并开始积极使用的关键阶段。通过关注激活指标,您可以更好地了解用户的转化过程,并采取措施提升用户的激活率。
3.留存(Retention)
- n 天/周/月内回来的激活用户
- 激活的用户返回并执行操作的频率
留存率是任何企业中最重要的指标之一。如果你成功实现了激活和留存,这是一个好兆头,表明你拥有了人们看重的产品。对于大多数产品而言,衡量留存率意味着定义使用间隔,即您预计保留事件发生的频率。您希望用户每天、每周或每月回来吗?您还可以跟踪无限保留,在其中跟踪用户是否/多久返回一次,而无需特定的时间间隔。
4.收入(Revenue)
- 每月经常性收入 (MRR:Monthly recurring revenue):指每个月持续生成的收入总额,通常适用于订阅模型或重复购买的产品或服务。
- 年度经常性收入 (ARR:Annual recurring revenue):指每年持续生成的收入总额,是根据月度重复收入(MRR)计算出来的,用于衡量企业的长期收入。
- 平均购物篮价值 (ABV:Average basket value):指每个购物篮或交易的平均价值,用于衡量顾客在一次购物中的平均消费金额。
- 每用户平均收入 (ARPU:Average revenue per user) 或每账户平均收入 (ARPA:Average revenue per account):指每个用户或每个账户的平均收入,用于衡量企业从每个用户或账户获得的平均收入水平。
对于 B2B SaaS 产品来说,每月经常性收入(MRR)是一个重要的指标。对于 B2C 公司,他们可能更关注每用户平均收入(ARPU),而电子商务平台可能更关注平均购物篮价值(ABV)。因此,根据业务类型和目标可以选择合适的指标来追踪和评估您的业务表现。
5. 推荐(Referral)
- 邀请同事使用您的产品的用户
- 邀请好友*载下**您的应用的用户
- 提交对您的产品/应用程序的评论的用户
还有比邀请同事或朋友使用产品更好的验证方式吗?这是一个很好的迹象,表明人们喜欢使用您的产品,并且是口碑增长的强大驱动力(也就是最好的增长)。推荐指标对于具有增长循环的产品或服务尤其重要,即当产品体验通过多个用户得到改善时,或者当朋友一起使用它时。
用Snb进行AARRR分析
使用kaggle 上数据集(https://www.kaggle.com/code/ml19hm3/tb-userdata/input) 进行demo 。数据集格式如下:
- Behavior_type: 值域为['pv', 'fav', 'buy', 'cart']

加载数据、清洗数据
importpandasaspd
importtime
data=pd.read_csv("/home/data/UserBehavior.csv",header=None,index_col=None)
data.columns=['User_Id','Item_Id','Category_Id','Behavior_type','ts']
- 时间戳转换日期和时间
data.loc[:,'ts']=data['ts'].apply(lambdax:time.strftime("%Y-%m-%d%H:%M:%S",time.localtime(x)))
data.loc[:,'Date']=data['ts'].apply(lambdax:x.split('')[0])
data.loc[:,'Time']=data['ts'].apply(lambdax:x.split('')[1])
print(data["Date"].value_counts())
- 统计日期和筛选:有时间日期段为2017-11-25 至 2017-12-03

- 筛选有效日期段的数据作为分析对象
data=data[(data["Date"]>='2017-11-25')&(data["Date"]<='2017-12-03')]
活跃度
- 每天活跃度的变化
selectDate,count(*)aspv,count(distinctUser_id)asuv,pv/uvasuv_pv_s
fromdatagroupbyDate


- 每小时的pv 活跃度
selectsubstring(Time,1,2)ashour,count(*)aspv,count(distinctUser_id)asuv,pv/uvasuv_pv_s
fromdatagroupbysubstring(Time,1,2)


- 不同用户行为下的活跃度变化
selectDate,Behavior_type,count(*)aspv,count(distinctUser_id)asuv,
pv/uvasuv_pv_s
fromdatagroupbyDate,Behavior_type


留存率
- 漏斗转化情况
- 利用dfSQL统计不同行为的总量
- 整体转化率(%):计算pv到cart、fav、buy的转化率
selectBehavior_typeas'用户行为',count(*)as'访问量',
count(*)*100/89660688as'整体转化率(%)'
fromdatagroupbyBehavior_typeorderbycount(*)desc

frompyecharts.chartsimportFunnel
frompyechartsimportoptionsasopts
funnel=Funnel().add(
series_name='整体转化率(%)',
data_pair=[list(z)forzinzip(bt_data['用户行为'],bt_data['整体转化率(%)'])],
is_selected=True,
label_opts=opts.LabelOpts(position='inside'))
funnel.render_notebook()

复购情况分析
- 用户购买次数直方图
- 复购率=购买次数大于1的用户数量/有购买行为的用户数量
selectbuy_count,count(*)ascountfrom
(selectUser_Id,count(*)as'buy_count'
fromdatawhereBehavior_type='buy'groupbyUser_Id)
groupbybuy_countorderbycountdesc


reBuy_rate=sum(buy_df[buy_df['buy_count']>1]['count'])/sum(buy_df['count'])*100
reBuy_rate

上述是利用kaggle的开放数据和SmartNoteBook进行的(AARRR海盗模型)用户行为分析的基本步骤,主要利用dfSQL、低代码组件及少量Python 进行分析,SmartNoteBook 提供简单方便的操作方式和高性能计算(整个数据集1亿条数据,dfSQL进行统计汇总有很好性能,比原生态的Pandas 操作性能提升2-3倍),希望对大家有所借鉴。下图是模型视图(流程图):
