YeSoul Fitness · 课中体验升级

全景方案

10个方向 · 每个独立成立 · 组合产生飞轮效应

我们要解决什么

真人课现状 = 一个播放的视频 + 200人匿名排行榜。和 YouTube 免费健身视频没有本质区别。

单车完课率 ~90%——课程本身 OK,进来的人能练完。但用户练完后"明天还来不来"是核心挑战。我们要的是留存

DAU
~5,000
同时在线功能不可行
心率设备覆盖
~10%
所有功能以踏频/功率驱动
产品形态
App + 设备屏
手机DP投屏到设备自带屏幕
⚠️ 功率Zone替代假设
本方案中涉及"Zone"的功能均基于功率Zone(设备传感器,100%覆盖)。已有证据多来自心率Zone场景,YeSoul用功率Zone替代。短期假设:功率Zone可近似替代心率Zone的训练强度分层。需A/B验证后确认。

方向全景

🎨 让每节课更好
沉浸模式
踏频/功率驱动屏幕视觉氛围——让"课程在回应你"
5周 · 3人
用屏幕边缘光晕实时映射训练强度,让状态可见

问题:课中界面同时显示踏频、功率、Zone、进度条四组数字,用户在高强度段"只盯数字、脱离状态感"。没有任何视觉元素传达"现在处于哪个训练层"的整体感知。

热身段,踏频60——屏幕边缘浮着安静的深蓝光晕。教练喊加阻力,踏频推到80——光晕从蓝渐变为绿,视觉开始加速。屏幕在"回应"你的腿。

冲刺段,踏频破100,整个屏幕边缘脉动橙光。功率破个人记录的瞬间,全屏爆发效果。你没看任何数字,但你知道自己刚才做到了什么。

课后,数字才完整展示——课中你只看到了颜色和光。

为什么有效

BCHI 2025参与时间 2.4x AAJPM 2023 RCT12周坚持率 +23% BMyzone n=1,248留存 37%→64%
  • 数字把人从心流中拉出来。沉浸模式走相反方向:颜色替代数字,维持 flow state。
  • "课程在回应我"。当前教练视频是单向输出——沉浸模式让屏幕"因你而变",这是YouTube做不到的。
  • 100%用户覆盖。踏频/功率由设备传感器提供,不依赖外接设备。
🎯 目标
将课中"低头读数"行为显著降低,以完课率和沉浸体验反馈作为衡量
💡 为什么这个方案
替代方案"减少数字显示"会遭用户抗议,"语音播报"增加认知负担。光晕是加法,不破坏现有布局,100%用户覆盖
⚠️ 关键假设:用户对颜色-强度映射有直觉理解;如需学习成本则加课前10秒图例
🚫 Kill Criteria:主动关闭率>40%,或课中退出率不降反升

用户旅程

  • 开启:设置页开关,默认关闭。首次开启时展示15秒预览动画+一句说明
  • 课前:进入课程后自动激活(如已开启),无需额外操作
  • 课中:踏频/功率驱动屏幕边缘视觉,Zone驱动颜色。PR突破时全屏爆发效果
  • 课后:结算页展示"沉浸模式回放"——30秒浓缩版颜色变化曲线(可选,V2)
  • 下次:记住上次选择的视觉形态,无需重新设置

5种视觉形态方向(待选型)

  • 粒子宇宙 — 屏幕边缘粒子随踏频流动,Zone驱动颜色。科幻感。
  • 极光呼吸 — 有机极光光带缓慢脉动。柔和高端,不抢焦点。
  • 几何脉搏 — 同心圆环随踏频扩散脉动。现代极简。
  • 隧道聚焦 — 四周暗角随强度收窄,模拟运动中"隧道视觉"效应。
  • 极简指示灯 — 仅底部3px色带,其余全隐藏。禅定极致。

MVP 边界

  • ✅ 做:5档Zone颜色映射 + 1种视觉形态(粒子宇宙或极光呼吸)+ PR爆发效果 + App端
  • ❌ 不做:多形态切换、DP端适配、课后回放、自定义颜色
  • 选型方式:内部设计评审选1种 → 灰度AB验证用户偏好

成功指标

  • 主指标:沉浸模式开启用户 vs 未开启用户,7日留存差异
  • 辅助:完课率、课中暂停次数、NPS打分
  • 成功门槛:7日留存差异 >3%(p<0.05),4周观测期
  • 最小验证切片:仅"粒子宇宙"形态 + 仅App端 + 10%用户灰度 → 1周出数据

实现规模

工期
5 周
团队
1设计 + 1App + 1DP
MVP
5档配色 + 1形态 + PR爆发

边界与降级

  • 低端设备:检测帧率<30fps → 自动降级为纯颜色渐变(无粒子),性能预算: 动画不超过主线程5%
  • 传感器断连:保持最后已知Zone颜色,不闪烁不消失
  • 自由骑行:正常工作(有踏频/功率就能驱动)
  • 短课<10分钟:正常支持

风险

不同设备/投屏尺寸视觉差异——MVP固定参数,只做App端。DP端留Phase 2+。

低端设备帧率——GPU加速Canvas,低端降级为颜色渐变。

音乐节拍同步
踏频匹配BPM触发Combo反馈——唯一有"降疲劳感"效果的方向
5周 · 3人
踩中BPM给即时反馈,把骑行与音乐节奏对齐

