你在朋友圈里看到过晒Duolingo连胜的照片吗?语言学习应用Duolingo有一项叫做“连胜机制”的功能,通过将连续学习的天数游戏化,增加用户粘性,被视为Duolingo最重要的增长推动力。
最近,Duolingo的产品经理Jackson Shuttleworth接受播客节目Lenny's Podcast 的采访,分享了连胜功能的演变历程、超过600个实验中的关键洞察、成功与失败的经验教训、构建有效连胜机制的原则、如何运营高效产品团队,以及建立吸引人的通知系统的建议。我们整理和翻译了采访中的部分内容,原播客内容可以点击「阅读原文」链接跳转收听。
🔍 内容摘要
1. 用户粘性优先:对一个学习应用来说,学习功能本身重要还是用户粘性更重要?Duolingo的答案是,没有持续的用户参与,学习就无法发生。连胜机制的调整需要在提升粘性的同时保持学习体验。
2. 测试优先策略与关键洞察:过度关注不活跃用户的短期需求会影响长期粘性,设计时需要清晰的标准和更加精准的用户群体理解。
3. 七天留存的重要性:用户在七天内的留存率提升显著,通过设定连胜目标能帮助用户实现七天连续练习,增强长期粘性。
4. 灵活性设计与用户体验:灵活性能够有效提升用户的回归率和留存。但需要平衡灵活性与挑战性,避免影响长期参与度。
5. 通知策略与用户参与:通知的时机和频率是提升用户粘性的关键。在合适时间提醒用户保持连胜,可以成功激励了用户回归并继续学习。
6. 庆祝用户成就与增强参与感:小细节对用户体验影响巨大。“完美连胜”功能庆祝用户成就,虽无物质奖励,但通过视觉标识和触觉反馈提升了用户参与度。
图|播客 Shownotes
Part.01
Duolingo连胜机制的演变
1) Lenny Rachitsky:Duolingo 连胜机制是什么,它的影响力有多大?
Jackson Shuttleworth:Duolingo是一个语言学习应用,用户通过“连胜纪录”来追踪自己连续学习的天数。用Duolingo学习,完成第一课后,连胜就开始了,接着每一天继续使用应用,就会延长连胜纪录。
这里的“连续天数”并不绝对,我们增加了灵活性。比如,有一个叫做“连胜激冻”的功能,就像是给连胜纪录上了一份保险。这个功能本身很简单,但随着时间的推移,我们在它基础上增加了挑战、目标设定、奖励和社交功能。很多通知也都与连胜纪录相关。
2) Lenny Rachitsky:最早的版本是什么样子的?
Jackson Shuttleworth:推出Duolingo时就有连胜功能。最初,这个功能的运作方式是,用户在Duolingo上选择不同的经验值(XP)目标,比如10经验点或50经验点,每天完成这些目标就能延续连胜纪录。这种做法在初期有效,实际上也和Duolingo最初的用户群体相匹配。但这也意味着,如果用户设置了一个过高的目标,完成多个课程后仍然无法实现,连胜就会被打断。这显然不好。
我们做了很多实验,其中我认为最有影响力的实验之一,是我们将连胜系统从达到经验值目标的设定,改成了每天完成一课即可延续连胜。风险是用户可能不会像以前那样关注连胜,因为它与目标的关联度减弱了。但实验结果却是惊人的——日活用户增长十分显著。
让连胜变得更容易延续,而同时仍然保有一定的意义,这非常关键。要构建一个连胜系统,首先要思考的是使用单位是什么。对于Duolingo来说,使用单位就是完成一课。如果我们关心的是用户每天回归并完成一课,那么让连胜只基于完成一课而不是多个目标并不会对我们造成不利影响。
这个实验的核心变化就是将连胜从基于经验值,转变为基于完成一课。这种方式既简单又直接,更容易让用户理解。产品经理很容易陷入设定复杂目标的误区,想要为功能添加多个目标或任务。但是简单的“完成一课”更容易让更多用户理解和接受。
3) Lenny Rachitsky:有人问Luis(Duolinguo创始人之一)优化学习本身和优化参与度哪个更重要,他回答说:“我们的一切工作都聚焦参与度,因为如果用户不回来,根本无法学习。”你怎么看待这个观点?
Jackson Shuttleworth:我非常认同。在Duolingo上,用户不回来的直接后果就是没有机会学习。如果Duolingo不保持用户粘性,他们根本没有机会使用学习功能。学习是一个长期过程,简化体验虽然能带来短期用户粘性,但却可能无法让用户真正学习。因此,当连胜机制是建立在用户很关心这件事的基础上,它才能最好的发挥作用。我们用了很多方式来确保在调整连胜功能时不会影响学习体验,避免过度干预。一直以来,我们都在思考如何在不牺牲学习效果的前提下提升用户粘性。
4) Lenny Rachitsky:谈谈在改进连胜机制过程中的关键经验、洞察,和转折。
Jackson Shuttleworth:Duolingo有很强的“测试优先”理念,我们更倾向于通过测试来验证想法,而不是争论不休。通过数据,我们发现很多用户开始了课程,却没有完成,或者没有保持连胜,损失规避心理(loss aversion)未能起作用,他们没有回到Duolingo app上来。于是,我们沿着这个思路推进,思考如何让延续连胜变得更加容易。
我们进行了一次实验,设定了一个新规则:只要完成一个练习,就可以延续连胜。但结果是日活跃用户数(DAU)并没有变化。我们降低了衡量的标准,但没有人会认为自己仅仅做了一个题目就算完成了Duolingo的任务。因此我们意识到,连胜的标准设置还不够清晰。
这种方式吸引的用户其实是最不活跃的那类:他们进来做一两个题目然后就离开。设计连胜机制时,我们不仅要考虑培养用户的学习习惯,还要关注用户的参与度。这次实验,我们过度关注了某一类用户,但他们并不会持续使用Duolingo。这次尝试提醒我们在设计时要更加精准地理解目标用户的需求。
Part.02
关键时刻的留存提升
5) Lenny Rachitsky:还有什么提升用户体验方面的经验和教训可以分享?
Jackson Shuttleworth:我们首先关注的是0到7天的用户体验。我们发现,一旦用户留存达到七天,损失规避心理(loss aversion)开始发挥作用,用户会更愿意留下来。因此,从第一天到第二天的连胜,留存率有了显著提升;从第二天到第三天,虽然略有下降,但依然有所进步。直到第七天,留存效果趋于平稳。这表明,尽管三十天连胜的用户不一定比七天连胜的更投入,但在前七天,用户体验的变化幅度最大。
因此,我们做了很多工作来帮助用户实现七天连胜。一旦他们达成这个目标,就更不愿意离开Duolingo。我们推出了“连胜目标”功能,设定目标帮助用户先达到一定的连胜天数。我们没有一开始就设计一个复杂的功能,而是先推出简化版,测试其效果,随后逐步迭代优化。
最初,我们做了一个测试,灵感来自另一个团队。该团队曾使用过一个非常有效的文案:“如果你订阅Plus,你完成课程的几率会高出5.6倍。”这个文案帮助我们激励用户付费。接着,我们尝试了类似的文案:“如果你达成30天连胜,完成课程的几率会增加7倍。”也收到了非常好的反馈,显著提升了用户参与度。
随后,我们进行了一系列实验,测试不同目标天数(如14天、30天等)的效果。虽然这些目标天数都有效,但它们对不同用户群体的吸引力不同。我们意识到,可能需要根据用户群体提供不同的目标选项。因此,我们进行了一项实验,首先设定30天为目标,允许用户选择是否继续,如果不接受,则提供一个更容易的目标。初衷是让用户先承诺一个目标。结果证明,允许用户选择退出(opt-out)这个按钮带来了极大的正向效果。虽然我们一开始担心给用户选择退出的权利会降低他们的参与度,但实际结果表明,给予选择权反而增强了他们的参与感。
最终,这一策略带来了巨大的突破:我们为用户提供了不同目标选项的功能,显著提高了他们的参与度。
6) Lenny Rachitsky:你们以不断实验和进行微小改进的方式来运行产品和公司,这样会不会导致产品和体验变得四不像,缺乏一致性和凝聚力,最终变得混乱不堪。你们会让创始人把关检查所有变动来保持一致性吗?还有什么其他方法可以避免产品功能变得杂乱无章?
Jackson Shuttleworth:在产品把关的结构设计上,我们的产品设计负责人、产品负责人、Luis都会参与,他们对产品的敏感度很高,这有助于保持一致性。作为产品经理,我们时常反思功能的发展方向,定期查看功能的进展和未来规划。至少每个季度,我们都会回顾一次连胜功能,评估我们学到了什么,功能如何演进,未来的设想是什么。
我认为,保持清晰的战略目标至关重要。没有清晰的战略,很容易陷入局部最优解,最终停滞不前。因此,我的观点是,如果你对功能的发展有明确的战略目标,那么所有的A/B测试都应该是为了支持长期目标,而不仅仅是追求短期收益。
但当我们达到局部最优解时,就需要问自己:是否可以在现有基础上,基于所有的学习和经验,简化和重置功能、界面或特性?我们是否能保持其效果,同时让它变得更加简洁、直观,以便为后续扩展铺平道路?这类实验非常难做,它们通常是在功能已经高度优化的情况下进行的。但它们很重要,否则最终可能会做成一个功能杂乱无章的应用,失去核心价值。
7) Lenny Rachitsky:Duolingo 有一个其他公司不具备的独特优势,那就是人们天生就有学习语言的欲望。通过一些激励措施让用户回到应用,去做他们本来就想做的事,这是许多其他产品所没有的优势。你如何看待这个观点?
Jackson Shuttleworth:这对Duolingo来说确实是一个很大的优势。但几乎没有公司会说自己没有为用户带来价值,即使是游戏,它也能为用户提供片刻的放松,帮助他们暂时远离生活的压力。任何想让连胜机制起作用的公司,都需要找到一种方法,将其价值呈现给用户,让用户对它感到满意。对于像Duolingo这样的公司,这可能比较容易,但我相信其他公司也可以通过创意方式来表达这一点。
Duolingo的连胜机制之所以有效,是因为学习一门语言的进步很难直接感知。提高语言能力是一个漫长的过程,可能需要几年才能真正变得更好,Duolingo让这一过程变得更简单。但如果想要达到C1或C2级别的流利程度,仍然需要投入成千上万小时的学习,这个进展很难量化。所以,对我们来说,连胜机制特别有效,因为我们可能不能告诉你:“今天你学了0.01%的西班牙语”,但我们可以告诉你:“你的连胜天数又增加了。”
因此,我认为,当你的产品涉及到需要较长时间才能显现或感受到的进步时,连胜机制是一种非常好的方式,能够帮助用户感知这些进展,至少让它感觉上更加具体,或者说更容易被感知到。
Part.03
产品设计中的实验与教训
8) Lenny Rachitsky:有没有什么实验是你们认为很成功,但最终决定不推向产品的?
Jackson Shuttleworth:在课程页面,Duolingo唯一的UI元素是顶部的进度条和用户剩余的红心数,这种简单的设计一直符合Duolingo的设计理念。之后我们决定将经验值的增长显示在用户完成课程的过程中,这样用户能看到自己获得的经验值,也更不容易放弃。完成课程后,系统会展示你最终获得的经验值。内测后得到用户的反馈也不错。
但Luis认为:“这个界面是我们App中最重要的地方,它是学习页面,重点是学习。加了这个元素可能会分散用户的注意力。”我们意识到,虽然这个经验值显示是一个简单的提升用户参与的方式,但无意中可能会干扰App中最核心的区域。他问:“你以后打算怎么做?这个功能会如何迭代?会不会让课程体验变得更游戏化?”最终,我们决定暂停这个功能,因为它可能对课程的学习体验产生干扰。
虽然当时我们决定不保留,但如今我们的经验值系统和其他有趣的机制已经足够成熟,也许现在回头看,那个方法可能在课程中会更好地发挥效果。但当时,我们不认为保留它是明智的选择。
9) Lenny Rachitsky:在产品设计过程中,你们有吸取到什么教训吗?
Jackson Shuttleworth:我们将“连胜纪录”设计成了一个火焰图标,火焰在我们的标志性设计中占据了重要位置,象征着用户的参与和留存——就像保持火焰燃烧一样。很多用户能够理解火焰代表着连胜纪录,但我们发现不同文化背景和生活阶段的用户对于这个隐喻的理解存在差异。比如,在我们几年前在印度进行的用户体验研究中,火焰的概念完全无法引起共鸣。这提醒我们,根据用户群体做更多的全球用户体验研究是至关重要的,只有这样才能真正了解用户如何理解和体验产品功能。
此外,我们之前的屏幕设计也有一个火焰图标,火焰每天会点燃一次,表示保持连续性。虽然作为一个隐喻,它直观易懂,但在重新设计时,我们创建了一个很酷的里程碑动画,动画让数字随着连胜天数的增加而滚动。视觉效果很不错,但从产品角度来看,我们真正关注的是展示用户的连胜天数,而不仅仅是火焰图标的形象。因此,在设计“连胜纪录”功能时,我们意识到,不应太过沉迷于美丽的故事和隐喻,而是要保证功能的可理解性和易用性。
从产品设计的角度来看,我们学到了一个重要的教训:清晰地展示我们实际跟踪的数据,形式应该服务于功能。现在,你可以看到很多地方的设计,我们更侧重展示数字,而不是单纯的火焰图标。
10) Lenny Rachitsky:Duolingo在学习过程中增加了更多灵活性功能,比如冻结连胜记录等,这是否是一次重大的机会发现?
Jackson Shuttleworth:我想分享一个特别的礼物——我的co-lead Antonia送给我的Duolingo连胜祷文(Streak Serenity Prayer)。这段话写着:“赐我平静,接受世间变化;赐我勇气,力所能及时追求完美;赐我智慧,任何时候都怀有欢喜庆祝之心。”这段祷文强调了灵活、宽容与追求完美之间的平衡,也表达了“任何时候都怀有欢喜庆祝之心”的理念,这正是我们设计连胜机制时的核心思想。
在Duolingo,我们将连胜机制视为一种“曲折而非断裂(a bend, not break)”的方式。换句话说,如果你错过了某一天的学习,我们希望你能够重新回来,继续保持连胜记录。但如果你不会错过任何一天,我们更希望你能坚持每天使用应用。
灵活性在我们的设计中起着至关重要的作用,尤其是它对于推动日活跃用户数(DAU)的增长至关重要。我们曾经做过一个实验,原本规则是每个用户只能拥有一个“连胜激冻”机会,我们把这个规则改成允许用户最多使用两到三个冻结机会。测试结果显示,这一改变显著提高了用户的回归率,推动了日活数的增长。
然而,另一个有趣的发现是,三次“连胜激冻”和两次之间的差别其实并不大。这说明,虽然灵活性是关键,但如何平衡这一机制非常重要。如果灵活性过多,用户可能会养成频繁休息的习惯,进而影响他们的参与度和学习效果。
核心问题是:到底多少灵活性才是合适的?在早期,我们发现,当用户刚开始连胜时,给予更多的灵活性能有效提高他们的留存率。例如,我们曾经测试过在用户刚开始新的连胜时,直接提供两次“连胜激冻”机会,而不需要用宝石(Duolingo中的虚拟货币)购买。用宝石购买的目的是增加挑战性,让这个机制看起来像是“你努力获得的奖赏”。但我们发现,直接给用户更多的灵活性反而更有效,特别是对于刚开始连胜的用户,他们更容易在早期遇到困难时放弃,但提供灵活性后,能让他们更坚持下来。
一旦用户的连胜天数达到七天,用户的稳定性就会大幅提高,他们的参与度也会更高。此时,灵活性可以适当减少,因为随着连胜天数的增加,用户对连胜的重视程度也会提升。而大多数用户只要不在像背包客旅行那样的环境中,你总是能找到网络服务,就会一直保持连胜。
因此,设计灵活性机制时,我们需要理解不同用户的需求,并避免培养他们“随时可以休息”的习惯。这个平衡是我们在连胜系统设计中的关键挑战之一,同时也是一个持续的学习过程。
Part.04
有效策略提升用户留存率
11) Lenny Rachitsky:Duolingo的消息通知是一个很重要的功能,你可以分享一下你们的通知策略吗?
Jackson Shuttleworth:我们每天会发出两条与课程连胜记录相关的通知。第一条是练习提醒,我们会在你前一天练习后23.5小时发送这条提醒。如果你今天中午练习,我们会在明天上午11:30发通知。我们曾经允许用户设置提醒时间,你可以设定一个你想延续连胜记录的时间,比如7点,然后我们根据这个时间给你发通知。但后来我们发现,生活总是会干扰计划,你计划好练习的时间可能会变。我们几乎尝试过很多复杂的实验,但最终证明,23.5小时的提醒时间是最有效的。
除了这个练习提醒,我们还会发送另一条通知,叫做“连胜记录拯救通知”。如果到晚上10点你还没有延续连胜记录,我们就会发通知提醒你:“这是最后的机会。”你可能觉得这有点像垃圾信息,晚上10点收到应用的通知很烦人。但我们发现,因为用户非常在意连胜记录,他们附加了很多积极情感,所以他们不想失去它。这条提醒通知反而被大多数人看作是积极的,而不是负面的通知。
显然,这也达到了我们的目的,就是让用户回来并继续保持连胜记录。我认为,如果你能根据与之关联的功能来思考通知策略,了解用户如何看待这些功能,你可以增加通知频率,只是要考虑通知的负担和发送时间。对于我们来说,这条深夜的消息虽然可能被视为垃圾信息,但它实际上非常有效,很多用户都觉得它很有用。
12) Lenny Rachitsky:还有其他的功能可以提高用户的参与度吗?
Jackson Shuttleworth:我们不仅关注如何为用户提供灵活性,也非常重视如何庆祝他们的成就,尤其是在连胜方面。为了鼓励这种持续的努力,我们推出了一个名为“完美连胜”的功能。
这个功能非常简单:如果用户在连续几天的学习中没有使用“连胜激冻”功能,他们的连胜记录会被标记为金色,日历上的小进度条也会变得更加美观。这个变化并不会带来任何物质奖励,唯一的区别就是那个小小的视觉标识。看似微小的变化,却充满了激励效果。
“完美连胜”不仅仅是一种奖励,它传递了一个清晰的信息:“如果你连续七天没有使用激冻,你的连胜记录将变得完美。”它还帮助我们发现那些没有使用连胜激冻的用户,激发他们的自豪感和成就感。
曾经有一位员工,因为跨越国际日期变更线而失去了四个月的完美连胜记录。对她来说,这是一个打击。这个例子表明,人们对完美连胜的关注有时比对普通连胜记录更为强烈。虽然灵活性机制非常重要,但如何帮助用户保持“完美状态”同样是我们设计中的关键平衡。
13) Lenny Rachitsky:如果有一些庆祝的行为,不依赖文案或者额外的功能,而是通过一些简单的手段就能让人感觉兴奋,效果是否会更好?
Jackson Shuttleworth:是的。当用户真正关心某个功能时,简单的元素,比如动画、触觉反馈和音效,就能产生很大的影响。
举个例子,我们在“连胜”功能上并没有加音效,但我们测试过一些触觉反馈,比如手机震动。这样做有两个好处:第一,它能带来一种非常棒的体验。每当你延续连胜时,手机震动配合视觉效果一起庆祝,这种感觉会特别愉快;第二,它会给你一个短暂的暂停。很多产品经理总是希望用户快速完成任务,但有时候,我更希望你停下来,稍微享受一下这个时刻。
当然,这种设计不适合应用到每个界面,只应该在重要的时刻使用。我希望用户在那个瞬间能真正停下来,享受那份成就感。如果你能更多地享受这个过程,你就会更在乎自己的连胜记录,更愿意明天回来继续使用。
所以,适当的动画和触觉反馈是非常有效的,它们能帮助用户更好地关注这一时刻,并与“连胜”建立更深的情感连接。
14) Lenny Rachitsky:你如何平衡这些设计策略,让它们既不让用户感到过多的压力,又能保持足够的挑战性和激励?
Jackson Shuttleworth:关于功能膨胀的风险,我们也经常在思考这个问题。比如,我们有了连胜功能,然后又增加了完美连胜功能,甚至还统计用户连续保持完美连胜的周数。突然间,我们就有了两个相互竞争的连胜数字。
但实际上,完美连胜的概念是在用户达到了七天连胜之后才引入的。原因很简单:如果在一开始就加入额外的连胜功能,用户的认知负担会增加。我们有很多很棒的连胜功能,但它们通常需要用户保持较长时间的连胜才能体验到。这是我们多次测试的结果。我们曾尝试在用户体验的早期就加入这些功能,但发现通常情况下,越早引入过多的概念,反而效果越差。因为用户很难处理和消化这么多信息,尤其是在他们还没完全适应基础功能的时候。