翻译 :马玉洁

欢迎访问网易云社区,了解更多网易技术产品运营经验。

如果你用过“Duolingo”(Duolingo)这个语言教育应用程序,你就会知道它就像一款游戏。

这当然不是巧合。Duolingo敏锐地意识到了游戏化的力量,在最近的Canvas会议上,产品经理Zan Gilani详细地介绍了其采用的一些提高用户留存率的手段。

以下是一些背景介绍(在此基础上我们将进一步讨论提高用户留存率的手段):

l  Duolingo目前有25种语言可供选择进行学习,并将很快新增普通话的学习内容。

l  它拥有2亿多用户,可以说是下载次数最多的教育应用。

l  Duolingo的宗旨是为全世界提供免费的语言教育(该应用对所有人免费)。

l  该公司目前有数十亿数据量(每月有60亿次课程被完成),并在不断迭代。

四种激励学习者的方法

保持用户的积极性是Duolingo所面临的巨大挑战。一个人学习很困难,而在网上学习还会有更多的注意力分散因素。Gilani说,大规模在线开放课程(MOOCs)的完成率非常低,大约只有1%到2%。

为了克服这个挑战,Duolingo正在从游戏世界中借鉴学习,Gilani提到了四种帮助形成日常使用习惯的方法:

l  小而具体的目标

l  明显可见的进展

l  外部触发 (使得用户返回应用)

l  用户的投资

熟悉Duolingo的人都知道,应用中有一些小而具体目标,用户必须完成一个单元才能解锁下一个单元。Gilani作了这样一个比喻,提高身体素质是一个较为模糊的目标,但每天跑一英里就非常简单明了了。

连胜符合以上所有的四个标准

Gilani和Duolingo想要关注连胜的力量,这是一种强大的游戏机制,可以满足所有的四个有助于习惯形成的标准。人们可以看到Snapchat、Facebook和Headspace等应用向用户发出通知,并对他们连续几天在应用内的活跃进行奖励。

因此,Duolingo鼓励用户设定每日目标,保证每天都使用该应用,随着用户完成每日目标,连胜纪录也会随之延长。

用户们非常在意自己的连胜纪录的保持,对此Gilani展示了一封发给Duolingo总部的邮件,邮件中一位用户解释了他们是如何在飓风“厄玛”(Irma)期间失去了互联网连接(以及他们的连胜纪录),并询问他们是否可以恢复连胜纪录。

测试#1 -可见的进步

用户需要看到他们的进度,而连胜纪录在Duolingo的应用中并不总是那么明显。因此,Duolingo团队做了一个测试,在应用的顶部显示连胜的天数,以便在任何时候,用户都清楚自己的连胜情况。

测试结果令人印象深刻。每日活跃用户(DAU)增加3%,第14天留存率增加1% (D14,在14天后仍在使用该应用的用户)。从长远来看,这一提升带来了很大的影响。

测试#2 -强调连胜

接下来,在每节课结束后都强调连胜。用户开始看到下面显示的火环。

结果:DAU增加1%,D14增加3%。

测试#3 -外部触发

Gilani说,电子邮件和应用程序通知等外部推送容易让人感觉像垃圾信息,但连胜可以弱化这种感受。连胜为外部提醒推送提供了一个合理的理由,所以Duolingo可以说“记住你已经连胜24天了”,而不是简单地表达“来使用我们的应用吧”。

在这个测试中,Duolingo团队在用户最近一次上完应用里的课程之后,在不同的时间点发送这些外部触发信息。

结果显示,在上一节课结束后的23.5小时发送的电子邮件在鼓励学生重新参与课堂学习方面效果最好。这并不奇怪,正如Gilani指出,每天在同一时间做某件事最容易让人形成一个习惯。

Duolingo外部提醒信息的一个有趣的部分是,在用户五天不活跃后会使用“被动攻击通知”。这一基调与该品牌的趣味性质非常契合,信息开头这样写道:“这些提醒似乎不起作用……”

【以上截图来自一位Duolingo用户的推特账号】

测试#4 -用户投资

Duolingo中有一种虚拟货币lingot,用户可以用它购买很多东西,包括连胜冻结(即在不破坏连胜的情况下不活跃)。

