LTV(Life Time Ⅴalue)指的是某个用户在生命周期内为该游戏应用创造的收入总计,可以看成是一个长期累计的ARPU值。用户的生命周期是指一个用户从第一次启动游戏应用,到最后一次启动游戏应用之间的周期。 作用:
- 衡量用户的质量(付费能力)
- 计算投资回报率:ROI = LTV / CAC,CAC(Customer Acquisition Cost)是获客成本,
ROI>1
,我们可以理解为收回了获客成本;业内一般追求ROI≥3
- 以及基于上述两点延展开的如 渠道用户质量对比、不同用户群质量对比,以此再进行投放计划调整或者产品内容推送优化等等
计算历史LTV
LT(Life Time)就是用户生命周期,如果我们要计算N日-LTV
,则直接将公式中的LT改为N日即可。
举个栗子:某日新增用户100,首日他们充值200元,则首日-LTV = 200/100 = 2元
;第2天充值300元,则2日-LTV = (200 300) / 100 = 5元
,以此类推...
SQL参考1:计算每日LTV
代码语言:javascript复制select reg_date,
sum(case when date_diff(thedate, reg_date)=0 then money else null end)/count(distinct vopenid) ltv1,
sum(case when date_diff(thedate, reg_date)<=6 and date_diff(now_date, reg_date)>=6 then money else null end)/count(distinct vopenid) ltv7
from
(
select reg_date, sum(money) as money, vopenid, thedate, max(thedate) as now_date from xxx group by vopenid, thedate, reg_date
)
group by reg_date
结果:
注册日期 | 1日LTV2 | 7日LTV |
---|---|---|
20210101 | 7 | 9 |
20210102 | 8 | 10 |
20210103 | 8 | 10 |
SQL参考2:计算加权LTV(多日)
代码语言:javascript复制select count(distinct vopenid) as cnt,
sum(case when date_diff(thedate, reg_date)=0 then money else null end)/count(distinct vopenid) ltv1,
sum(case when date_diff(thedate, reg_date)<=6 and date_diff(now_date, reg_date)>=6 then money else null end)/count(distinct vopenid) ltv7
from
(
select reg_date, sum(money) as money, vopenid, thedate, max(thedate) as now_date from xxx group by vopenid, thedate, reg_date where reg_date<='20210103' and reg_date>='20210101' and thedate<='20210110' and thedate>='20210101'
)
结果:
注册人数 | 1日LTV | 7日LTV |
---|---|---|
132432 | 8 | 9 |
预估未来LTV
对于当天的充值收入来说只可能来自当天留存用户,而当天留存用户的人均付费金额为arpu,注意这里的arpu是指留存用户的arpu:
等价于
LTV = 1*首日apru 第1日留存率*第1日apru ..
如果我们可以根据历史数据预估后续留存率
及对应留存日的arpu
,那么就可以预估LTV
了。
LT 是用户生命周期,
等价于:
假设arpu为常数,则可LTV = LT * apru估算LTV
同样可用python或excel,拟合并预测未来的留存率,从而求得LT,并预测未来LTV。