Google アナリティクス スプレッドシート アドオン

Philip Walton、Google アナリティクス デベロッパー プログラム エンジニア - 2014 年 3 月

Google アナリティクス スプレッドシート アドオンを使用すると、Google アナリティクス ユーザーは Google スプレッドシート データにアクセスしやすくなり、視覚化、共有、操作も簡単に行えるようになります。

はじめに

Google アナリティクス スプレッドシート アドオンでは、Google アナリティクス API の機能と、Google スプレッドシートのデータ操作の機能を併せて利用することができます。このツールを使用すると、次のことを行えます。

  • 複数のビューのデータをクエリしてレポートします。
  • カスタム計算の計算と表示。
  • ビジュアリゼーションを作成し、そのビジュアリゼーションをサードパーティ ウェブサイトに埋め込む。
  • レポートが自動で作成、更新されるようにスケジュールを設定できます。
  • Google スプレッドシートの共有機能とプライバシー機能を使用すると、データやビジュアリゼーションを表示できるユーザーを制御できます。
Google アナリティクス スプレッドシート アドオンのスクリーンショット

動画チュートリアル

次の 2 つの動画では、アドオンをダウンロードしてインストールする方法と、自動的に更新されサードパーティのウェブサイトに埋め込むことができるダッシュボードを構築する方法について説明しています。

Google アナリティクスのスプレッドシート アドオンのご紹介

Google アナリティクスのスプレッドシート アドオンを使用してダッシュボードを構築する

アドオンのインストール

Google アナリティクス スプレッドシート アドオンを使用するには、まずこのアドオンをスプレッドシートに追加する必要があります。手順は次のとおりです。

  1. 新しい Google スプレッドシートを作成します(または既存のスプレッドシートを開きます)。
  2. メニューバーから [アドオン] > [アドオンを取得…] を選択します。
  3. アドオン ギャラリーから Google アナリティクス アドオンを探して選択します。
  4. アドオンの説明ページの右上の [+] をクリックして、スプレッドシートにこのアドオンを追加します。
  5. ダイアログが表示され、このアドオンに Google アナリティクス データへのアクセスを許可するよう求められます。[承認する] をクリックします。
  6. これでアドオンがインストールされました。[アドオン] メニューに、[Google Analytics](Google アナリティクス)サブメニューが表示されます。

レポートの作成

レポートは手動で作成することも、アドオンのレポート作成ツールを利用して作成することもできます。 このツールを使用するには、メニューバーから [アドオン] > [Google アナリティクス] > [新しいレポートを作成] を選択します。 右側にサイドバーが表示され、Google アナリティクスのアカウント情報を簡単に確認したり、クエリ対象のディメンションと指標を選択したりできます。操作が完了したら、[Create Report](レポートを作成)ボタンをクリックします。「Report Configuration(レポート設定)」という名前のシート(既存シートがなければ作成されます)にレポート情報が表示されます。

追加のレポートを作成するには、上記の手順を繰り返しm。作成した各レポートでは、前のレポートの右側にデータを含む新しい列が追加されます。

レポート作成ツールが「Report Configuration」シートに入力した値を見ると、多くのセルが空白になっていますが、これは意図的なものです。このツールの目的は、作業を始めやすいように、すぐには知ることのできない情報を提供することです。残りのフィールドは、ご自身で入力してください。各フィールドの入力値についてご不明な点があれば、このドキュメントの最後にあるリファレンス セクションをご覧ください。

レポートの実行

作成したすべてのレポートを実行するには、メニューバーから [アドオン] > [Google Analytics](Google アナリティクス)> [Run Reports](レポートを実行)を選択します。

レポートを除外する

デフォルトでは、このアドオンは名前が付いているすべてのレポートを実行します。このため、レポートを削除することなく一時的に実行から除外したい場合には、名前の値が含まれるセルのテキストを削除してください。

出力シートを選択する

レポートを実行すると、Google アナリティクス API にリクエストが送信され、選択したシートに結果が出力されます。出力先のシートには、現在アクティブなスプレッドシート内のシートでも、別のスプレッドシート(そのスプレッドシートへの編集権限を持っている場合)でも利用可能です。別のスプレッドシートに結果を出力するには、そのスプレッドシートの URL をコピーして、[Spreadsheet URL](スプレッドシート URL)パラメータの右のセルに貼り付けてください。

レポートを自動的に実行するためのスケジュール設定