Duolingo团队的测试还包括了连胜赌注,用户用他们的lingots做赌注,打赌他们会达到一个特定长度的连胜。这个以前被嵌套在应用中的功能,现在直接出现在了用户界面(具体来说,每周会显示一次七天连胜的打赌挑战)。

结果:D14增加了5%,IAP(应用内购买收入)增加了600%。

需要注意的是,Duolingo始终是免费使用的,但用户现在可以在应用程序内付费订阅,这就允许用户离线使用(可能对保持连胜状态至关重要),并从界面上删除广告。

Gilani提到,这个测试也进行了为期两天的连胜赌注,但D14和DAU的增长幅度很小,因此被放弃了。

测试#5 -针对弱点时刻进行设计

据Gilani说,Duolingo的用户在周末会减少9%。通常情况下,这段时间许多用户会失去连胜纪录。而失去连胜会让人失去动力。

那么,如果一个用户可以跳过一天并保持他们的连胜记录呢?这就是“周末护身符”(weekend amulet)的功能,花费20个lingots(Duolingo的虚拟货币)就可以获得。

向用户提供这个功能,向他们表达“你不必在周末也使用”,再次对应用的使用率产生了巨大的影响。

结果是:D14增加了4%,用户失去连胜记录的可能性降低了5%。

测试#6 -创造多种获胜方式

保持用户参与度的不仅仅是连胜。Duolingo也加入了成就徽章。这非常难做对,正如Gilani所说的那样,“通常情况下,这些被应用得非常糟糕——换句话说,在游戏化比较糟糕的叙述中,成就是症结所在,但当它们被应用得正确时,则会产生积极的影响……”

Duolingo的徽章是永久性的(不像连胜),而且种类繁多,完成各种各样的任务均可获得,比如邀请朋友,早上8点前登录等等。徽章也是可以获得完全的,不像连胜——Gilani甚至用了“一定要把它们全部抓住”这样的表达。

关于成就的第一个测试是祝贺用户的加入。结果并不令人满意——0% DAU, 0% D14,其他的都是0%。

Gilani说,他们忘记了测试必须是可被实现的。注册还不足以作为成就。Gilani补充说:“用户必须看到他们取得了什么成绩,而当他们开始取得成绩时,他们就会产生渴望。”

测试更多不同的徽章成就确实有影响。他们发现DAU增加了2%,D14增加了2%,应用内购买也增加了5%。

这种成功建立在增加徽章分级的基础上。例如,用户可以因为获得1个完美的测试分数而获得一个徽章,然后是获得5个完美的测试分数,10个,等等。分级徽章进一步改善了结果——DAU增加了1%,D14增加了1%。

一个让人感觉良好的结尾

Gilani最后告诉与会的代表们,产品设计师能够让更多的人走得更远,学到更多东西。Duolingo的一个成功案例是Edilson,他原来是哥伦比亚的一名保安,通过Duolingo自学了很多种语言,最近在一所安全学院找到了一份教英语的新工作。

那么,你能在你的应用和服务中使用哪些方式来留住客户呢?

免费领取验证码、内容安全、短信发送、直播点播体验包及云服务器等套餐

更多网易技术、产品、运营经验分享请点击

相关文章:
【推荐】 kubernetes1.9管中窥豹-CRD概念、使用场景及实例
【推荐】 spring的父子上下文容器及配置
【推荐】 InnoDB之锁机制

