User Funnel and Behavior Path Analysis
Skill-User-Funnel-Analysis · 14-用户分析
experimentoptimizationpricing广告与投放定价与利润WF-B 广告优化WF-F 动态定价WF-G Listing内容优化WF-H 复购增长
实现难度⭐⭐☆☆☆
业务优先级⭐⭐⭐⭐⭐
业务视角
适用角色运营负责人 / 用户增长负责人 · CMO · 产品经理
适用平台Amazon 买家分层 · DTC 站 LTV 预测 · Klaviyo/Brevo 邮件分群
什么情况下用有大量老客户,但不知道谁是高价值客户、谁快要流失;新客获取成本越来越高,老客复购却上不去
成功是什么样的用户按 RFM/LTV 分层精准触达,高价值用户留存率提升,老客贡献收入占比从 30% 提升到 50%
业务痛点
1. 解决的问题
用户从"知道品牌"到"下单购买"要经历多个步骤。
2. 核心算法逻辑
核心问题:用户从"知道品牌"到"下单购买"要经历多个步骤。每一步都有用户流失。漏斗分析回答:用户在哪个步骤流失最多?为什么?优化哪个步骤的杠杆最大?
3. 业务应用场景
业务问题:Momcozy 吸奶器详情页UV 10,000/天,但加购率只有3%,支付转化率1%。详情页是不是有问题?
| 步骤 | 用户数 | 转化率 | 流失原因分析 | |------|--------|--------|-------------| | 详情页UV | 10,000 | — | — | | 看完详情(滚动>50%)| 6,000 | 60% | 40%跳出:页面加载慢/首屏不吸引人 | | 点击"加购" | 3,000 | 30% | 30%流失:价格犹豫/信任不足 | | 进入购物车 | 2,500 | 25% | 5%流失:加购操作失败 | | 进入支付 | 1,200 | 12% | 13%流失:运费/税费意外 | | 完成支付 | 800 | 8% | 4%流失:支付方式不支持
优化优先级: 1. 首屏吸引力(40%流失):优化首屏视频和核心卖点展示 2. 价格信任(30%流失):增加用户评价、媒体报道、信任徽章 3. 运费透明(13%流失):详情页直接显示"包邮"或运费计算器
4. 输入数据要求
请查看原始代码模板获取输入规格。
5. 输出结果
请查看原始代码模板获取输出规格。
6. 业务价值 / ROI
- ROI:详情页转化率提升1-2个百分点,日增收数千到数万
- 难度:⭐⭐☆☆☆(2/5)— 主要是数据处理和可视化
- 优先级:⭐⭐⭐⭐⭐(5/5)— 优化用户体验的入口工具
7. 代码模板
代码块数量:2 · 路径:未检测到
"""
User Funnel and Behavior Path Analysis — 用户漏斗与行为路径分析
"""
import numpy as np
import pandas as pd
from collections import Counter, defaultdict
class FunnelAnalyzer:
"""漏斗分析器"""
def __init__(self, step_names):
"""
Args:
step_names: 漏斗步骤名称列表,如 ['首页', '详情页', '加购', '支付', '完成']
"""
self.steps = step_names
def analyze(self, user_paths):
"""
分析漏斗
Args:
user_paths: list of lists, each inner list is a user's step sequence
"""
# 统计每步的人数
step_counts = Counter()
for path in user_paths:
for step in path:
step_counts[step] += 1
# 计算转化率
results = []
for i, step in enumerate(self.steps):
count = step_counts.get(step, 0)
prev_count = step_counts.get(self.steps[i-1], count) if i > 0 else count
conversion_rate = count / prev_count if prev_count > 0 else 0
overall_rate = count / step_counts.get(self.steps[0], 1) if i > 0 else 1.0
results.append({
'step': step,
'users': count,
'step_conversion': conversion_rate,
'overall_conversion': overall_rate,
'dropoff': 1 - conversion_rate if i > 0 else 0
})
return pd.DataFrame(results)
def dropoff_analysis(self, user_paths, step_from, step_to):
"""
分析从step_from到step_to的流失用户去了哪里
"""
dropoff_users = []
for path in user_paths:
if step_from in path and step_to not in path[path.index(step_from):]:
# 用户到了step_from但没到step_to
idx = path.index(step_from)
next_step = path[idx + 1] if idx + 1 < len(path) else '退出'
8. 论文来源
未自动抽取;请查看原始 Skill 卡片。