技術ブログ

GASでGoogle Analyticsデータを自動取得!初心者向け徹底解説

/ 初心者向け

GASでGoogle Analyticsデータを自動取得!初心者向け徹底解説

GASでGoogle Analyticsデータを自動取得!初心者向け徹底解説

Google Analytics(GA)は、ウェブサイトのアクセス状況を把握するための強力なツールです。しかし、日々のレポート作成やデータ分析のために、GAの管理画面を毎回開いてデータをエクスポートするのは手間がかかりますよね。

そんな悩みを解決するのが、Google Apps Script(GAS)です!GASを使えば、Google Analyticsのデータを自動で取得し、スプレッドシートに集計したり、メールで送信したりと、様々な自動化を実現できます。

今回は、GASの初心者の方でも理解できるように、Google Analyticsのデータを自動取得する基本的な方法を、ステップバイステップで解説していきます。

なぜGASでGoogle Analyticsデータを取得するのか?

GASでGAデータを自動取得するメリットは、主に以下の3点です。

  • 作業の自動化と効率化: 定期的なデータ取得やレポート作成にかかる時間を大幅に削減できます。
  • データの一元管理: 取得したデータをスプレッドシートに集約し、他のデータと組み合わせて分析しやすくなります。
  • リアルタイムなデータ活用: 最新のデータを常に利用できるようになり、迅速な意思決定を支援します。

GASでGoogle Analyticsデータを取得する準備

始める前に、いくつかの準備が必要です。

1. Googleアカウント: GASを利用するにはGoogleアカウントが必要です。

2. Google Analyticsアカウントとトラッキングコード: 分析したいウェブサイトにGoogle Analyticsが導入されており、トラッキングコードが正しく設定されていることを確認してください。

3. Google Apps Scriptエディタ: Googleドライブから「新規」→「その他」→「Google Apps Script」を選択して起動します。

GASでGoogle Analytics APIに接続する

GASからGoogle Analytics APIにアクセスするには、まずAPIを有効にする必要があります。

1. Google Cloud Consoleを開く: Google Cloud Platformのコンソールにアクセスします。

2. プロジェクトの選択: GASを実行するプロジェクトを選択または新規作成します。

3. APIライブラリで「Google Analytics API」を検索して有効にする: 検索バーに「Google Analytics API」と入力し、表示されたら「有効にする」をクリックします。

GASでGoogle Analyticsデータを取得するスクリプトを作成する

それでは、いよいよGASでGoogle Analyticsデータを取得するスクリプトを作成しましょう。ここでは、日次のセッション数を取得し、スプレッドシートに書き込む簡単な例を紹介します。

1. スクリプトファイルを作成する

GASエディタで新しいスクリプトファイルを作成し、以下のコードを貼り付けます。

function getAnalyticsData() {
  // 取得したいGAのビューIDを指定します。
  // GAの管理画面の「設定」→「ビュー」で確認できます。
  var VIEW_ID = 'YOUR_VIEW_ID'; // ここにあなたのビューIDを入力してください

  // 取得したい期間を指定します。
  // 'today', 'yesterday', '7daysAgo', '30daysAgo', 'YYYY-MM-DD' など
  var startDate = '7daysAgo';
  var endDate = 'yesterday';

  // 取得するメトリクスを指定します。
  // 今回はセッション数を取得します。
  // 他のメトリクスについては、Google Analytics Reporting APIのドキュメントを参照してください。
  var metrics = 'ga:sessions';

  // 取得するディメンションを指定します。(今回はなし)
  var dimensions = '';

  // Google Analytics Reporting API v4 を使用します。
  var query = {
    'ids': 'ga:' + VIEW_ID,
    'startDate': startDate,
    'endDate': endDate,
    'metrics': metrics,
    'dimensions': dimensions
  };

  var data = Analytics.Data.Ga.get(query);

  // 取得したデータをスプレッドシートに書き込む処理
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();

  // ヘッダー行を書き込む(必要に応じて)
  if (sheet.getLastRow() === 0) {
    sheet.appendRow(['日付', 'セッション数']);
  }

  // 取得したデータをループしてスプレッドシートに書き込む
  if (data.getRows()) {
    for (var i = 0; i < data.rows.length; i++) {
      var row = data.rows[i];
      sheet.appendRow([
        row[0], // 日付 (ディメンションがない場合は空)
        row[1]  // セッション数
      ]);
    }
  } else {
    Logger.log('データが取得できませんでした。');
  }
}

2. ビューIDを確認する

上記のコードにある YOUR_VIEW_ID の部分を、あなたのGoogle AnalyticsのビューIDに置き換える必要があります。ビューIDは、Google Analyticsの管理画面の「設定」→「ビュー」で確認できます。

3. スプレッドシートを準備する

このスクリプトは、実行されているスプレッドシートにデータを書き込みます。あらかじめGoogleドライブに新しいスプレッドシートを作成しておき、そのスプレッドシートを開いた状態でGASエディタからスクリプトを実行してください。

4. スクリプトを実行する

GASエディタの上部にある実行ボタン(▶︎)をクリックします。初回実行時には、スクリプトがGoogle Analytics APIにアクセスするための認証を求められますので、指示に従って承認してください。

5. 結果を確認する

スクリプトの実行が完了したら、開いているスプレッドシートを確認してください。指定した期間のセッション数が書き込まれているはずです。

さらに応用!

今回の例は非常に基本的なものですが、GASを使えばさらに高度なデータ取得や自動化が可能です。

  • 特定のディメンションでの集計: 例えば、「デバイスカテゴリ別」や「参照元/メディア別」などでセッション数を集計できます。
  • 複数のメトリクスを取得: セッション数だけでなく、ページビュー数、コンバージョン数なども同時に取得できます。
  • 定期実行の設定: GASのトリガー機能を使えば、毎日、毎週、毎月など、指定したタイミングでスクリプトを自動実行させることができます。
  • メール送信: 取得したデータを整形し、メールで関係者に自動送信できます。
  • 他のGoogleサービスとの連携: Google Data Studio(現Looker Studio)に連携させたり、Google Sheetsのカスタム関数として利用したりも可能です。

まとめ

Google Apps Scriptを利用することで、Google Analyticsのデータを効率的に取得し、業務の自動化を進めることができます。今回ご紹介した基本的な方法を参考に、ぜひご自身のウェブサイト分析にGASを活用してみてください。データに基づいた意思決定を加速させ、ビジネスの成長につなげましょう!

GAS自動化の導入相談

請求書PDF作成、Gmail自動送信、Slack通知、スプレッドシート連携などを業務に合わせて実装できます。

請求書自動生成ツールを見る / SNS自動投稿ツールを見る