![見出し画像](https://assets.st-note.com/production/uploads/images/80191761/rectangle_large_type_2_dc75641f9099026ca6d35fe818eb620f.png?width=1200)
GASで繋ぐ!GoogleAnalytics×Slack通知【サンプルコード付き】
こんにちは、元エンジニアのマーケター田平です(@yoshi_tahi)。
今回は私が業務で実際に活用しているGoogle Apps Script(GAS)を用いたGoogle AnalyticsとSlackの連携について紹介します。
サイト運用を担当している方が多く利用しているGoogle Analyticsですが、色々なことが出来るが故に「本当に重要な指標のモニタリングがしづらい」「特定のメンバーしかモニタリングしない」といったことがないでしょうか?
Google Apps Script(GAS)を用いて、Google Analyticsの数値を自動でSlack通知することで、重要な指標の変化をラクにモニタリングできるようになります。「なぜ自動化をすべきなのか」という意義から「GASでどのようなことが出来るのか」という具体的なところまで解説します。
1. 自動化の意義
![GASで紡ぐGoogleAnalytics×Slack通知_自動化の意義_人間と機械](https://assets.st-note.com/img/1654917898227-y7P0DEKzSO.png?width=1200)
1-①. なぜ自動化をすべきなのか
唐突ですが、人間と機械どちらの方が優れていると思いますか?
私は人間様に機械が敵うはずがないと思っているのですが、実際のところはケースバイケースです。
例えば以下のようなやることがカッチリと決まっているケース。機械(bot)が得意とするシーンです。逆に人間はあまり得意ではないシーンですね。秒単位で指定されているため、よほど記憶力が良い人ではない限り十中八九忘れます。というか覚える気も湧かないと思います。
![GASで紡ぐGoogleAnalytics×Slack通知_自動化の意義_定型作業](https://assets.st-note.com/img/1654918059819-DbmbWo7SIL.png?width=1200)
次に、以下のような曖昧な指示。これは人間が得意とするシーンです。言葉の裏に隠れた相手の要望を汲み取り、それに応えるという高度なことを行っています。一方で機械はあまり得意としておらず、具体的な定義がない言葉は基本的に解釈できません。
![GASで紡ぐGoogleAnalytics×Slack通知_自動化の意義_曖昧さのある作業](https://assets.st-note.com/img/1654918074804-H3Nq6yZgt2.png?width=1200)
つまり何が言いたいかというと、本来人間は自身が得意とする曖昧さのある(クリエイティブな)仕事に注力すべきだということです。定型作業(やり方やタイミングが決まった作業)にかかる時間は極力減らすべきなのです。なぜなら本分でもなければ得意なことでもないので。
まとめると、自動化の意義は定型作業にかかる時間を減らすことで、クリエイティブな仕事に注力できることです。機械が得意としている定型作業は機械にまかせて、我々人間はクリエイティブなことに集中しましょう。互いに補完し合う、人と人との関係性と一緒です。
1-②. なぜSlack通知をすべきなのか
今回の主題である「重要指標のSlack通知」の意義は何でしょうか?
それはチームメンバー全員の数値変化への感度を高めることです。適切な頻度で強制的に目に入るようにすることで、各自の主体性に依存せずに数字へ意識を向けさせることができます。(各自の主体性も勿論大事ですが!!)
この際に特に気を付けてほしいのは、前期間からの変動や目標に対する進捗度など、数字の変化(比較)を通知するようにすることです。普段からデータを見ている人であれば自分の中にものさしを持っているので、絶対値を見ただけでそれが高いのか低いのか相対的に解釈できます。一方で、普段あまりデータを見ていない人はものさしが無いので絶対値を見ただけで相対的な解釈はできません。なので、最初から相対的な変化(比較)を示しましょう。
以降の章で、Google Apps Scriptを活用したSlackへの自動通知のやり方を詳細に説明します。Slack通知でチームメンバー全員の数値変化への感度を高め、チームでPDCAサイクルをガンガン回せるようになりましょう!
2. 全体像:Google Analytics→スプシ→(GAS)→Slack
![GASで紡ぐGoogleAnalytics×Slack通知_出来るようになること](https://assets.st-note.com/img/1654918556488-wp8Ng5IXfP.png?width=1200)
本記事で出来るようになることは、データ抽出とレポーティングの自動化です。
Google Analyticsからスプレッドシートへの自動抽出
スプレッドシートの内容の自動Slack通知
![GASで紡ぐGoogleAnalytics×Slack通知_全体構成](https://assets.st-note.com/img/1654918785713-bDZuZkzWQS.png?width=1200)
以降の章で、GA→スプシへの自動抽出とスプシ→Slackへの自動通知に分けて解説していきます。
3. スプレッドシートアドオンによるGoogle Analyticsの自動集計
![GASで紡ぐGoogleAnalytics×Slack通知_GA→スプシ](https://assets.st-note.com/img/1654919364751-HwFkVeQ73V.png?width=1200)
まず、以下の手順でGA→スプシへの自動抽出の設定を行います。
①スプレッドシートにGoogle Analyticsアドオンを追加
②抽出条件の設定
③Google Analyticsのデータを抽出
④自動抽出の設定
それぞれ詳しく解説します。
3-①. スプレッドシートにGoogle Analyticsアドオンを追加
スプレッドシートを開き、「アドオン」→「アドオンを取得」をクリック
![](https://assets.st-note.com/img/1654999856499-wSfjrvpfH2.png)
「Google Analytics」で検索→公式のアドオンをクリック→インストール
![](https://assets.st-note.com/img/1654999909979-KmEaqsQKEO.png)
3-②. 抽出条件の設定
「アドオン」→「Google Analytics」→「Create new report」をクリック
![](https://assets.st-note.com/img/1654999977801-SfgQfyiKYH.png?width=1200)
レポート名と参照先の設定
①任意のレポート名を入力
②GAのどのビューを参照するか設定
![](https://assets.st-note.com/img/1655000087054-4RvHJco5Tw.png)
取得する指標の設定
Metrics:取得したいデータ(指標)
例)Pageviews:ページビュー数
例)New Users:新規ユーザー数
Dimensions:データの切り口
例)Month of Year:月単位で表示(時系列)
例)User Type:ユーザー種別(新規orリピーター)ごとに表示
Segments:セグメントの絞り込み
例)New Users:新規ユーザー
![](https://assets.st-note.com/img/1655000306820-xVQXuTqRts.png)
『Report Configuration』というシートが作成され、設定内容が記入されていることを確認
![](https://assets.st-note.com/img/1655000365851-kaDKy8gWlX.png)
3-③. Google Analyticsのデータを抽出
「アドオン」→「Google Analytics」→「Run reports」をクリック
![](https://assets.st-note.com/img/1655000426801-2ZK4jtWkdh.png?width=1200)
以下のように新しいシートが作成されればOK
![](https://assets.st-note.com/img/1655000542260-nHZFNWMdJN.png)
3-④. 自動抽出の設定
「アドオン」→「Google Analytics」→「Schedule reports」をクリック
![](https://assets.st-note.com/img/1655000607712-00oWV2Lwx6.png)
「Enable reports to run automatically.」にチェック→集計頻度と時間帯を選択→「Save」をクリック
4. GoogleAppsScriptを用いたSlackへの自動通知
![GASで紡ぐGoogleAnalytics×Slack通知_スプシ→Slack](https://assets.st-note.com/img/1654919393640-eg3iiyoaQ4.png?width=1200)
次に、スプシ→Slackへの自動通知の設定を行います。
①Google Apps ScriptのSlack連携の設定
②Slack botの作成
③Slack通知のコードを書く
④自動通知の設定
4-①. Google Apps ScriptのSlack連携の設定
スプレッドシート > 拡張機能 > Apps Script
![](https://assets.st-note.com/img/1655003499535-zMylB4sh24.png)
ライブラリ横の「+」をクリック
![](https://assets.st-note.com/img/1655003541334-vgvdBfVj2k.png)
SlackAppのスクリプトIDを入力 > 検索 > 追加をクリック
![](https://assets.st-note.com/img/1655003667497-SVXIr5bOHn.png?width=1200)
ライブラリの下にSlackAppと表示されればOK
![](https://assets.st-note.com/img/1655003782174-xUHHmw9R0s.png)
4-②. Slack botの作成方法
Slack APIのページから作成できます。
※Slack botのトークンIDをメモしておきましょう(コーディングの際に必要となります)
作成方法の詳細はこちらの記事が参考になります。
4-③. Slack通知のコードを書く
![GASで紡ぐGoogleAnalytics×Slack通知_スプシ→(GAS)→Slackの連携イメージ](https://assets.st-note.com/img/1654919616421-ZDTZGXUPfS.png?width=1200)
サンプルシート ※ダミーデータです
GAから出力されたデータをサンプルシートでサマリーに起こしています
「先週との比較」や「目標に対する進捗度」等、数字の変化が分かるように設計しています
こちらのシートを参考に、ご自身でシートを作成してみてください
サンプルコード(解説付き)
![](https://assets.st-note.com/img/1655011935239-sKGvMQbcBx.png?width=1200)
サンプルシートに記載されている内容を、行数・列数指定で取得し、メッセージを作成、Slackに通知するコードです
"トークンID"、"Slackチャンネル名"、"スプシのID"はご自身で用意したものに書き換えてご利用ください
記事を購入していただくと、コピペで使えるサンプルコードとコードの解説が表示されます。
ここから先は
¥ 500
Amazonギフトカード5,000円分が当たる
この記事が気に入ったらチップで応援してみませんか?