问题:课中音乐仅作背景播放,踏频与BPM无任何连接。用户错过了最容易实现的"心流节奏感"——健身平台用研显示这是留存最强正向体验之一。

歌响起,BPM=80。屏幕边缘出现微弱节拍脉冲线。踏频提到80——踩中节拍瞬间,屏幕亮绿+"叮"。连续踩中,Combo x16,进入金色"节奏锁定"。

你不自觉地跟着音乐踩,像在"演奏"这首歌。Combo断了安静重置——没有惩罚,只有重新踩中的爽感。

课后:Max Combo 47,匹配率72%(上次65%)。

为什么有效

A运动心理学荟萃RPE -10~20% CTempo App(行业类比)6月留存 81%
  • 降RPE = 练得更久还觉得轻松。唯一有"降低感知疲劳"效果的方向。
  • 不是音游。Peloton Lanebreak失败因固定曲库+独立模式。这是叠加在真人课上的轻量层,用课程自带音乐。
🎯 目标
课中音乐匹配率达50%以上的用户,次日留存率对比对照组提升≥8%
💡 为什么这个方案
替代"强制踏频追踪"强制感强,"仅课后展示"丧失课中心流。当前方案保持自愿性+即时反馈+断了无惩罚
⚠️ 关键假设:课程BPM可批量标注或算法提取;若元数据缺失则需分批上线
🚫 Kill Criteria:功能关闭率>35%,或BPM检测准确率<80%

用户旅程

  • 开启:设置页开关。首次开启展示"踩中节拍"教学动画
  • 课前:课程加载时检测是否有BPM标注数据,无标注则功能不激活(静默)
  • 课中:屏幕边缘节拍脉冲线 + Combo计数器。连续踩中=金色锁定态。断开=安静归零
  • 课后:结算页展示 Max Combo、整体匹配率、与上次同课对比(如有)
  • 下次:首页可看到"节拍高手"历史记录,课程列表标注"已支持节拍同步"

MVP 边界

  • ✅ 做:边缘脉冲线 + Combo计数 + 课后统计(Max Combo/匹配率)+ 首批20节课BPM标注
  • ❌ 不做:自有曲库接入、Combo奖励积分联动、多BPM段自适应、排行榜
  • 判定窗口:±5 RPM宽松窗口(鼓励而非惩罚)

成功指标

  • 主指标:节拍同步开启用户完课率 vs 未开启用户
  • 辅助:课中平均踏频稳定性、自评RPE变化、功能开启率/关闭率
  • 成功门槛:完课率差异 >2% 或 RPE自评下降 >5%,4周观测期
  • 最小验证切片:5节固定BPM课程(无变速段)+ 仅Combo计数(无脉冲线)→ 3天出基础数据

前置条件

  • BPM标注pipeline:音频分析自动检测 + 人工校准。技术预研需先于开发启动
  • 变速BPM歌曲处理:教练口令段BPM可能不稳定 → MVP只选BPM稳定的课程
  • 踏频传感器采样频率:需确认能支持±5RPM实时判定精度

⚠️ 高风险前置研究:自有曲库接入

MVP 阶段仅基于课程已授权音乐做节拍匹配——无额外版权风险。
自有曲库(Apple Music / Spotify 接入)涉及版权授权和技术对接,属高风险研究项,不纳入 MVP 范围。

实现规模

工期
5 周(不含BPM pipeline预研)
前置
BPM标注pipeline + 20节课标注
判定
±5 RPM宽松窗口

边界与降级

  • 无BPM标注的课程:功能静默不激活,不影响正常体验
  • 传感器断连:Combo暂停计数,恢复后继续(不清零)
  • 教练口令段:BPM标注可标记"口令段",该段暂停匹配判定
训练地形图
课程强度起伏可视化——"看得见前方有什么"的掌控感
3周 · 2人
把课程时间轴变成地形线,随时知道"还剩多少"

问题:用户中断率最高点出现在课程中段(15-20分钟),高频反馈词"不知道还要撑多久"。当前进度条只显示时间百分比,不传达接下来的强度节奏。

屏幕底部出现一条起伏的地形线——热身是平地,前方两座"山"是爬坡和冲刺段。你一眼看到"前方有什么"。

骑到爬坡段前5秒,即将到来的"山坡"红色预警——你深吸一口气。翻过山顶,"山坡"变绿 ✓。

教练说"最后一组冲刺"——你看地形图确认:确实是最后一座山了。"看得见终点"的掌控感让你咬牙冲完。

为什么有效

  • "还剩多久"是课中最常见的心理负担。地形图把未知变成已知——预期管理是完课率最大的杠杆。
  • 极低投入极高实用价值。3周开发,2人团队。替代当前无差别的播放进度条。
🎯 目标
课程中段(进度35%-65%)的退出率降低≥15%
💡 为什么这个方案
"剩余时间大字提示"在高强度段反而增加焦虑,"语音提示"打断节奏。地形图是空间化预期管理——提供信息但不催促
⚠️ 关键假设:课程强度节奏数据已结构化标注;若非结构化存储需先做元数据补齐
🚫 Kill Criteria:完课率无差异且退出率也无变化(2周判定)

用户旅程

  • 课前:进入课程即可看到完整地形概览("今天的路线")
  • 课中:底部地形条实时推进。即将到达高强度段时红色预警。翻过后变绿 ✓
  • 课后:结算页展示地形全图 + 你的功率叠加曲线("你在哪段最强")
  • 未标注课程:显示普通进度条(当前体验),不显示地形

MVP 边界

  • ✅ 做:地形可视化 + 实时进度推进 + 预警变色 + 首批50节课标注
  • ❌ 不做:课后功率叠加回放、自由骑行地形生成、地形难度评分
  • 标注覆盖:50节高频课 ≈ ~80%使用量

成功指标

  • 主指标:有地形图课程 vs 无地形图课程的完课率差异
  • 辅助:高强度段退出率变化、用户满意度NPS
  • 成功门槛:完课率差异 >2%,2周观测期
  • 最小验证切片:10节最热门课标注 + 仅展示地形线(无预警变色)→ 1周出数据

前置条件

  • 课程段落标注:教研团队人工标注50节课的时间轴段落+强度等级
  • 标注工作量:约50×30分钟=25小时人工,需教研团队配合

实现规模

工期
3 周(开发)+ 标注并行
标注
首批50节高频课
覆盖
~80%使用量

边界与降级

  • 未标注课程:显示普通播放进度条,与当前体验一致
  • 教练临时加减段:地形图基于预标注,不会实时调整。如偏差明显可在下版本加"动态校准"
  • 自由骑行:无预设课程结构,不显示地形图
  • 短课<10分钟:正常显示(地形更简单)
投屏分屏
设备屏全沉浸 + 手机仪表盘——把硬件壁垒转化为体验壁垒
3周 · 3人
设备屏显视频,手机显数据,双屏解耦提升沉浸

问题:单屏方案中教练视频和训练数据同屏竞争空间,用户注意力被强制切分。已连接DP线的用户有硬件能力解耦两者,但软件未利用。

DP线连上设备屏。两块屏各司其职:

设备屏(正前方):全屏教练视频,零数字遮挡。沉浸模式的光晕效果铺满屏幕。
手机(车把支架):深色仪表盘——踏频、功率、Zone、地形进度条。低头一瞥即可。

抬头沉浸,低头读数。

为什么有效

  • DP投屏是硬件壁垒。纯App竞品做不到双屏体验——分屏把"镜像"升级为"双座舱"。
  • 卖设备的理由。分屏体验远超手机单屏=用户购买/升级设备的动力。
🎯 目标
投屏用户完课率对比单屏提升≥5%;分屏模式周使用率≥60%
💡 为什么这个方案
"画中画"方案角标仍分散注意力。完全分屏是信息架构层面的隔离,彻底解决竞争关系
⚠️ 关键假设:目标用户有意愿连接DP线;若连接率<15%,受益规模有限需评估ROI
🚫 Kill Criteria:DP投屏用户占比<15%(上线前验证),或分屏使用率<30%

用户旅程

  • 触发:检测到DP线连接 → 自动弹出"是否切换分屏模式"提示
  • 课中·设备屏:全屏教练视频 + 沉浸模式视觉(如已开启),零数字遮挡
  • 课中·手机:深色仪表盘——踏频、功率、Zone、地形进度条、Combo(如开启)
  • DP断连:自动回退单屏模式,手机恢复默认课中UI
  • 课后:回到单屏模式,正常展示结算页

MVP 边界

  • ✅ 做:设备屏全屏视频 + 手机仪表盘(踏频/功率/Zone/进度条)
  • ❌ 不做:手机端自定义仪表盘布局、非DP投屏(Chromecast/AirPlay)、设备屏独立渲染
  • 设备屏渲染:DP镜像 → 通过App端画面分区实现(设备屏区域=视频,手机区域=仪表盘)

成功指标

  • 主指标:分屏模式使用者 7日留存 vs 单屏用户
  • 辅助:分屏模式激活率、课中手机交互频率、完课率
  • 成功门槛:分屏用户留存 >单屏 5%,4周观测期
  • 最小验证切片:仅"设备屏全屏视频+手机显示踏频/功率"→ 无需沉浸模式联动

前置条件

  • ⚠️ 投屏使用率调研:需先确认>20%用户使用DP投屏,否则降优先级
  • DP投屏技术约束:延迟、分辨率适配、手机端性能影响需技术评审

实现规模

工期
3 周(不含投屏调研)
触发
检测DP连接自动切换
前置
⚠️ 投屏使用率>20%

边界与降级

  • DP断连:自动回退单屏,无卡顿无闪屏
  • 手机来电/锁屏:设备屏暂停视频,恢复后继续
  • 不同设备屏分辨率:MVP只支持YeSoul自有设备的标准分辨率
📈 让进步看得见
训练分 + 弹性Streak
努力导向积分 + 不惩罚中断的连续训练——跨课程积累意义
3周 · 3人
用积分量化每节课价值,用Freeze托住打卡不断链

问题:完课率90%但次日留存低——用户"练完了但不知道进步在哪"。每次课程是孤立事件,没有可见的积累感。竞品数据显示带Streak机制的用户7日留存高22-35%。

课后结算:今日训练分 +82。Zone 3+时间35分→+52,踏频达标率78%→+18,完课→+12。

Bonus:连续Zone 4保持3分钟→+8,冲刺段踏频100+→+7。

本周 408/500。🔥连续6天。周三用了❄️Freeze——没来但Streak不断。再骑两次就完成周目标。

为什么有效

