Google Apps ScriptでGA4のData APIベータ版から数行でデータを抽出する

Google AnalyticsデータをGoogle Spreadsheetへエクスポートすることで、簡単にレポーティングや分析を行うことができます。(データポータルを使っていてもね!

Google Apps ScriptのサービスにData APIのv1beta版が入っていたので早速利用してみました。


Serviceを有効にすればレポートデータを単純取り出すだけなら5行くらいで終わり。今回はSpreadsheetへ書き出しの部分も含めて書いてみました。


function gaDataGet() {

// 任意のSpreadsheetを指定してデータを出力する場合は必要
  const ss = SpreadsheetApp.openById('●●Spreadsheet ID●●');
  const sheet = ss.getActiveSheet();

  const property = "properties/●●自分のGA Property ID●●";
  const requestBody = {
    "dateRanges": [{"startDate": "2021-08-01",  "endDate": "2021-08-31"}],
    "dimensions": [{"name": "pagePath"}],
    "metrics": [{"name": "screenPageViews"}]
    };
  let reports = AnalyticsData.Properties.runReport(requestBody, property);

// Spreadsheetへデータのみ書き出し。今回はdimension 1つ、metrics 1つなのでindexはべた書き
  for(i = 0; i < reports.rows.length; i++){
    for(j = 0; j < 2; j++){
      sheet.getRange(i + 1, 1).setValue(reports.rows[i].dimensionValues[0].value);
      sheet.getRange(i + 1, 2).setValue(reports.rows[i].metricValues[0].value);
    }
  }
}


単純なrunReportのみの例ですが他にもいくつか種類があります。

  • batchRunPivotReports
  • batchRunReports
  • checkCompatibility
  • getMetadata
  • runPivotReport
  • runRealtimeReport
  • runReport
データを色々と出してみつつ分析効率を高めたいと思います。

(参考)REST Resource: properties

2021年8月のGoogle AnalyticsとSearch Consoleドキュメント系アップデート

    更新されたドキュメントの中でも、ちょっと個人的に気になったものです。

■Google Analytics

  • [GA4] Predefined user dimensions
    • 事前定義されたユーザーディメンション追加。UAに合わせにいった感じ。
      • ブラウザ
      • 市区町村
      • 大陸
      • 地域
      • 亜大陸
      • 緯度・経度
      • OS
      • プラットフォーム
  • [GA4] 推奨イベント: オンライン販売
    • 推奨イベント追加
      • generate_lead
  • [GA4] Reports, dimensions, and metrics
    • Metrics追加 : Average engagement time per session
  • Google アナリティクス 360 ベータ版
    • ベータ版提供期間が2022年12月31日まで延長
    • 「非サンプリング データ探索」追加。360の場合は1日500億件
    • 「360 へのアップグレードまたは 360 からのダウングレード」項目が追加(8/20リリース機能)
  • 用語定義 : 権限
    • 管理画面上の変更はまだありませんが、権限名を変更しているみたい
      • ユーザー管理 -> 管理者
      • 編集 -> 編集者
      • 共有設定 -> アナリスト
      • 表示と分析 -> 閲覧者
    • 他のページもヘルプ上は権限名称をどんどん変更している
  • gtag.js API リファレンス
    • gclidに加えauidが追加。Google AdsがAWコードだからAWのuser idかな?
  • [削除]推奨イベント : 旅行
    • 推奨イベントが各業種別ありましたが、いくつかページ自体消えている。業種が変わってもイベントは一緒なものが多かったので、まとめていったと思われる
    • 推奨イベントの推奨パラメータがすべてなくなった...
  • Google Analytics Data API : Dimensions & Metrics 追加
    • dateHourMinute
    • minute
    • nthMinute
  • [新規]US限定 Phone Analytics with gtag.js
  • [新規]360ユーザ用 : Unsampled explorations (beta)
■Google Search Console

  • インデックス カバレッジ レポート
    • 何を確認すればよいか、何を確認しなくてよいかの記述が分かりやすくなった
    • こういう文章にGoogleとしての大変さが滲み出ますよね...
  • ページ エクスペリエンス レポート
    • 「データの欠落」追加。
    • リリースして日が浅いとか、ほとんどアクセスが無いとかの説明。
  • 所有者、ユーザー、権限の管理
    • 委任された所有者権限追加。確認された所有者がいなくなったタイミングで自動的に削除。
    • コンサル向けっぽいけど、以前は確認済み所有者しかなかったように思う。英語でもDelegated owner扱い。ウェブマスターセントラル画面で操作してもよく分からなかったけど、恐らくSearch Console側でユーザを追加するとOwnerになってしまい、ウェブマスターセントラル側でユーザを追加すると委任扱いになるとかそんな感じかも。
    • コンサル等にデータを見せている場合はOwner権限ではなく「委任」扱いにしたほうがよさそう
■Google Tag Manager