レポートを自動的に実行するには、メニューバーから [アドオン] > [Google Analytics](Google アナリティクス)> [Schedule Reports](レポートのスケジュール設定)を選択します。レポートのスケジュールを設定するダイアログが開き、スケジュール機能のオン / オフのや、レポートを実行する頻度を設定します。

スケジュール機能を有効にするには、[Enable reports to run automatically.](レポートの実行を有効にする)チェックボックスをオンにします。スケジュール機能を有効にすると、プルダウン メニューから時間や頻度を選択できるようになります。レポートは、毎時、毎日、毎週、または毎月実行できます。

スケジュール機能を無効にするには、[Enable reports to run automatically.](レポートの自動実行を有効にする)チェックボックスをオフにします。

一般的なユースケース

複数のビューのデータをクエリする

Google アナリティクスのウェブ インターフェースでは、一度に 1 つのビューからのみレポートと視覚化データを確認できます。このアドオンを使用すると、任意のビューに対してレポートを作成し、生成されたデータをさまざまな方法で使用できます。たとえば、iOS トラフィックと Android トラフィックをそれぞれ追跡するビューがある場合、このアドオンを使用すると、両方のビューでレポートを作成し、同じスプレッドシート内で結果を並べて簡単に比較できます。

Google アナリティクス データを利用してカスタム計算を作成する

Google アナリティクス API では、あらゆるタイプのデータを収集し、さまざまなレポートの形式を提供していますが、時にはより具体的な計算が必要になる場合もあります。Google スプレッドシートにデータが格納されている場合、スプレッドシートに組み込まれているデータ操作機能を利用することができます。

組み込みのデータ視覚化機能を使用してマイレポートを作成する

Google スプレッドシートにデータが格納されていれば、Google が提供する視覚化ツールをすべて利用できます。特別な設定は必要ありません。さらに、Google スプレッドシートのチャートやグラフを外部サイトに埋め込むことができます。つまり、Google アナリティクス データを可視化した独自のダッシュボードを簡単に作成し、任意の場所にホストでき、レポートを実行するたびに自動的に更新されます。

どのユーザーに Google アナリティクス データの閲覧を許可するか管理する

Google アナリティクスのウェブサイトでは、一目で詳細なデータを把握することができて便利です。しかし、Google アナリティクス アカウントへのアクセス権を付与せずに、関係者にデータだけを表示したい場合もあるでしょう。

Google アナリティクス スプレッドシート アドオンを使えば、この問題を解消することができます。Google スプレッドシートには組み込まれた独自の許可システムを持っているため、新しいスプレッドシートを作成し、任意のユーザーにアクセス権を与え、そのスプレッドシートにレポートのデータを出力すれば完了です。

データやグラフを自動的に更新する

レポートを作成したり、サードパーティのウェブサイトにビジュアリゼーションを埋め込んだりした後、自動的に実行されるようにレポートをスケジュール設定することで、データが常に最新の状態に保たれます。

よくある質問

スケジュール設定したレポートが次にいつ実行されるか、どうすればわかりますか?

スケジュール設定したレポートは、まず、指定した期間内からランダムに選択された日時に実行されます。それ以降の実行は、選択した間隔で相殺され、同時に想定どおりに実行されます。 たとえば、毎日午前 4 時から午前 5 時までの間にレポートを毎日実行するようスケジュールし、最初の実行が午前 4 時 12 分だった場合、その後の実行も午前 4 時 12 分に行われます。

スケジュール設定したレポートが指定した時間帯に実行されませんでした。何か問題があるのでしょうか?

レポートのスケジュール設定をするときには、スケジュールを設定してからスケジュール通りにレポートが実行されるまで、時間が十分あることを確認してください。設定された予定が最初に設定された時間に近すぎる場合は、次回の報告まで延期される可能性があります。レポート実行まで、少なくとも 1 時間は空けることをおすすめします。

レポートごとに別のスケジュールを設定することはできますか?

スケジュールは、すべてのレポートに適用されるか、どのレポートにも適用されません。 さまざまなレポートを異なる間隔でスケジュールする必要がある場合は、複数のスプレッドシートを使用できます。

レポートデータの形式が間違っているのはなぜですか?

Google アナリティクス Reporting API は、すべての値を米国形式で返します。 スプレッドシートが別の言語 / 地域に設定されている場合、Google スプレッドシートは変換を試みますが、予期しない結果が生じることがあります。

