KPIを定量的に取得してレポーティングしたい場合などに、Googleスプレッドシートを使って自動化する方法をメモ
方法
- Google Analyticsアドオンの設定
- レポーティング用のグラフを作成
- Google Analyticsアドオンのスケジュール設定
- Google Apps Scriptでメール通知機能の設定
1.Google Analyticsアドオンの設定
- まずはこちらの記事(https://tech.pepabo.com/2017/06/01/analytics-spread-sheet-add-on/)を参考に、アドオンをインストールする。
- 1年分のレポートを設定する。
- 7月分でいうと、以下同様に12ヶ月分設定します。
- Report Name 2019/07
- Start Date 7/1
- End Date 7/31
- 7月分でいうと、以下同様に12ヶ月分設定します。
- アドオン > Google Analytics > Run Report でレポートを生成する。
- 生成すると、これまでReport Configurationしかシートがなかったのが、新しく12個シートが作成され、過去分については、データが反映される。
2.レポーティング用のグラフを作成
※月ごとにKPI指標(今回はpageviewとする)をサマリーでグラフ出力する場合を想定
- レポーティンググラフ用のシート「Report Graph」を作成し、月ごとのTotals For All Resultsのデータをあらかじめ参照する。
- B2セルに、通知先のメールアドレスを記入する。(複数ある場合はカンマ区切りでOK)
- 毎月のPageviewsの推移を折れ線グラフで描画する。
3.Google Analyticsアドオンのスケジュール設定
- アドオン > Google Analytics > Schedule Reportsで、以下の設定にする。
- every month
- 1st
- 任意の時間(今回は4am – 5am)
4.Google Apps Scriptでメール通知機能の設定
function init () { var ss = SpreadsheetApp.getActiveSpreadsheet(); var ss_url = ss.getUrl(); var sheet = ss.getSheetByName('Report Graph'); var mailAddress = sheet.getRange('B2').getValue(); MailApp.sendEmail(mailAddress, '先月のレポートが完成しました','以下よりご確認ください。\n' + ss_url); }
現在のプロジェクトのトリガーをクリックする。
トリガーを追加ボタンをクリックし、出現したポップアップで下記の通り設定する。
- イベントのソース:時間主導型
- 時間ベースのトリガーのタイプを選択:月ベースのトリガー
- 日を選択:1日
- 時刻を選択:任意の時間(今回は6am – 7am、Google Analyticsアドオンで設定したSchedule Reportsの時間の一時間後とかでがいいと思う)
完
これで、レポートグラフが毎月自動更新され、メール通知が届くようになる。