Duolingo 提高用户留存率的6个手段的更多相关文章

  1. 【hive】关于用户留存率的计算

    首先用户留存率一般是面向新增用户的概念,是指某一天注册后的几天还是否活跃,是以每天为单位进行计算的.一般收到的需求都是一个时间段内的新增用户的几天留存 (1)找到这个时间段内的新增用户(也可能含有地区 ...

  2. 巧用Ajax的beforeSend 提高用户体验--防止重复数据

    巧用Ajax的beforeSend 提高用户体验 jQuery是经常使用的一个开源js框架,其中的$.ajax请求中有一个beforeSend方法,用于在向服务器发送请求前执行一些动作.具体可参考jQ ...

  3. 前端如何实现图片懒加载(lazyload) 提高用户体验

    定义 图片懒加载又称图片延时加载.惰性加载,即在用户需要使用图片的时候加载,这样可以减少请求,节省带宽,提高页面加载速度,相对的,也能减少服务器压力. 惰性加载是程序人性化的一种体现,提高用户体验,防 ...

  4. 【AGC】引导用户购买提升用户留存率

    借助AGC的云数据库.云托管.应用内消息.App Linking等服务,您可以给不同价值用户设置不同的优惠套餐活动,引导用户持续购买,增强用户黏性.判断用户价值,发送营销短信,引导用户参与营销活动,提 ...

  5. php fastcgi_finish_request让你的程序由等待时间,瞬间完成,提高用户体验

    当PHP运行在FastCGI模式时,PHP FPM提供了一个名为fastcgi_finish_request的方法.按照文档上的说法,此方法可以提高请求的处理速度,如果有些处理可以在页面生成完后再进行 ...

  6. 巧用Ajax的beforeSend 提高用户体验

    jQuery是经常使用的一个开源js框架,其中的$.ajax请求中有一个beforeSend方法,用于在向服务器发送请求前执行一些动作.具体可参考jQuery官方文档:http://api.jquer ...

  7. 使用线程池模拟处理耗时任务,通过websocket提高用户体验

    前言 在文章开始之前,询问一下大家平时工作中后端处理批量任务(耗时任务)的时候,前端是如何告知用户任务的执行情况的? 楼主对这个问题想了下,决定使用websokect将这一过程展现给用户. 于是就有了 ...

  8. 菜鸟学SSH(十九)——提高用户体验之404处理

    只要做过WEB开发人对于“404”已经再熟悉不过了吧.当我们访问的资源不存在时,它就会跑出来跟你打招呼啦.但是默认情况下,404页面比较简陋,不是很友好.而且一般用户不知道404是个神马东东,还以为是 ...

  9. ajax用beforeSend自定义请求过程中客户端事件,提高用户体验

    本文为博主原创,未经允许不得转载: 在应用ajax的过程中,当我们再前台提交请求的时候,如果服务端响应事件比较长,就会导致需要等很长时间在前台才能接受到服务端返回的 响应结果,往往会导致用户重复点击按 ...

随机推荐

  1. CXF wsdl2java (转载)

    2011-03-28 14:27 9735人阅读 评论(2) 收藏 举报 servicewebserviceinterfacejavastringserver CXF wsdl2Java 一.  简介 ...

  2. [C#.Net]启动外部程序的几种常用方法汇总

    本文汇总了C#启动外部程序的几种常用方法,非常具有实用价值,主要包括如下几种方法: 1. 启动外部程序,不等待其退出. 2. 启动外部程序,等待其退出. 3. 启动外部程序,无限等待其退出. 4. 启 ...

  3. 初学者问题一oracle

    问:(待解决)如何将纵向表改成横向表?       (待解决)如何实现对大型数据范围差距不大的索引?(建什么索引树)

  4. canvas 实现飘浮桥效果

    var canvas = document.getElementById('canvas'); var cxt = canvas.getContext('2d'); var timer; var iS ...

  5. rails 新建user的phonenumber字段

    1.新建字段 //rails g migration add_字段名_to_表名 字段名:字段类型 rails g migration add_title_to_contents title:stri ...

  6. RBAC简介

    1.RBAC 中文名称:基于角色的访问控制 1.1 作用:实现访问控制 1.2 核心:角色 2.英文名称:(Role-Based Access Control) 3.解释:一种思想,根据RBAC思想进 ...

  7. Jetty 9的使用

    参考来源:https://www.cnblogs.com/empireghost/p/3522834.html

  8. mysql 添加外键详解

    为已经添加好的数据表添加外键: 语法:alter table 表名 add constraint FK_ID foreign key(你的外键字段名) REFERENCES 外表表名(对应的表的主键字 ...

  9. 2018.11.30 bzoj3230: 相似子串(后缀数组)

    传送门 后缀数组入门题. 建立正反两个后缀数组算就行了. 代码: #include<bits/stdc++.h> #define ri register int using namespa ...

  10. 安装docker跨主机网络flannel

    一.实验环境 机器 操作系统 安装服务 172.16.4.36 centos7 docker etcd flannel 172.16.4.37 centos7 docker etcd flanne ( ...