BMyzone n=1,248留存 37%→64% BOTF Splat12月留存 +18% CDuolingo(跨行业参考)Streak贡献 25-35% DAU
  • 努力导向 > 表现导向。Zone时间加权——努力就有分,和别人体能无关。
  • 弹性Streak。无弹性Streak 12周后留存反而-27%。Freeze让中断不焦虑。
🎯 目标
周留存率(7日内≥3次训练)提升至40%+;周训练频次>对照组0.5次/周
💡 为什么这个方案
纯Streak在缺课时产生"断了算了"心理——最大留存杀手。Freeze是Duolingo/Nike验证的修复机制。积分明细保证透明性
⚠️ 关键假设:积分规则足够透明且公平感强;若某维度被认为不合理会带来挫败感
🚫 Kill Criteria:8周后训练频次差异<0.2次/周,或结算页停留率<20%

用户旅程

  • 首次:完成第1课后解锁训练分系统,展示积分规则引导卡
  • 课中:课中不实时显示积分(避免分心),仅在课后结算
  • 课后:结算动画——逐项展开得分明细(Zone时间→达标率→完课→Bonus)
  • 首页:周进度环(408/500)+ Streak火焰 + Freeze状态
  • 下次:"再骑2次完成周目标"——明确的下一步行动

积分公式

训练分 = Zone时间加权 + 达标率bonus + 完课加成 + 超额表现bonus

Zone 1=1分/min, Zone 2=1.5, Zone 3=2, Zone 4=2.5, Zone 5=3。基于功率Zone,100%用户覆盖。

MVP 边界

  • ✅ 做:积分计算+课后结算页+首页周进度+Streak+Freeze
  • ❌ 不做:积分商城/兑换、社交分享、个性化周目标、排行榜
  • 积分仅展示意义,不可"花费"——V2再考虑积分用途

成功指标

  • 主指标:周训练频次变化(训练分用户 vs 对照组)
  • 辅助:Streak 4周+用户比例、Freeze使用率、周目标完成率
  • 成功门槛:周训练频次 >对照组 0.5次/周,8周观测期
  • 最小验证切片:仅"课后积分展示+首页周进度"(无Streak/Freeze)→ 2周出数据

弹性Streak

  • 每周自动获得1个Freeze,最多存2个
  • Freeze自动使用,不需要手动操作
  • 不显示"中断",只显示"用了Freeze"
  • 周目标(非日目标):500分/周 ≈ 正常训练5次(假设30-45分钟/次,中等强度)

边界与降级

  • 传感器断连:断连期间按Zone 1计分(保底不清零)
  • 短课<10分钟:正常计分但不触发完课加成
  • 暂停/拖进度条:暂停时间不计分,拖进度条段不计分
  • 积分膨胀:Zone加权已天然控制——高Zone难维持,高分难刷。V2再考虑动态调整
  • 周中新注册:首周周目标按剩余天数等比缩减
Ghost 自我对比
课中实时看到上次自己的幽灵轨迹——安全的竞技
4周 · 3人
用同课程上次数据的"幽灵"让用户和自己比赛

问题:复骑同课用户没有参照物看到"这次和上次有什么区别"。排行榜基于与他人比较,对中等用户激励有限——研究显示自我对比对内在动机的正向影响更稳定。

第3次骑同一节课。底部进度轨道两个光点:🔵你👻上次的你

第15分钟你状态好——蓝点拉开,超过Ghost,闪一道绿光。第30分钟你累了,Ghost追上来。你看着"自己"就要追平——咬牙加速。

课后:功率142W vs 135W(+5.2%),超越Ghost 71%时间。你从没在排行榜前进过,但你看到了自己在进步。

为什么有效

  • 进步是最强的留存驱动。Ghost让"进步"从抽象数字变成动态可视的。
  • 和自己比永远安全。排行榜底部78%用户被去动力化——Ghost消除这个问题。
D⚠️ 前置验证课程复骑率 ZwiftGhost模式 StravaMatched Runs
🎯 目标
有Ghost的课程复骑率提升≥25%;复骑时平均功率较前次提升≥3%
💡 为什么这个方案
"历史最佳标注线"是静态无动态感,"好友Ghost"需社交链冷启动难。自我Ghost数据天然存在,无冷启动问题
⚠️ 关键假设:同课复骑频率足够(≥2次);需先验证复骑率基线,两者有相互依赖
🚫 Kill Criteria:前置验证:复骑率<15%则暂停;或4周后差异<10%

用户旅程

  • 首次:第1次骑某课无Ghost → 正常骑行。课后提示"下次再骑这节课,你会看到今天的自己"
  • 第2次+:课程加载时提示"Ghost已就绪" → 底部进度轨道出现双光点
  • 课中:🔵你 vs 👻上次你。超越时闪绿光+微震动,被追上时轻微红色脉冲
  • 课后:对比卡——平均功率差异、超越Ghost时间占比、进步幅度
  • 下次:Ghost自动更新为最近一次记录

MVP 边界

  • ✅ 做:进度轨道双光点 + 超越/被追反馈 + 课后对比卡
  • ❌ 不做:Ghost难度选择("上次最佳"vs"上次平均")、社交Ghost、Ghost回放视频
  • 两档设计:同课优先无记录则同类型+相近时长最近一次

成功指标

  • 主指标:有Ghost课程的复骑率 vs 无Ghost课程
  • 辅助:课后对比卡查看率、功率环比变化趋势
  • 成功门槛:复骑率提升 >20%(相对值),4周观测期
  • 最小验证切片:仅"课后对比卡"(无课中实时双光点)→ 1周出数据

