1. はじめに
最終更新日: 2019 年 4 月 30 日
作成するアプリの概要
- この Codelab では、Measurement Protocol を使用して外部イベントを GA4 に送信する方法を学びます。
- この Codelab は、Google アナリティクス 4 が実装されたウェブページ/サイトがすでに存在することを前提としています。
学習内容
- MP 呼び出しを初めて行う際の手順
- 呼び出しに必要なパラメータを理解する
- 呼び出しテストを送信して検証する
- 呼び出しを行う Python のサンプル スクリプトをビルドする
必要なもの
- ウェブサイト/ウェブページ
- 変更を行うための任意の IDE
- GA4 アカウント
- 省略可 - Python 開発環境(または Colab)
2. 必須項目を収集する
GA4 で API シークレットを作成する
Google アナリティクス 4 に移動し、[管理] > [データ ストリーム] > ストリームを選択 > [Measurement Protocol] > [作成] の順に移動して、新しい API シークレットを作成します。



任意のニックネームを指定すると、シークレット値が表示されます。この値は通話で使用できます。
client_id を収集する
client_id は、次のいずれかの方法で収集できます。
- gTag を使用した収集
これらについて、以下で詳しく説明します。
gTag を使用して収集する
ウェブサイトから client_id を取得するには、次のコードを使用します。
gtag('get', 'UA-XXXXXXXX-Y', 'client_id', (clientID) => {
Do something with clientID)
}
インフラストラクチャに応じたその他のリンクは次のとおりです。
3. 呼び出しの作成
GA4 のイベント ビルダーを使用して、サンプル用の呼び出しを作成できます。(ログインして Cookie を有効にする必要があります)。切り替えボタンが [gtag.js] に設定されていることを確認します。

次のフィールドを入力する必要があります。
- api_secret - GA4 で以前に作成済み
- measurement_id - これを取得するには、[管理] > [データ ストリーム] > [ストリームを選択] に移動します。次のように表示されます。

- client_id - この値はすでに取得済みです
- user_id は必須ではありません。この欄は空欄のままでかまいません
- カテゴリ - プルダウンから [カスタム] に変更し、任意のイベント名を入力します(自動収集イベントは使用しないでください)。ここでは「test_from_codelab」を使用しています。

必要に応じて、以下のボタンをクリックしてイベント パラメータやユーザー プロパティを指定することもできます。

すべて入力すると、次のような画面が表示され、[Validate Event](イベントを検証)ボタンが表示されます。

この画面が表示されたら、オレンジ色でハイライト表示されている [VALIDATE EVENT] ボタンをクリックします。イベントが有効であることを示す以下のメッセージが表示され、[SEND TO GA](GA に送信)ボタンが表示されます。この時点でイベントが無効と表示された場合は、問題のあるフィールドがツールに表示されるため、そのフィールドを修正して再試行できます。

ボタンをクリックすると、テストイベントが GA4 に送信されます。
4. GA4 でのイベントの検証
イベントを送信したら、GA4 アカウントに移動してリアルタイムを確認します。イベントが届いているはずです。

イベントがリアルタイム ビューから実際のイベント レポート タブに反映されるまでには、約 24 時間かかることがあります。そのため、通常のイベント レポートにすぐに表示されなくてもご心配はいりません。
5. Python スクリプトの作成
テストが完了したら、API 呼び出しとイベント ペイロードを調べて、この呼び出しを行うことができる同様のアーキテクチャを Python(または任意の言語)で構築できます。その後、目的の頻度でスケジュールを設定して運用できます。このパートでは、Python をサポートする任意の IDE を使用するか、デバイスにインストールする必要のない Google Colab ノートブックを使用します。
GA4 イベント ビルダーに戻ると、エンドポイントは次のようになっています。
POST /mp/collect?measurement_id=XXXX&api_secret=XXXX
HTTP/1.1
Host: www.google-analytics.com
イベント ペイロードは次のとおりです。
{
"client_id": XXXX,
"non_personalized_ads": false,
"events": [
{
"name": "test_from_codelab",
"params": {
"test_param": "test_123"
}
}
]
}
次のようなものを使用して、これを Python に変換できます。
import requests
import json
url = "https://www.google-analytics.com/mp/collect?measurement_id=XXXX&api_secret=XXXX"
payload = {
"client_id": XXXX,
"non_personalized_ads": false,
"events": [
{
"name": "test_from_codelab",
"params": {
"test_param": "test_123"
}
}
]
}
r = requests.post(url,data=json.dumps(payload),verify=True)
print(r.status_code)
適切な値を使用してこれを実行すると、同様に GA4 でイベントがリアルタイムで反映されるのを確認できます。
6. 完了
お疲れさまでした。これで、GA4 で Measurement Protocol を使用できるようになりました。より有益なデータを Google アナリティクスに送信し、マーケティングとビジネスの分析を改善するための強力なソリューション アーキテクチャを構築できるようになりました。この機能を最大限に活用するため、Google 広告に接続して、これらのイベントをコンバージョンとしてインポートすることをおすすめします。
学習した内容
- MP 通話を行うための適切な変数を収集する方法
- テストイベントを送信して検証する方法
- MP 通話を送信するスクリプトを作成する方法