この問題を回避するには、レポートのスプレッドシートのロケールが「米国」に設定されていることを確認します(スプレッドシートの言語 / 地域を変更する手順については、ドキュメント エディタのヘルプをご覧ください)。次に、希望する言語 / 地域のフォーマットにデータを変換するために、希望する言語 / 地域を設定して 2 つ目のスプレッドシートを作成し、 IMPORTRANGE 関数を使用してその新しいスプレッドシートにレポートデータをインポートします。Google スプレッドシートでは、あるスプレッドシートから別のスプレッドシートにインポートする際に、言語 / 地域間で書式が正しく変換されます。

参考情報

アドオンについて質問する、またはバグを報告するには、google-analytics-spreadsheet-add-on Google グループにメッセージを送信します。質問がすでに回答されている可能性があるため、投稿する前にグループを検索してください。

構成パラメータのリファレンス

以下のセクションでは、必須パラメータ、オプション パラメータ、非表示パラメータの概要を説明します。

必須パラメータ

名前 説明
レポート名 レポートの名前。また、レポートデータが書き込まれるシートの名前にもなります。
ビュー ID Google アナリティクス ビューの ID。この値は、レポート作成ツールを使用して取得するか、Google アナリティクス アカウントの管理者で入手できます。
開始日

アナリティクス データの取得開始日。リクエストには、開始日を YYYY-MM-DD 形式で、または相対的な日付(todayyesterdayNdaysAgo(N は正の整数)。

スプレッドシートの日付関数を使用して、この値をプログラムで指定することもできます。たとえば、次の式は前月の最終日を返します。

=EOMONTH(TODAY(), -1)
終了日

アナリティクス データの取得終了日。リクエストでは、終了日を YYYY-MM-DD 形式で、または相対日付(例:todayyesterdayNdaysAgo(N は正の整数)。

スプレッドシートの日付関数を使用して、この値をプログラムで指定することもできます。たとえば、次の式は前月の最終日を返します。

=EOMONTH(TODAY(), -1)
指標

クエリする指標のリスト。指標は、次の 2 つの形式のいずれかで指定できます。

以下は、すべて Metrics パラメータの有効な値です。

ga:sessions,ga:bounces
ga:sessions
ga:bounces
[{
  "expression": "ga:sessions/ga:users",
  "alias": "Sessions per User",
  "formattingType": "FLOAT"
}, {
  "expression": "ga:totalEvents/ga:pageviews",
  "alias": "Events per Pageview",
  "formattingType": "FLOAT"
}]

ほとんどのユースケースでは、指標 ID のリストを使用すると Metrics パラメータを簡単に指定できます。ただし、上記の 3 番目の例の指標式など、Analytics Reporting API の高度な機能を活用する場合は、値を JSON として指定する必要があります。

ディメンションと指標、およびそれらの有効な組み合わせの全一覧は、ディメンションと指標のリファレンスで確認できます。

省略可能なパラメータ

名前 説明
サイズ

クエリを実行するディメンションのリスト。ディメンションは、次の 2 つの形式のいずれかで指定できます。

以下は、すべて Metrics パラメータの有効な値です。

ga:source,ga:deviceCategory
ga:source
ga:deviceCategory
[{
  "name": "ga:source"
}, {
  "name": "ga:deviceCategory"
}]

ほとんどのユースケースでは、ディメンション ID のリストを使用すると Dimensions パラメータを簡単に指定できます。

ディメンションと指標、およびそれらの有効な組み合わせの全一覧は、ディメンションと指標のリファレンスで確認できます。

順番

列(指標 ID またはディメンション ID)と方向(昇順または降順)による結果の並べ替え順序。順序は、次の 2 つの形式のいずれかで指定できます。

Order パラメータで有効な値は次のとおりです。

-ga:sessions,ga:eventLabel
-ga:sessions
ga:eventLabel
[{
  "fieldName": "ga:sessions",
  "sortOrder": "DESCENDING"
}, {
  "fieldName": "ga:eventLabel",
  "sortOrder": "ASCENDING",
  "orderType": "DIMENSION_AS_INTEGER"
}]

ほとんどのユースケースでは、Order パラメータを指定する最も簡単な方法は従来の形式です。ただし、orderType パラメータを使用する場合は、値を JSON として指定する必要があります。

フィルタ

返される結果のセットを制限できる条件です。フィルタは、次の 2 つの形式のいずれかで指定できます。

たとえば、下記のいずれかが Filters パラメータの有効な値です。

ga:sessions>10;ga:country==United States
{
  "metricFilterClauses": [{
    "filters": [
      {
        "metricName": "ga:totalEvents",
        "operator": "GREATER_THAN",
        "comparisonValue": "100"
      }
    ]
  }],
  "dimensionFilterClauses": [{
    "operator": "AND",
    "filters": [
      {
        "dimensionName": "ga:eventCategory",
        "operator": "EXACT",
        "expressions": ["Outbound Link"]
      }
    ],
    "filters": [
      {
        "dimensionName": "ga:eventAction",
        "operator": "EXACT",
        "expressions": ["click"]
      }
    ]
  }]
}

ほとんどのユースケースでは、従来の形式が Filters パラメータを指定する最も簡単な方法です。ただし、高度なフィルタリング(ディメンションの比較演算子を使用するなど)が必要な場合は、値を JSON として指定する必要があります。

セグメント

条件を指定して、クエリを適用するセッションやユーザーの条件を指定できます。セグメントは次の 2 つの形式のいずれかで指定できます。

たとえば、セグメント パラメータでは、次のいずれかが有効な値となります。

gaid::-1,sessions::condition::ga:city==New York
gaid::-1,
sessions::condition::ga:city==New York
[{
  "dynamicSegment": {
    "name": "New York Sessions",
    "sessionSegment": {
      "segmentFilters": [{
        "simpleSegment": {
          "orFiltersForSegment": [{
            "segmentFilterClauses":[{
              "dimensionFilter": {
                "dimensionName": "ga:city",
                "expressions": ["New York"]
              }
            }]
          }]
        }
      }]
    }
  }
}, {
  "dynamicSegment": {
    "name": "Non-referral Sessions",
    "sessionSegment": {
      "segmentFilters": [{
        "simpleSegment": {
          "orFiltersForSegment": [{
            "segmentFilterClauses": [{
              "dimensionFilter": {
                "dimensionName": "ga:medium",
                "operator": "EXACT",
                "expressions": [ "referral" ]
              }
            }]
          }]
        },
        "not": "True"
      }]
    }
  }
}]

ほとんどのユースケースでは、セグメント ID を指定するか、以前の定義形式を使用するのが最も簡単な方法です。ただし、高度なセグメント化(ディメンションの比較演算子を使用するなど)が必要な場合は、値を JSON として指定する必要があります。

上限

1 つのレポートで返される結果の最大数。このパラメータを空白のままにすると、すべての結果が返されます。

スプレッドシートの URL 結果を出力する外部スプレッドシートの URL。デフォルトでは、結果は現在のスプレッドシートのシートに出力されます。この機能を使用するには、スプレッドシートの編集権限が必要です。
レポートをスキップ

TRUE の場合、対応する列のレポートは実行されません。このオプションは、新しいレポートでテストを行い、完了するまですべてのレポートを実行したくない場合に便利です。また、データが変更されない既存のレポートの実行を停止したい場合にも便利です。

このフィールドは、数式を使用してプログラムで設定できます。たとえば、次の式は、レポートの終了日(セル「B5」)が過去の日付である場合に、レポートをスキップします。

=IF(B5 < TODAY(), TRUE, FALSE)

隠しパラメータ

名前 概要
レポートタイプ

デフォルト(または空白)のレポートでは、アナリティクス Reporting API v4 に対してクエリが実行されます。Multi-ChannelFunnel Reporting API にクエリを実行するには、値を「mcf」に設定します。

なお、MCF API を使用する場合は、MCF のディメンションと指標も使用する必要があります。なお、他の一部の機能(セグメントなど)は MCF レポートではご利用いただけません。

サンプリング レベル 目的のレポートのサンプルサイズ。指定できる値は、「DEFAULT」(空欄の場合と同じ)、「SMALL」、「LARGE」です。
リソースの割り当てを使用する リソースベースの割り当てシステムは、新しい割り当てシステムです。特定のアナリティクス 360 アカウントで、アナリティクス Reporting API の使用中にサンプリングしきい値を引き上げることができます。この機能にアクセスできる場合は、このパラメータを TRUE に設定することで有効にできます。
空の行を除外する

このパラメータを使用すると、行の指標の値がすべてゼロの場合に、その行をレポートから除外できます。デフォルトの動作(または空白のままにした場合)では、すべての行が表示されます(推奨)。

このパラメータは、Analytics Reporting API v4includeEmptyRows パラメータに対応しますが、本来の動作を理解しやすくするため、「include」から「exclude」に名前が変更されました。