成長させるためにユーザー獲得より先にすべきこと

# はじめに


自分でモバイルアプリやウェブサービス作成に携わった人であれば、「どうすればより多くユーザーが集められるか」と考えたことがあるのではないでしょうか。
色々なマーケティングのテクニック、例えばアドネットワークに課金してブーストで一時的にランキングを上げたり、バイラルの仕組みを工夫してインストール数を稼いだりするでしょう。
もちろんそれも大事なのですが、インストール数の最大化より先に注力する数字があります。それはリテンションレートです。

リテンションレートとは、ユーザーがどれだけ継続的に使用しているかを示す指標です。

![retention_low.png](https://qiita-image-store.s3.amazonaws.com/0/55741/0f01167c-80cc-8a3b-275c-5715cbf888c7.png)　![retention_high.png](https://qiita-image-store.s3.amazonaws.com/0/55741/c3c2160e-4101-7897-62ed-5a4f619e25aa.png)
「引用: Dan Wolchonok http://www.danwolch.com/ 」

左図のようにリテンションレートが低い状態だと継続的にユーザーを獲得し続けても、アクティブユーザー数は一定数で頭打ちになってしまいます。
しかし右図のように高いリテンションレートを維持することができれば、アクティブユーザー数が積み上がり、右肩上がりの成長を描くことができます。

# 計算方法の違い

では、具体的に見ていきましょう。
まず、リテンションと言っても計算方法はいくつかあり、自分のサービスの性質から最適な計算方法を選択するのが良いでしょう。
また、議論に齟齬が生まれないように、どの計算方法の話をしているのか事前に擦り合わせておいたほうが良いでしょう。
計測方法の種類については以下のサイトが参考になります。

http://www.applift.com/blog/user-retention

我々のアプリではクラシックリテンションを指標の一つとして使用しており、この記事でもクラシックリテンションを使用して話を進めます。

これはどのような計算方法かというと、例えば７日目のリテンションについて考えた場合、インストールしてからちょうど７日目に戻ってきたユーザーのみをリテンションしたユーザーとして考える方法です。

選択したのは以下の点が好都合だったからです。

* 計算がシンプルでわかりやすい
* MixPanelなどのアナリティクスサービスでも採用されている事が多く、サービス間の比較がしやすい
* 他のサービスでも使用されている事例が多く、数値の参考にしやすい

# 期間による違い

次に計測期間について見ていきます。
平均的な Android アプリのリテンションカーブは以下のような曲線を描くというデータがあります。

![retention_graph_average.png](https://qiita-image-store.s3.amazonaws.com/0/55741/2400b52f-3aa5-9bdf-d179-3a6229a0882e.png)
「引用: Andrew Chen http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/ 」

インストールからの日数によりカーブの傾きは大きく異なっており、それぞれの期間に適した目標値、戦略を取るのがよいでしょう。


# 短期のリテンション

上記の図で明らかなように、非常に多くの離脱が最初の３日間で発生しており、このデータによるとその数は77％にのぼります。
そこで、最初の３日間をひとつの期間とし、ここでは「短期のリテンション」と呼びます。
フレームワークによってはまだリテンションと呼ぶ段階に入っていないかもしれません。

この数字が悪ければ、その後のリテンションには期待できないので、まずここに集中する必要があります。
この短期のリテンションの改善は、リテンションカーブ全体を持ち上げるという役割が大きいと考えられます。

![shortterm_change.png](https://qiita-image-store.s3.amazonaws.com/0/55741/77d6867f-5d90-8776-fbec-212babcab78b.png)

## アハ体験

ここでの目標は如何に早くユーザーにアハ体験をさせるか、ということになります。
アハ体験の瞬間とは、ユーザーがプロダクトの価値を理解するターニングポイントであり、数字的には、アハ体験を経たユーザーと経ていないユーザーで大きくリテンションレートが別れる点のことを指します。

例えばFacebookでは１０日以内に７人の友人と繋がらせることが目標となっていたそうです。
（Chamath Palihapitiya http://genius.com/Chamath-palihapitiya-how-we-put-facebook-on-the-path-to-1-billion-users-annotated）

自分のプロダクトのアハ体験がどの瞬間に訪れるのか、どれだけ影響が大きいのか、そもそも存在するのか、を知ることは大変重要なテーマなのですが、私はまだ万能な見つけ方は発見できていません。
以下の記事が参考になるかもしれません。

https://apptimize.com/blog/2016/02/this-is-how-you-find-your-apps-aha-moment/

# 長期のリテンション

無事、アハ体験の瞬間を見つけ出し、短期のリテンションが満足いく値になったら、長期のリテンションに取り組むことができます。
ユーザー数の大きな変動が落ち着き、リテンションカーブの傾きが一定になったあたりからを、ここでは「長期のリテンション」と呼びます。
この時期では、プロダクトに価値を感じてくれたユーザーたちが定期的に使い始めてくれています。
長期のリテンションでは、文字通りできるだけ長い期間、繰り返し使い続けてもらうことが重要になります。

![longterm_change.png](https://qiita-image-store.s3.amazonaws.com/0/55741/538caf00-e030-d9ac-0171-b8a958825cd8.png)

長期のリテンションの改善は、リテンションカーブの傾きを持ち上げる意味合いが強いと考えられます。

## Habit フレームワーク

この数字を改善するには、ユーザーがアプリに触れることを、習慣として身につけてもらうことが大切です。習慣になってしまえば、無意識にアプリを利用してもらうサイクルに入ることができます。
いくつか、習慣（Habit）にするためのフレームワークが提案されていますが、共通した考え方を見出すことができます。

（Trigger）-> (Action) -> (Reward) -> ...

というサイクルです。
ユーザーがなんらかのきっかけ(Trigger)をもとにプロダクトに対して行動(Action)を行います。すると報酬(Reward)が与えられ、それが次の行動を起こすきっかけになる、というサイクルを繰り返すことで、次第に習慣として身につき、長期的に使用してもらえるようになります。

例えばFacebookでは各項目が以下のようにうまく機能しています。

(Trigger: 近況を報告・自慢したい。あるいは友人の投稿、レスポンスが気になる) -> (Action: 投稿、閲覧) -> (Reward: いいね、コメントをみて欲求が満たされる) -> ...

## 内部的Triggerと外部的Trigger

Triggerには外部的なものと、内部的なものがあります。
外部的なものはプッシュ通知や、メールなどであり、ユーザーに知覚してもらい、プロダクトに呼び戻します。
内部的なものは、例えばニュースが気になってアプリを開く、など特別な外部刺激を与えなくてもよいものです。
この内部Triggerをうまく設計できるかが長期的に使用してもらうためには重要になります。

# 計測

短期・長期のリテンションの問題点が分かった場合、改善の施策を行うことができます。
効果計測の実験は基本的にABテストを用いて行うのがよいでしょう。
もしABテストをしなかった場合、施策による変化の比較が難しくなります。私は以下のような失敗経験をしてきました。

## （失敗経験）機能のリリース前とリリース後で比較

* ７月に新機能をリリース、５−６月に獲得したユーザーと比較して７−８月に獲得したユーザーは７日目のリテンションレートが１％高かった！！！これは新機能が効果的だったと言えるのでは！？？
* 考えてみると５−６月には広告を多く出してたからユーザーの流入源に偏りがあるし、季節の影響も無視できない
* 本当に効果があったのか何とも言えない

機能の採用・不採用が明確にできないと不要な機能に工数を割いてしまうことになり、開発スピードを損なってしまいます。
ABテストを用いて比較することにより、これらの偏りを排除し、できるだけ平等な条件での比較が可能になります。
必要な機能が自明であれば話は別ですが、そうでなければ早めにABテストのフレームワークを用意することをおすすめします。

# さいごに

スタートアップでグロースに関わって得た経験、知見を共有しましたが、まだまだ手探りで進めています。
むしろ色々助けてほしいので、フィードバックや、間違いを指摘してくれるような方がいれば、大歓迎しております！

Drivemode社では運転者向けのアプリを作りたい仲間を募集しています！詳しくはこちら→ https://drivemode.workable.com/jobs/397748
https://www.wantedly.com/projects/83189
https://www.linkedin.com/jobs/view/257923392

Android Advent Calendar に投稿しておきながら、かなりプロダクト開発全般な話になってしまいました。
明日はsys1yagiさんのお話、楽しみですね！


```
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　
　　　　　　　　 ,. -‐'''''""¨¨¨ヽ
　　　　 　 　 (.＿＿_,,,... -ｧァﾌ|
　 　 　 　 　 |i i|　 　 }!　}} /／|
　　　　 　 　 |l､{　 　j}　/,,ｨ//｜
　　　　　　　 i|:!ヾ､_ﾉ／ u {:}//ﾍ
　　　　　　　 |ﾘ u' }　 ,ﾉ　_,!V,ﾊ |
　　 　 　 ／´fト､_{ﾙ{,ィ'ｅﾗ　, ﾀ人
　　　　 /' 　 ヾ|宀| {´,)⌒`/ |<ヽﾄiゝ
　　　　,ﾞ　 ／ )ヽ iLﾚ 　u' |　| ヾｌﾄﾊ〉
　　 　 |／_／　 ﾊ !ニ⊇　'／:} 　V:::::ヽ
　　　 /／ 二二二7'T'' ／u'　__ /:::::::/｀ヽ
　　　/'´r　-―一ｧ‐ﾞＴ´　'"´ ／::::／-‐ 　＼
　　 / // 　 广¨´ 　/'　　 ／:::::／´￣｀ヽ ⌒ヽ
　　ﾉ ' /　 ノ:::::`ー-､___／:::::／/ 　 　 　 ヽ　　}
_／｀丶　/::::::::::::::::::::::::::￣`ー-{:::...　　　 　　　ｲ 
```