前置条件

  • ⚠️ 课程复骑率验证:需先确认用户复骑行为的基线比例
  • 分钟级功率序列存储:当前是否已存储?如未存储需先建数据pipeline
  • "同类型"匹配逻辑:课程类型标签 + 时长差异<5分钟 → 匹配

实现规模

工期
4 周
数据
分钟级功率序列
MVP
进度轨道 + 双光点 + 对比卡

边界与降级

  • 无历史数据:Ghost不显示,正常骑行体验。课后提示"下次骑这节课会解锁Ghost"
  • 被Ghost大幅碾压:如差距>30%,提示"今天状态不同,专注当下" → 淡化对比
  • 传感器断连:Ghost轨迹暂停推进,恢复后继续
  • 暂停/中途退出:对比数据按实际骑行时间计算,暂停时间不算
赛季制
6周一赛季+新主题——让同一套机制每6周"感觉是新的"
3周 · 2人
6周一赛季,用主题叙事把训练变成阶段性征途

问题:短期(每日打卡)和长期(年度总量)之间缺"中期目标",月中进入"目标感消失"的平台期。赛季制是游戏行业成熟的中期驱动机制,4-8周与健身习惯养成周期高度吻合。

🏔️ 赛季2·阿尔卑斯征途(第3周/共6周)。进度 3200/6000。铜章已获得,银章进行中。倒计时22天。

6周后赛季结算:训练18次,勋章🥈银。

新赛季预告:赛季3·热带海岸线🌴——新主题、新视觉。赛季进度重置,终身训练记录和勋章永久保留。

为什么有效

CFortnite(跨行业参考)赛季更新 日活+25-35% BPeloton挑战D30 +15%+
  • 防机制疲劳。积分体系运行超3个月就"重复"。赛季每6周刷新。
  • 倒计时 > 无限积累。"还有22天拿银章"比"总分5800"更有行动力。
🎯 目标
赛季期间周活留存率比对照组提升≥15%;赛季完成率≥30%
💡 为什么这个方案
"永续排行榜"头部效应挤压中尾部,"每月挑战"周期太短无法承载习惯曲线。6周提供叙事纵深+阶段勋章降低全程门槛
⚠️ 关键假设:用户对地理叙事主题有情感共鸣;若冷淡需强化内容侧
🚫 Kill Criteria:训练频次差异<0.15次/周,或赛季结束后留存骤降>5pp

用户旅程

  • 赛季开始:首页Banner更新 → 新主题名称+视觉 + 赛季目标介绍
  • 赛季中:每课训练分自动累加赛季进度。首页进度条+倒计时+下一档距离
  • 赛季结束:结算动画——勋章颁发(铜/银/金)+ 本赛季数据回顾
  • 赛季间:无间隔,新赛季立即开始。进度重置,勋章永久保留
  • 中途加入:按剩余天数等比降低铜银金门槛,不惩罚晚入场

MVP 边界

  • ✅ 做:赛季进度+铜银金三档+勋章+首页Banner+历史赛季回顾
  • ❌ 不做:赛季排行榜、赛季专属课程、赛季通行证/付费奖励、赛季主题影响课中UI
  • 门槛示例:铜=2000分(~训练8次)、银=4000分(~16次)、金=5500分(~22次,6周内高频)

成功指标

  • 主指标:赛季用户 vs 对照组,6周内周均训练频次
  • 辅助:赛季完成率(铜/银/金各档)、赛季末最后一周训练频次(是否冲刺效应)
  • 成功门槛:周均训练频次 >对照组 0.3次,观测1个完整赛季(6周)
  • 最小验证切片:仅首页赛季Banner+进度条(无勋章无结算动画)→ 验证用户对赛季概念的反应

赛季框架

  • 6周一赛季,铜/银/金三档成就
  • 赛季主题 = 名称+配色方案(影响首页视觉,不影响课中)
  • 训练分推进赛季进度(每课得分自动累加)
  • 勋章永久保留 + 历史赛季可回顾 + 可分享

依赖关系

硬依赖训练分系统——赛季进度由训练分驱动。如果训练分方向不做,赛季制需改为"训练次数"驱动(可行但激励效果弱)。

运营成本

主题 ≠ 新内容——每赛季需要:1个主题名+1套配色(设计师半天)+门槛数字调整。内容团队负担极小。

边界与降级

  • 赛季中途新注册:门槛按剩余天数等比缩减,保证公平体验
  • 用户连续缺席整赛季:不处罚,下赛季正常参与。勋章收藏区显示"未参与"灰色占位
  • 赛季末"冲刺焦虑":差距太大时(<50%进度+剩余<1周),建议关注"下赛季"而非冲刺
🔁 让明天还想来
叙事/故事化
"我想知道下一集发生什么"——好奇心驱动替代意志力驱动
2-12周分阶段
把课程包装成冒险,用进度叙事替代时间进度

问题:课程命名"45分钟燃脂骑行"是参数描述不是理由。研究显示叙事框架能将任务完成率提升18-27%。课中仅显示时间进度条,感召是"还剩X分钟"而非"还有X就到了"。

你打开"环法挑战赛·第3站"。课名不叫"45分钟燃脂骑行"而叫"阿尔卑斯山口突围"。进度条显示的不是时间而是"距山顶1.2km"。

教练不说话的间歇,旁白传来:"前方风速加大。队长在对讲机里说:'咬住!翻过去就是下坡!'"

