こんにちは、創作物のC to C ECサービス『BOOTH』のスマートフォンアプリ(以下BOOTHアプリ)ディレクターを担当しているwatasukeです。
私は2017年4月に入社して、当時開発中だったBOOTHアプリを担当することになりました。(8月中旬にリリースされています!ぜひダウンロードしてください。)
アプリのディレクションをするのは初めてでしたので、アプリの世界観や技術・周辺サービスを調査するところからはじめましたが、これが意外と難航しました。
アプリは新しい形態であるためか、「Webのアクセス分析だったらGoogle Analytics」というような「とりあえずこれ」というものがわかりにくいように思います。一方で、市場規模や期待度、開発コストは非常に大きいので、小さく失敗することもしにくく、なかなか悩まされました。
そこでこの記事では、いろいろなサービスを比較しながら調べ、実際に使ってみた立場から、「アプリ開発するならこのサービスがおすすめ!」と言えるものを共有したいと思います。
これからアプリを開発しようとしている方、もっとうまいやり方を探している方、アプリを伸ばしたい方……要するに、過去の私のような方の助けになれば幸いです。
【分析・アナリティクス】
Firebase (with BigQuery)
もはや定番という感じになりつつあるFirebase。ユーザー数などの基本的な数値はデフォルトで取ってくれて、ダッシュボードが自動でいい感じにつくられる他、継続率や設定したフロー上のどこで離脱しているか、カスタムで設定したイベント(どこのボタンをタップしたとか)の数値も見れます。イベントのパラメータまで取得できるので、いろいろ設定して参考にしましょう。
ただし、設定できるイベントのパラメータには上限があったりと、細かい分析はちょっと苦手です。そんな場合は、BigQueryと連携してDataStudioなどで見るのがオススメです。数クリックでBigQueryに連携できるのは感動しました。
日本語版のドキュメントは、ところどころ内容が古く情報が足りないことがあるので、原文(英語)を読むと良いです。
Repro
基本的な分析機能に加えて、Reproのユニークなところは、ユーザーの利用模様の動画分析ができること。 カートに入れたけど購入に至らなかった人がどんな操作していたのか、など定性的な操作を動画で見られるので、それを元にした改善のタネを見つけることができます。BOOTHアプリチームでは動画を見ながらランチMTGをする時間を設けています。
くわえて、アナリティクスで見出した特徴的なユーザーに対してのプッシュ通知ができます。「カートには入れたが買ってないユーザー」にプッシュ通知などですね。
無料で使い始められますが、ある程度の規模になると課金しないと取れないデータが出てくるので、そうなってから課金するか判断してもいいかもしれません。
Answers
Answersは基本的な分析ができる他、データの反映スピードが早いので、リリース直後などに、正常に動いているかを見るのに役立ちます。
また、もともとTwitter社が提供していたアプリ開発プラットフォームツールのFabricの機能のひとつでもあることから、Twitter広告の効果測定にも無料で用いることができます。
Google Analytics
Firebaseの計測はイベントがメインのため、スクリーン遷移の動向は調べにくいです。また、細かいユーザーの情報まで見れるので、それが必要な場合は入れたいところ。
基本的にはGoogle的にはアプリのアナリティクスはFirebaseに移行、統合していく方針のようですが、まだGoogleAnalyticsでしかできない、見にくいところがあるので、できれば入れておきたいです。
【プッシュ通知】
OneSignal
「プッシュ通知でやりたいことは、だいたいOneSignalでできる。」というのが大まかなな感想です。プッシュ通知のAPI経由送信、開封率・CVR計測、多数のセグメント作成などなど……多くの機能が備わっているのに完全無料。 対抗馬としてはFirebaseが出てきますが、Firebaseだとイマイチなところ(作れるセグメントが少ない上に更新の仕方が微妙など)を潰してくれる感じがあります。
まだ日本語の情報が少ないようにも思いますが、ドキュメントは充実していますし、チャットサポートも行ってくれます。 ウェブプッシュにも使えるので、BOOTHではそちらもあわせて使っていきたいと考えています。
Repro
上述の通り、アナリティクスで取得したデータを元にプッシュ通知、アプリ内メッセージを送れます。アプリ内メッセージというのは以下のようなものです。
カートに商品が残っているユーザーに対して週一でABテストをしながらプッシュ通知を行ってCVRを見る、アプリを立ち上げたときにキャンペーンを訴求する、などをエンジニアの手をかけずにできるようになるのが嬉しいところです。
【ベータ版配布】
Balto
Goodpatch社製の配布ツール兼フィードバックツール。スマホにインストールしたベータ版アプリを触りながら、スマホでそのままキャプチャ画像をあわせてフィードバックを送れます。
GIF動画でもフィードバックを送れるので、文字では伝えづらい、「このタイミング、この画面のココ」をわかりやすく伝えられるのが嬉しいところ。 これまでスプレッドシートなどで管理していた修正依頼が、見える化される感覚があります。送ったフィードバックをワンクリックでGitHubのissueにできるのも重宝します。
ウェブサイトでも使えるらしいですが、そちらはまだ入れていません。
まだ荒削りなところもありますが、頻繁にアップデートされているので今後の進化にも期待しています。 初期1ヶ月間は無料で試せます。
【2017年10月31日追記】
2018年1月31日をもって、Baltoはサービスを終了されるそうです。使い勝手がよかっただけに残念です。 類似サービスとしてInstabugというサービスがあるので、BOOTHチームではこちらに置き換えていく予定です。
DeployGate
ディレクターの視点としては、Deploygateは発行されるURLを渡すだけでベータ版アプリの配布ができる機能はかなり楽ちんです。メールアドレスを聞いて、招待して、登録してもらって…という過程を踏まなくてよいので、多くの人にテストをしてもらい評価してもらうことができます。
BOOTHでは、チーム内でのフィードバックはBaltoで、社内テストなど多数の人間にテストしてもらうときはDeployGate、というように使いわけています。
無料でやろうとするなら、
あたりでしょうか。それぞれそこまで強い不満もないので、上記のおすすめポイントが不要なら問題ないと思います。
【クラッシュ検知】
Crashlytics
実質的にデファクトスタンダードのクラッシュ検知サービス。 どんなタイミングでどんなエラーを起こしてクラッシュしたのかを見ることができます。 Googleが買収して、いずれFirebaseに統合されることがアナウンスされています。
【その他】
AppFollow
アプリのレビューをSlackに流してくれるほか、評判のいいレビューを連携したTwitterアカウントに流してくれたりします。 Slack上でランキングの推移も教えてくれたりと、ストアでの情報を把握するのに便利に使えます。2アプリまでは無料なのも嬉しいですね。
Firebase
上で紹介した他にも、Firebaseには便利な機能があります。 たとえばDynamic Links。これは、「iOSかAndroidか」「インストール済か否か」を区別してストアに飛ばしたりアプリで起動したり挙動を変える一つのリンクを吐き出してくれる機能です。
またRemote Configは、あらかじめ指定した箇所であればアプリのアップデートを公開しなくても、アプリの動作や外観を変更することができます。 ほかにもユーザー認証やストレージなど、なにかと頼りになる機能があるので、とりあえず入れておいて損はないと言えると思います。
おわりに
今回紹介したほかにもHelpShift(アプリ内にチャット式サポート窓口を簡単に作れたり、FAQをかんたんに作れたりする)やAdGeneration(広告掲載用SSP)など気になったサービスはあるのですが、BOOTHでは採用していないため省きました。
ここに挙げたのはあくまで、いちディレクター視点のものではありますが、アプリを作る方の参考になりましたら幸いです。
また「これらのサービスもう知ってたよ」「新しいサービス知るの好きだよ」という情報感度の高い方、あなたとぜひ一緒に働きたいので、ご興味ありましたらお声がけください!