Google Apps ScriptでGoogle Analyticsのデータを取得する(GA4対応)

2023年7月1日、Google Analyticsが大きく生まれ変わるにあたって、現在、Google Analytics 4への移行が推奨されています。これまでのトラッキングコードであるUA-XXXは利用できなくなり、G-XXXXという新しいコードで新しい解析手法でデータを取得することになります。

Google Apps Scriptではこれまで、Google Cloud Consoleで設定を行えば利用できましたが、今回の移行に合わせてGA4対応の「Google Analytics Data API」がリリースされました。GCPでの設定が不要でGASから簡単に統計データを取得する事が可能になっています。今回はGA4対応のスクリプトを利用してみたいと思います。

今回使用するスプレッドシート等

旧Google Analyticsとは初期の準備が大分ことなります。公式でもアナウンスされていますが、移行期限までに移行作業をしておかないと、ウェブアクセス解析が出来なくなるので、要注意です。

また今回は、WordPressで使用する事が前提です。プラグインはSimple SEO PackがGA4に対応しているので、導入しましょう。

※ただ、これまでの旧版と違い取得できるデータが随分と簡素になってしまったような。これから色々追加されると思うのですが。

事前準備

GA4へ移行する

既に移行の為のアナウンスがAnalyticsのページの上部に出ているのでそこから、移行作業を開始します。左サイドバーの管理⇒GA4設定アシスタントでも同じページを開く事が出来ますので、まずはそこから初めます。

  1. 新しい Google アナリティクス 4 プロパティを作成するのはじめにをクリックする
  2. ダイアログが出たら、「プロパティを作成」をクリックする
  3. GA4プロパティを確認をクリック
  4. アシスタントの設定がが開かれるので、表示されてるURLが正しいか確認(違っていたら、データストリームから変更可能
  5. ウェブタブをクリックして、ウェブストリームの詳細を開く
  6. 自分のサイトのレコードをクリックする
  7. 測定 IDが新しいトラッキングコードになるので、これをコピーしておく(これがWordPress用に必要)
  8. 続けて、上部のアナリティクスのロゴの隣の▼をクリックする
  9. GA4のプロパティの下に表示されてる数字(プロパティID)をコピーしておく(これがGAS用に必要)

図:GA4移行アシスタント

図:測定IDを取得する

図:プロパティIDも必要です

WordPressに設定

WordPressに予めプラグインとして、Simple SEO Packをインストールして有効化しておきます。

  1. WordPressの左サイドバーに出てる「SEO PACK」をクリックする
  2. 一般設定を開く
  3. Googleアナリティクスを開く
  4. トラッキングコードの種類をgtag.jsに変更する
  5. 「トラッキングID」または「測定ID」に前項で取得した測定IDを入力する
  6. 設定を保存するクリック

これで、しばらく放置しておけば、WordPressへのアクセスログがGA4として計測したデータがAnalyticsに表示されるようになります。

図:測定IDを登録する

GAS側の準備

スクリプトエディタを開き、以下の作業をするだけで利用できるようになっています。

  1. 左サイドバーの「サービス」の+アイコンをクリックする
  2. Google Analytics Data APIが表示されてるのでそれをクリックする(まだ、v1betaです)
  3. 追加をクリック
  4. AnalyticsDataから始まるメソッドとして呼び出す事が可能です。

サンプルコードは、Analytics Data Serviceに掲載されています。API自体の詳細はこちらに掲載されています。

図:サービスの追加が必要です

図:最初の1回目だけ認証が必要

ソースコード

ポイントはメトリクスとディメンションの2つ。この2つに何が指定出来るのか?はGA4 Query Explorerにて調べる事が可能です。リアルタイムレポートやクロス集計も取れるようなので、今回は通常のレポートではなくリアルタイムレポートを取得してみます。

レスポンスはJSONで返ってくるので色々加工してからスプレッドシートに書き出しが必要です。

  • propertyIdに前項で取得したプロパティIDを入れておきます。
  • 今回はリアルタイムレポートなのでリクエストはAnalyticsData.Properties.runRealtimeReportで行います
  • メトリック、ディメンションを指定する(通常レポートの場合は期間も必要)
  • 返り値のJSONデータにヘッダとデータが含まれているのでそれをスプレッドシートに書き出しています。

図:metricsの離脱率(bounceRate)を指定中

図:リアルタイムデータを取得できた

関連リンク

共有してみる:

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください