RのWeb制作

Webサービス制作のための技術情報を。データ分析(Python、機械学習コンペ他)や自作野球ゲームMeisyoのこと中心。

Web制作 データサイエンス モバイル制作

ゲームアプリ運営の分析ノウハウ vol.1 概要編

投稿日:2023年7月29日 更新日:

はじめに

以前から、Twitterなどでこんな悩みを見聞きしていました。
「ゲームアプリを運営する際に、どのような視点で、どのような指標を分析すべきかわからない」というものです。今回はそちらのお悩みに対して、仕事で使っている分析ノウハウをお伝えできればと思います。

確かに、指標だけでもたくさんあるし、専門用語もよくわからない。
私も初めて見た時思いました。「わけわかんねぇ・・・」と。
KGI、KPI、新規継続率、既存継続率・・・

初めて見る方ははじめまして。
総合コンサルティング会社でデータ分析を担当しているれいです。新卒から製薬企業品質管理、データコンサル、総合コンサル(分析メイン)など、データサイエンティスト、プロジェクトマネージャーなど職種の違いはありますが、データ分析メインでやってきました。

ゲームはソーシャルゲーム中心に受け持ちましたが、コンシューマーやプラットフォーム系、筐体系の分析も経験があります。それらの経験のエッセンスを抽出してお伝えできればと思います。

今回は、ゲームアプリ(特にソーシャルゲーム)でよく使っていた分析とその考え方をお伝えします。そのため、買い切りアプリなどには適用できない考え方も多くあると思います。

1. 基礎的な考え方

まずは、大きな視点からロジックツリーを使い、問題になっていそうな指標を発見します。コンサルティングの現場ではよくありますが、全体観がない状況で分析して目標数値を最適化も、結局全体でみると何も変わらなかったみたいなことになりがちです。

そのため、大きい視点からまず分析していきます。

以下のように、売上から見ることが多いです。
売上 → プレイ人数 × 一人あたり売上

出てきた指標をさらに分解します。
プレイ人数 → 新規ユーザー + 既存ユーザー
一人あたり売上 → 広告売上 + 課金売上

そして、時間軸を設定します。
(月別)売上 → (月別)プレイ人数 × (月別)一人あたり売上
(日別)売上 → (日別)プレイ人数 × (日別)一人あたり売上

あなたのアプリはどこに問題がありそうでしょうか?
売上がそこまで多くないアプリでは、プレイ人数、一人当たりの売上どちらも低いです。

そもそも売上がゼロ(0)!という方は登録ユーザー、プレイユーザーを増やしましょう。

これまで私が経験したソーシャルゲームを指標とすると、プレイ人数は数万~数百万の単位です。少なくとも1万人はいないとサービス終了ラインに入ってくると思います。
課金額は、新規ユーザーに限定すると、開始30日以内の一人当たり課金売上が1,000円あると「まあいけるかな」という感じです。

既存ユーザーの課金額はゲームやイベントによってかなり大きく変化します。課金者一人当たり1か月の課金売上で1万5,000円程度はあるアプリが多かったですね。

・・・自分のアプリとスケールが違いすぎる・・・!と思われた方も多いかもしれません。
そのため、次のステップでは、いかに1円でも収益を増やすかを考えるための視点を提示します。

2. 小さく始めるための視点(ユーザー増加)

色々な指標はありますが、まずはユーザー(プレイ人数)を増やすことが重要です。

プレイ人数は下記のように分解できます。
プレイ人数 → 新規ユーザー + 既存ユーザー

かつ、新規ユーザーが既存ユーザーになるので、まずは新規をきちんと取れるか(既存ユーザーに移行させられるか)ということを考えましょう。

ここで定義の確認です。
新規:登録初日のユーザー
既存:登録初日ではないユーザー
ちなみに初心者は定義をおろそかにしがちですが、定義を固めないと正しい事後比較ができません。思ってたんとちゃう・・・みたいな指標を分析していたりします。

登録初日から次の日以降に、いかにプレイしてもらうかが重要になってきます。
そのため、指標は新規ユーザーの新規登録1日後継続率を見ます。

新規登録1日後継続率とは読んで字の通りですが、1日と継続の定義を加味すると、
「登録の次の日(1日後)にログイン(継続)しているかどうか」を判定します。
計算式は、新規ユーザー1日後継続ユーザー数 ÷ 新規ユーザー総数です。

1日後・・・新規登録の24-48時間の中にログインしていた人とします。

ソーシャルゲームでは最低25%、良いゲームだと50%を超えます。
それ以下になると定着しづらいので、一人当たり課金額がかなり高くないとサービス終了秒読みになります。

そのため、目標値は30%としましょう。

指標が決まったら、カスタマージャーニーマップや、ユーザーの遷移図を使って問題点を発見→対処していきます。
そういったものがなければ、自分で新しくゲーム内アカウントを作って、新規登録1日以内に触れられそうな部分をリストアップし、イケてなさそうな部分を回収していきます。