课程结束:"第3站完成。下一站:米兰平原冲刺。"

进阶形态:参考赛博徒步(cyberhiking.com)——你的功率/踏频就是"选择",不同表现触发不同故事分支和结局。

为什么有效

BUCL / Zombies Run30天留存 +30-40% CNetflix(跨行业参考)>3集用户 30天留存 4x D叙事降RPE(方向性参考)感知疲劳可能降低,因人而异
  • 把"该不该练"变成"想知道下一集"。决策从意志力驱动变成好奇心驱动。
  • 不改教练课本身。叙事是叠加层——不重拍视频,不换教练。
🎯 目标
叙事课程完课率比参数命名课程高≥5%;续集打开率≥40%
💡 为什么这个方案
"视频叙事"制作成本高,"纯文字剧情"割裂感强。在现有课程上叠加叙事层是最低增量成本方案
⚠️ 关键假设:旁白时机需与课程节点精确绑定,需内容团队标注;资源有限时文本替代语音
🚫 Kill Criteria:续集打开率<25%,或系列完成率<10%

用户旅程

  • 选课:课程列表出现"系列"标签 — "环法挑战赛 · 第3站/共8站"
  • 课前:3秒叙事引入卡——"上站回顾:你在山区突围成功。本站:米兰平原冲刺"
  • 课中:进度条显示"距终点1.2km"而非"剩余15:00"。教练间歇段旁白插入(V2)
  • 课后:叙事钩子——"第3站完成✓ 下一站:终点冲刺。继续?"
  • 下次:首页"我的故事进度"卡片——已完成3/8站,系列进度可视化

四种形态(从轻到重,分阶段验证)

  • 形态1:纯文案包装(2周) — 改课程名/进度文案,验证用户接受度
  • 形态2:课间串联(+2周) — 课后叙事钩子"明天继续?"
  • 形态3:间歇音频叙事(+6周) — 教练静默间歇插入旁白,主打形态
  • 形态4:分支叙事(+12周) — 运动数据驱动分支+多结局(参考cyberhiking),长线差异化

MVP 边界(= 形态1+2)

  • ✅ 做:课程名叙事化 + 进度文案替换 + 课后钩子 + 首页系列进度
  • ❌ 不做:音频旁白、分支叙事、原创故事内容制作、多语言适配
  • 首批系列:2个系列 × 5-8节课("环法挑战赛"+"峡谷探险"),用现有课程重新包装

成功指标

  • 主指标:系列课程的续集打开率(看了第1站是否来第2站)
  • 辅助:系列课程 vs 独立课程的7日留存差异、用户反馈("叙事有帮助"比例)
  • 成功门槛:续集打开率 >40%,4周观测期
  • 最小验证切片:1个系列(5节课)仅改名称+课后钩子 → 2周出数据

风险(此方向风险最大)

  • 用户接受度:部分用户可能觉得叙事"幼稚"或"干扰"→ 可关闭,且形态1仅改文案不侵入体验
  • 文化适配:"环法"主题对非骑行爱好者或非欧美市场可能无感 → 首批测试2个不同主题对比
  • 音频制作成本:形态3需脚本+配音+后期,每系列制作成本不低 → 形态1/2验证通过后再投入
  • 教练课节奏冲突:音频只插入教练静默间歇,不与口令重叠

边界与降级

  • 不喜欢叙事:设置页可关闭,关闭后显示原始课程名和标准进度条
  • 跳过中间某集:允许跳集,叙事卡片标注"你跳过了第X站"并简要回顾
  • 非系列课程:不显示叙事元素,体验与当前一致

推荐路线:先形态1+2验证(4周出数据),通过后再投形态3音频叙事(+6周)。

认知微层
课前/课后15秒科学提示——"为什么练"的意义感
3周 · 2人
课前课后各15秒知识卡,把每节课变成知识积累

问题:约40%用户对训练原理了解较少,练完不知道"刚才练了什么",缺乏认知成就感。长期"不知道进步在哪"是低留存深层原因。

课前15秒:💡 部分研究显示,HIIT训练后短时间内静息代谢率有所提升(因人而异)。你今天选了HIIT课——每一分钟都在为身体充值。

课后15秒:📊 Zone 3+时间18分钟——高质量有氧核心时段。过去4周Zone 3累计时间↑23%。建议:下次多守住2分钟。

你不只知道"练了多少"——你知道"为什么练""这些数字意味着什么"

为什么有效

  • "为什么练"比"练了多少"更重要。理解意义后,训练从执行变成有意识的投资。
  • 极低成本。只需课前/课后各一个文字卡片,3秒自动淡出不阻塞流程。
🎯 目标
30日留存率比对照组高≥5%;主动关闭率<20%
💡 为什么这个方案
"完整训练报告页"打开率低信息过载,"知识体系"工程量大。15秒卡片利用课前/课后等待窗口,低摩擦高触达
⚠️ 关键假设:课后趋势对比需30天历史数据;新用户前30天降级为通用内容卡
🚫 Kill Criteria:关闭率>30%,或课前跳过率>80%

内容示例

课程类型课前课后
HIIT部分研究显示训练后短时间内代谢有所提升Zone 4 X分钟→高强度时段达标
稳态燃脂部分研究显示低强度有助有氧基础Zone 2累计Y分→有氧基础训练时长达标
力量部分研究显示阻力训练促进肌肉适应阻力比上次高Z%→渐进超负荷
恢复部分研究显示主动恢复有助于运动后恢复平均功率Zone 1-2→恢复质量良好

