Duolingoのアプリが使いやすい理由
Test Everythingしているからです。
我々の行動指針に「Test Everything」があります。文字通り、すべてのことを事前にテストするのです。
ランキング(リーダーボード)などの大型機能から、オンボーディングの案内画面、プッシュ通知の文言まで、すべてテストします。そう、(メンヘラ彼女みたいと揶揄される)プッシュ通知も、A/Bテストの結晶なのです。
もちろんテストだけではなく、学習者ファーストのマインドや、UXリサーチチーム(UXR)の存在、デザインが経営のコアコンピタンスに据えられている、などなど、アプリの使いやすさの要因は多岐にわたるのですが、本稿では語学アプリDuolingo独特の「A/Bテスト」の話をしていきたいと思います。
なぜテストするの?
テストはカルチャーのひとつ
Duolingoはデータ・ドリブンな会社です。可能な限り実験とデータをもとに意思決定します。これは創業者が二人ともエンジニアであることが関係しています。
テストのメリット
常にテストを走らせることは、プロダクトが常に改善されることと同義です。これは学習者の大切な時間をより効率的に使ってもらう、つまり体験の向上につながります。
また、社内の不要なマウント合戦がなくなります。どちらのアイディアが優れているか闘う必要なくなるので。「どちらのアイディアがいいか?」ではなく「どうテストしようか?」といった前向きな議論ができます。
そして最も重要なこととして、毎回学びがあります。たとえ結果がうまくいかなくても、その度に新たな発見があるのです。言語学習サービスを提供している我々自身が、常に学ぶことが重要です。
どのくらいテストしているの?
1週間に数百ものテストが同時に行われることも珍しくありません。これは、多くのスタートアップが1週間に数個のペースで仮説検証していることを考えると、驚異的なペースです。
それを可能にしているのが、5億ダウンロード超えの膨大なデータと、簡単にテストが実行できる環境です。今回はこの環境(ツール)の紹介をさせてください。
どうやってテストしているの?
テスト手法
A/Bテストの手法を用いています。具体的には、一部の学習者をAグループ(Controlグループ)とBグループ(Experimentグループ)に分け、Aグループには現状のバージョンを、Bグループには新機能を見せる。そしていくつかの指標に基づいて、ポジティブな反応を示した方を採用します。
テストのためのツール
テストを実行するのは手間がかかる、というのが多くのケースではないでしょうか。
たとえばちょっとした画面の文字を変えるテストを行うだけでも、まずユーザーグループをどう設計するか考えて、なおかつセグメントを分けるための情報をひっぱる作業に手間がかかって…
そしてテストを実行した後も、散在するデータをあちこち探しに行ったりと、集計がもう大変…なんて苦労が多々あるかと思います。
本来であればデータの結果をどう解釈するかの議論に時間を使いたいですが、そのまえに体力が尽きてしまう…ので画面の文字を変えるくらいの変更であれば、テストせずにちゃっちゃと変えちゃう、といったケースが多いかと思います。(僕がそうでした)
これらの問題を解決するために、Duolingoではテスト専用のダッシュボードツールが存在します。その名もDuolingo Experiment。このツールは、Duolingoのユーザー体験を向上させるための、いわば秘密兵器のひとつです。
このツールがとにかく使いやすい&見やすいのです。
テストの具体的な手順
事前準備
テストにおいて最も重要なことは、期待される結果を明確にすることです。テストをおこなうまえに、我々はいつも仮説(Hypothesis)をつくります。この実験でなにが達成できるのか。成功/失敗のベースラインはなにか。その辺りをクリアにします。
とはいえそんなに固く考える必要はなく、ツールの空欄を埋めることで、自然と事前設計ができてしまうようになっています。
テストの準備ができたら、次はいよいよ実行に移ります。Duolingoでは、テストがユーザーに与える影響を注意深くモニターするために、テスト量を徐々に展開していきます(Roll outする、と呼んでいます)。
例えばあるテストがコードに違反していないか、メトリクスに悪影響を与えていないか、など。もしなんらかの理由でテストに異変があることがわかったら、そのバグが修正されるまで実験を中断します。
テストの集計
このツールは、テスト結果の分析を自動的に計算&集計してくれます。レポートのテンプレートがあり、そこでテストに関連する指標の増減を簡単に確認できるのです。
毎晩、実行中のテストのレポートを作成し、関連する測定値について統計分析を行い、以下のようなチャートを生成します。(グラフはiOS アプリにリーダーボードを追加するテストから抜粋)
このテストの結果、学習者が始めたレッスンの数(セッション開始)が増えただけでなく、終了したレッスンの数も増えました。つまり、レッスンを開始するユーザー(エンゲージメント)だけでなく、しっかり最後まで学習するユーザー(ラーニング)の両方で成功を収めたため、全ユーザーにこの施策を開始することになりました。
テストの結果の解釈
Duolingoでは「短期的にはよくても、長期的に悪影響を与えるものはやらない」という鉄の掟があります。
たとえ売上があがる施策であっても、ユーザーのリテンションに悪い影響を与えるものは、長期的に見ればサービスを傷つけるのでやりません。
(DuolingoがHard Paywallを採用しないのもその理由からです)
なぜなら、ミッション*の達成を全員が本気で信じているからです。世界中の人にクオリティの高い教育を無料提供し、その結果、教育を通じて経済格差を是正したい。なので、目先の利益に振り回されるのではなく、長い目で見て正しいことにコミットする姿勢があります。(もちろん売上は大事ですが、売上はミッションを叶えるための手段です)
Duolingoはデータ・ドリブンな会社であると同時に、ミッション・ドリブンな会社でもあります。手前味噌ながらこの会社のすごいところは、それらが日々の業務にDNAとしてしっかり埋め込まれているところです。
まとめ
常にテストしているので、アプリは常に進化しています。1週間単位では小さな変化には気づかないかもしれませんが、1年単位になってくると、各段に良いプロダクトになっています。久しぶりにアプリを触ったユーザーにはよく驚かれます。
仮にDuolingoと内容が全く同じパクリサービスがリリースされたとしても、常に進化し、常に学んでいるので、すぐに大きな差がつきます。このテスト→進化のスピードこそが、強靭なMOATになっているのだと思います。
ネタバラシ
じつは本稿の内容のほとんどは、Duolingo BlogのImproving Duolingo, one experiment at a timeから拝借したものです。A/Bテストについてより詳しく紹介しているので、興味のある方はぜひご覧ください。
また、Duolingo Blogでは超絶イケてる当社内製の分析ツールの話や2022年の言語目標の設定方法なんて面白そうな記事がたくさんあるので、チェックしてみてください。(注:いまのところすべて英語のみです)
チャオ。
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?