Google Apps ScriptとGA4の連携で広がる可能性
Google Analytics 4(GA4)は、イベントベースのデータモデルを採用し、ユーザー行動をより詳細に追跡できる強力なツールです。一方で、そのデータを効率的に活用するには、適切な自動化と分析環境が必要です。Google Apps Script(GAS)は、Google Workspace製品と連携し、自動化やカスタマイズを可能にするスクリプト環境で、GA4データの取得や管理に最適な手段となります。本記事では、GASを使ったGA4データの取得・活用方法について解説します。
Google Apps Scriptとは?
Google Apps Script(GAS)は、JavaScriptベースのクラウド型スクリプト環境です。GoogleスプレッドシートやGmailなどのGoogleサービスと連携して、自動化やカスタマイズが可能です。特にGA4のデータ取得では、GASを通じてGoogle Analytics Data APIを利用することで、手動操作を減らし、効率的なデータ管理が実現します。
GA4とAPI連携のメリット
- 自動化: デイリーレポートや定期的なデータ更新作業を自動化できます。
- 柔軟なカスタマイズ: 必要な指標やディメンションだけを抽出し、自社ニーズに合わせたレポート作成が可能です。
- コスト削減: 無料で利用できるGASは、他の有料ツールに比べて低コストで運用できます。
GASでGA4データを取得する準備
GA4データ取得には以下の準備が必要です:
- Google Cloud Platform(GCP)の設定
- GCPで新しいプロジェクトを作成し、「Google Analytics Data API」を有効化します。
- OAuth 2.0クライアントIDを作成し、認証情報をダウンロードします。
- スプレッドシートとGASプロジェクトの準備
- データ保存用のスプレッドシートを作成します。
- スプレッドシートから「拡張機能 > Apps Script」を選択してGASエディタを開きます。
- Analytics Data APIサービスの追加
- GASエディタ内で「サービスを追加」から「Google Analytics Data API」を選択し、有効化します。
これらの設定が完了すれば、スクリプトを書く準備が整います。
実際にデータ取得スクリプトを書く
以下は、GA4から「アクティブユーザー数」を都市別に取得し、スプレッドシートに出力するサンプルコードです:
const propertyId = ‘YOUR-GA4-PROPERTY-ID’; // GA4プロパティIDを入力してください
try {
const metric = AnalyticsData.newMetric();
metric.name = ‘activeUsers’;const dimension = AnalyticsData.newDimension();
dimension.name = ‘city’;
const dateRange = AnalyticsData.newDateRange();
dateRange.startDate = ‘2023-01-01’;
dateRange.endDate = ‘today’;
const request = AnalyticsData.newRunReportRequest();
request.dimensions = [dimension];
request.metrics = [metric];
request.dateRanges = [dateRange];
const report = AnalyticsData.Properties.runReport(request, `properties/${propertyId}`);
if (!report.rows) {
console.log(‘No data found.’);
return;
}
const spreadsheet = SpreadsheetApp.create(‘GA4 Report’);
const sheet = spreadsheet.getActiveSheet();
// ヘッダー行を追加
const headers = […report.dimensionHeaders.map(h => h.name), …report.metricHeaders.map(h => h.name)];
sheet.appendRow(headers);
// データ行を追加
report.rows.forEach(row => {
const dataRow = […row.dimensionValues.map(v => v.value), …row.metricValues.map(v => v.value)];
sheet.appendRow(dataRow);
});
console.log(`Report created: ${spreadsheet.getUrl()}`);
} catch (error) {
console.error(`Error: ${error.message}`);
}
}
このコードは、指定した期間内のアクティブユーザー数を都市別に取得し、新しいスプレッドシートに出力します。「YOUR-GA4-PROPERTY-ID」の部分には、自分のGA4プロパティIDを入力してください。
自動化とトリガー設定でさらに便利に
GASでは定期実行トリガーを設定することで、自動レポート更新が可能です:
- GASエディタで「時計アイコン」をクリックして新しいトリガーを追加します。
- 関数名として「runReport」を選択し、実行頻度(例: 毎日午前9時)を設定します。
これにより、毎日最新データが自動的にスプレッドシートへ反映されます。
データ分析への応用例
取得したGA4データは以下のような用途に活用できます:
- KPIモニタリング: アクティブユーザー数やコンバージョン率など重要指標の定期チェック。
- 地域別分析: 地域ごとのユーザー行動分析によるマーケティング施策立案。
- キャンペーン効果測定: 広告キャンペーン期間中のユーザーエンゲージメント把握。
これらはすべてスプレッドシート上で簡単に可視化・共有できます。
技術的注意点とベストプラクティス
- APIリクエスト制限: GA4 APIにはリクエスト上限があるため、大量データ取得時は注意が必要です。必要最小限の指標・ディメンション設定がおすすめです。
- コード最適化: スクリプト内で無駄な処理やAPIコールを減らすことで実行速度が向上します。
まとめ
Google Apps ScriptとGA4 Data APIを活用することで、手間のかかるデータ取得作業が効率化されます。この仕組みはマーケティング担当者がより戦略的な業務に集中できる環境づくりにも役立ちます。本記事で紹介した手順やサンプルコードを参考に、自社のデータ活用能力向上に挑戦してみてください!
![](https://dmp.intimatemerger.com/media/wp-content/uploads/2024/11/スクリーンショット-2024-11-07-154630.png)
「IMデジタルマーケティングニュース」編集者として、最新のトレンドやテクニックを分かりやすく解説しています。業界の変化に対応し、読者の成功をサポートする記事をお届けしています。