用户旅程

  • 课前:倒计时页面出现15秒知识卡 → 自动淡出 → 课程开始
  • 课中:不打扰
  • 课后:结算页顶部15秒提示卡——个性化数据+科学解释+建议
  • 首次:首次出现时底部小字"科学提示·可在设置中关闭"
  • 重复:30条内容池轮播,用户看完一轮后标记"你已看过所有提示"并暂停2周

MVP 边界

  • ✅ 做:课前知识卡+课后数据提示+30条内容池+可关闭
  • ❌ 不做:个性化推荐算法、用户互动(点赞/收藏)、内容分享、视频化
  • 个性化仅限"趋势对比"——"过去4周你的Zone 3时间↑23%"(基于简单统计)

成功指标

  • 主指标:知识卡开启用户 vs 关闭用户,30日留存差异
  • 辅助:主动关闭率(<20%为健康)、课后提示卡查看时长
  • 成功门槛:30日留存差异 >2%,主动关闭率 <20%
  • 最小验证切片:仅课前知识卡(无课后个性化)+ 10条内容 → 1周出关闭率数据

首批30条内容池+个性化趋势对比。3周,2人。

边界与降级

  • 内容池耗尽:看完30条后暂停2周,2周后重新轮播(加"回顾"标签)
  • 用户频繁跳过:连续5次课前快速跳过 → 自动降低展示频率为每3课1次
  • 科学准确性:所有内容经运动科学专家审核 + 措辞加"部分研究显示"限定

⚠️ 所有科学提示内容需经运动科学审核 + 本地化合规审核后上线。

异步社交信标
前人留下的痕迹——不需要同时在线的陪伴感
3周 · 2人
让骑过的人留下痕迹,让独自骑行不再孤独

问题:DAU ~5000,冷门课同时在线可能个位数。凌晨和非主流时段用户反馈"就自己一个人",缺乏社群存在感——这部分高频用户恰恰是留存最值得守护的群体。

凌晨骑冷门老课,只有你。骑到最累的高强度段——屏幕飘出气泡:

💪 🩶 "Rider_07 在这里坚持了下去"
⚡ 12人在这段达到了Zone 4

你不认识 Rider_07,但知道有人在同样位置撑了过去。你咬牙踩了下去。

你功率达到峰值——系统自动留下你的信标🔥。下一个人在同样位置会看到你的灰头像和默认名。

为什么有效

  • 5000 DAU的社交解法。实时多人死,但异步信标是累积的——10人骑过就有丰富内容。
  • 零操作社交。信标自动留下、自动展示。互动仅一种:击掌。

类比:Death Stranding路标Kindle热门标注Dark Souls留言

🎯 目标
冷门课(同时在线<5人)完课率对比无信标提升≥10%;信标覆盖率≥80%
💡 为什么这个方案
"实时连麦"DAU不足支撑,"评论区"课中无法触达。异步信标不依赖同时在线,是唯一低DAU下有效的社交机制
⚠️ 关键假设:历史信标数量需够密集才有临场感;新课需"种子信标"预填充
🚫 Kill Criteria:退出率无差异或上升,或击掌率<5%

信标类型

  • 💪 坚持信标 — 高难度段完成时自动留下
  • 🔥 峰值信标 — 达到功率峰值触发
  • ⚡ 聚合统计 — "12人在这段达到Zone 4"
  • 🤝 击掌互动 — 点击信标=击掌+1

用户旅程

  • 首次开启:设置页开关。开启时选择"显示昵称"或"使用默认假名"
  • 课中:高强度段自动浮出前人信标(3秒淡出)。达到个人峰值时自动留下信标
  • 互动:看到信标可点击"击掌"(仅此一种互动,零社交压力)
  • 课后:结算页展示"你的信标被X人看到,收到Y个击掌"
  • 下次:首页不展示信标相关内容(信标仅课中存在)

MVP 边界

  • ✅ 做:自动信标生成(坚持/峰值/聚合)+ 课中展示 + 击掌互动 + 隐私控制
  • ❌ 不做:自由文字信标、信标排行榜、好友定向信标、信标收藏
  • 信标内容全部预设文案("在这里坚持了下去"等),不开放用户自定义

成功指标

  • 主指标:信标开启用户 vs 未开启用户,高强度段退出率差异
  • 辅助:击掌互动率、功能关闭率、课后"被击掌"查看率
  • 成功门槛:高强度段退出率降低 >5%(相对值),4周观测期
  • 最小验证切片:仅"聚合统计信标"("12人在这段达到Zone 4",不含个人信标)→ 1周出数据

隐私设计

  • 用户开启信标功能时选择:显示真实昵称 或 使用默认假名
  • 默认假名 = 灰色头像 + 随机假名(Rider_01 ~ Rider_99,从假名库分配)
  • 可随时在设置中切换

前置条件

  • 后端信标存储:课程ID + 时间位置 + 信标类型 + 功率值 + 用户ID(匿名化)
  • 信标生命周期:保留最近90天,超期自动清理

每课最多5个信标,3秒淡出,不遮挡教练。3周,2人。