ここで重要なのは、最初に触れるものが一番大事というファネル思考です。
ユーザーはゲーム内のコンテンツに触れるたびに、「もういいかな」となって離脱していきます。
そのため、初期のコンテンツであればあるほどユーザーの離脱に影響します。

そこ辺りを注意して問題点に対処していってください。

新規1日後継続率が改善したとしましょう。
次は3日後継続率、7日後、14日後・・・と少しずつ確認のポイントを後ろにずらして、離脱していないことを確認します。

前提としてソーシャルゲームは毎日プレイしてもらうことを想定しているため、そのような日数で判定しています。
もう少しタイムスパンが長いようなゲームだと、月間プレイ人数で分析することが多かったです。

継続ユーザーについては、月間ユーザーの次の月の継続率が8割を下回らなければ問題ないです。
下回っているようであれば、下記のような観点で分析します。
・継続しなかったユーザーはそれ以降復帰していないか?
・ログインしてもコンテンツをプレイしない人はどれくらいいるか?(ログボ勢)
・いつ、どれくらいの人数がログインしているか?減っているタイミングはないか?
・毎日のプレイ回数は想定より少なくないか?少なくなっていないか?

単純に人数が減っているように見えても、理由によっては対応可能です。
・飽きてプレイしない → 離脱
・その他

飽きてプレイしないのが一番対応しづらいので、プレイ回数がどんどん減っているなどがあれば対応が必要でしょう。

3. 小さく始めるための視点(一人当たり売上増加)

続いて重要な視点は、一人当たりの売上を増やすことです。

一人あたり売上 → 広告売上 + 課金売上

広告売上については、下記のように分解しましょう。
広告売上 → 広告単価 × エンゲージメント回数

エンゲージメント回数(表示、クリック等を達成した回数)を増やすか、広告単価を増やすかが考えられます。

エンゲージメント回数を増やすには、以下のように分解するとよいでしょう。
エンゲージメント回数 → 広告表示回数 × エンゲージメント確率

確率は増やせませんが、表示回数は増減することができます。

広告の表示回数を増やしたらユーザーが離脱しそう・・・?大丈夫です。
とある実験では、表示回数を現実的な範囲内で増減する場合は、継続率は変わらなかったそうです。
実体験でも、広告を減らしたところで継続率変わらず、収益だけ減ったという・・・orz
人の行動は意外と直感的ではないのです。

課金売上では、分析するポイントは複数あります。
・商品軸:売上 → 商品単価 × 購入数
・人軸:売上 → 課金額 × 課金者数

施策で注意してほしい点は少ないです。
・商品数を増やしても、売上が上がるとは限らない
(ユーザーは欲しいものしか買わない…別視点では選択肢が増えすぎると、逆に売上が下がるようなことも起こり得ます)
・安売りをすると、後々売り上げが下がる
(利益の先食いになってしまうようです…)
・限定商品はマジで売れる
(きちんと他商品と差別化していれば、不思議と売れます)

おわりに

今回は「ゲームアプリを運営する際に、どのような視点で、どのような指標を分析すべきかわからない」について、ざっと確認しました。
ざっと確認というテイでブログを書いてみましたが、凄く・・・長いですね。

まずは、一つでも分析してみると、温度感や難易度が分かってくるかと思います。
ぜひお試しください(^^)/~

○○をどう分析すればいいかわからない、もっと深い分析(要因分析、需要予測など)がしたいなどがあれば、Twitter Rei_FarmsにDMいただければと思います。
お仕事の依頼も受け付けていますので、お気軽にお問い合わせください。

-Web制作, データサイエンス, モバイル制作

執筆者:


  1. […] そちらを解説していきます。 この記事はゲームアプリ運営の分析ノウハウ vol.1 概要編の続きです。 […]

comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

PHPで祝日判定

PHP 祝日判定で検索すると、「GoogleカレンダーAPIで祝日を取得する」ばかりです。 しかし、GoogleカレンダーAPIは抜け落ちている祝日が存在することが知られています。 今回は、抜け落ちが …

(VPSでつくる) Pythonのバージョンを2.7.5から3.6.8にする

連載第四回目です。 CentOS7にインストールされているPythonのバージョンが2.7なので、バージョンアップをします。 そうしないとPythonのアプリが動きません。 なぜなら、Python2と …

no image

EBS3 – 公開開始

ENDLESS BATTLE 3の公開を開始しました! コンセプトは以下の3点。 ・多vs多の戦略シミュレーション ・“最強”は要らない ・“THINK”(考え、行動せよ) ゲーム内容、予定も含めてま …

no image

[PHP]まとめ読みをPSRで改良する(4)

まとめ読みをPSRで改良する(3)から約一週間。 こんがらがっていた頭の中がすっきりして、なんとなくですがオブジェクト指向がわかってきたような気がします。 オブジェクト指向で大事そうなのは、機構(機能 …

Pandas DataFrameでの表示列・行をすべて表示する(表示制限を解除する)

Jupyter NotebookでPandasのDataFrameを表示する際、行数・列数が多すぎると省略されてしまう場合があります。 制限を解除しましょう。 pd.set_option(‘displ …