边界与降级

  • 冷门课/新课无信标:仅显示聚合统计("本课共X人完成"),无个人信标
  • 信标密度过高(热门课):按"最近+最相关"筛选,每个高强度段最多展示3个
  • DAU 5000约束:信标是累积的——即使日均50人骑某课,30天=1500条足够丰富
  • 击掌通知:MVP不推送通知,仅课后结算页展示。V2考虑推送

组合飞轮

以上每个方向独立成立,可以只做任何一个。
但某些组合会产生 1+1 > 2 的飞轮效应——
🌊 沉浸体验包
沉浸模式 地形进度条 投屏分屏
地形图告诉你前方有什么,沉浸模式让你"感受"到它,设备屏全幅展示——三者叠加,课中体验从"看视频"变成"身临其境"。
飞轮:看见→感受→沉浸
🔥 留存引擎包
训练分+Streak 赛季制 Ghost自比
训练分让每课有积累,赛季制每6周刷新防疲劳,Ghost让你课中实时看到进步——三者构成"练了有意义→持续练→看到自己变强"的闭环。
飞轮:积累→刷新→可见进步
📖 好奇心引擎
叙事故事化 认知微层 异步信标
叙事用"下一集"的悬念拉你回来,认知微层告诉你"为什么值得练",信标让你知道"你不是一个人"——三者把"明天要不要来"的决策从意志力转向好奇和归属。
飞轮:好奇→意义→归属

推荐落地路线图

基于留存杠杆 × 实施风险 × 前置依赖的综合排序。可调整。

PHASE 1 · 快赢 + 地基
~6周
逻辑:先用最小投入拿到"体验明显变好"的信号,同时铺共享基建。
PHASE 2 · 留存核心
~8周
逻辑:构建"练了有积累→积累有节奏→课中有沉浸"的留存引擎。
PHASE 3 · 差异化
~10周+
逻辑:依赖前置研究结果决定优先级,逐步构建差异化壁垒。

决策矩阵

一表纵览10个方向的关键决策维度。

方向 留存杠杆 实施复杂度 证据强度 前置依赖 推荐阶段
训练地形图 ⭐⭐⭐ 课程段落标注(50节) P1
认知微层 ⭐⭐ 30条内容池 + 科学审核 P1
训练分 + Streak ⭐⭐⭐⭐⭐ A·B·C P2
沉浸模式 ⭐⭐⭐⭐ A·B 无(可并行) P2
赛季制 ⭐⭐⭐⭐ B·C 训练分系统 P2
Ghost 自比 ⭐⭐⭐⭐ ⚠️ 课程复骑率验证 P3
音乐节拍同步 ⭐⭐⭐⭐ A·C ⚠️ BPM标注pipeline P3
异步信标 ⭐⭐⭐ P3
叙事/故事化 ⭐⭐⭐⭐⭐ 高(分阶段) B·C·D 内容制作pipeline P3
投屏分屏 ⭐⭐⭐ ⚠️ 投屏使用率调研 P3

共享基础设施

以下基建被多个方向共用,需在Phase 1优先启动。

🔧 课程元数据标注体系

多个方向都需要对课程进行结构化标注(时间轴段落、强度等级、BPM等)。如果各做各的,重复投入且数据不一致。统一建设后可服务≥4个方向。

标注维度 服务方向 方式
段落时间轴 + 强度等级 训练地形图、沉浸模式、异步信标 教研团队人工标注 + 规则辅助
BPM逐段标注 音乐节拍同步 音频分析自动检测 + 人工校准
分钟级功率序列存储 Ghost自比、训练分 端侧采集 → 云端存储pipeline
用户训练记录聚合 训练分、赛季制、认知微层趋势 后端聚合服务

建议Phase 1与地形图并行启动,首批标注50节高频课(覆盖~80%使用量)。

前置研究清单

以下问题需要先回答才能开工,建议在Phase 1期间并行完成。

研究项 影响方向 方法 判定标准
课程复骑率 Ghost自比 现有数据分析:同一用户骑同一课程≥2次的比例 >15% → 同课模式可行;<15% → 同类型fallback为主
投屏使用率 投屏分屏 埋点分析:DP投屏激活占课中session比例 >20% → 值得做;<20% → 降优先级
BPM自动检测可行性 音乐节拍同步 技术预研:用现有课程音频跑BPM检测,对比人工标注 准确率>90% → 自动化可行;<90% → 需人工校准pipeline
功率Zone替代心率Zone 所有Zone相关方向 用10%心率带用户做对照:功率Zone分布 vs 心率Zone分布 分布相关系数>0.7 → 可替代;<0.7 → 需调整Zone阈值
自有曲库版权 音乐节拍同步V2 法务咨询 + 平台API对接调研 可行 → V2升级方向;不可行 → 仅用已授权课程音乐
⚠️ 灰度排期约束

DAU ~5000,灰度 eligible 用户约1500。单个 A/B 测试(双组各750),最小可检测差异 (MDE) 约 5个百分点。意味着:

推荐串行顺序:① 地形图+认知微层+Ghost复骑率数据分析(并行,不冲突)→ ② 训练分+Streak(8周)→ ③ 赛季制(6周)→ ④ 其余方向按前置条件排序
附录:证据等级说明

A  公开论文 / RCT / 荟萃分析 — 直接相关场景的严谨研究
B  官方案例 / 同行业数据 — 可信来源但非受控实验
C  跨行业类比 — 方向性参考,机制可迁移但效果需本场景验证
D  待验证假设 — 逻辑合理但缺乏直接证据,需实验确认