使用 Measurement Protocol 將網站事件傳送至 GA4

1. 簡介

上次更新時間:2019 年 4 月 30 日

建構項目

  • 在本程式碼研究室中,您將瞭解如何使用 Measurement Protocol 將外部事件傳送至 GA4。
  • 本程式碼研究室假設您已有導入 Google Analytics 4 的網頁/網站。

課程內容

  • 首次撥打 MP 電話的步驟
  • 瞭解呼叫所需的參數
  • 傳送測試通話並進行驗證
  • 在 Python 中建構範例指令碼來發出呼叫

軟硬體需求

  • 網站/網頁
  • 任何要進行變更的 IDE
  • GA4 帳戶
  • 選用 - Python 開發環境 (或 Colab)

2. 收集必填欄位

在 GA4 中建立 API 密鑰

前往 GA4 並建立新的 API 密鑰,方法是前往「管理」>資料串流 >選擇直播 >Measurement Protocol >創作

8dee89e850ae90bb.png

d0be19d8112435a2.png

de5a80a1445d3a14.png

你可以提供任何暱稱,系統會在通話中顯示密鑰值,供你在通話中使用

收集 client_id

您可以使用下列任一方法收集您的 client_id。

  1. 透過 gTag 收集

以下將詳細說明上述兩種方法

透過 gTag 收集

您可以在網站上使用 擷取 client_id:

gtag('get', 'UA-XXXXXXXX-Y', 'client_id', (clientID) => {
  Do something with clientID)
}

下列連結會因基礎架構而異

3. 建立呼叫

您可以使用 GA4 中的事件建構工具建立呼叫範例。(您需要登入並啟用 Cookie)。確認切換按鈕已設為「gtag.js」

b904d2a053eb7817.png

請務必填寫下列欄位

  • api_secret - 先前已在 GA4 中建立
  • measurement_id- 如要取得這項資訊,請前往「管理」>「管理」資料串流 >選擇訊息串 。如下所示

d362992ff592c675.png

  • client_id - 您已擷取此值
  • 不一定要指定 user_id。目前可留空
  • 類別 - 變更為「自訂」,並填入您選擇的任何事件名稱 (請勿使用任何自動收集的事件)。使用「test_from_codelab」

cf580a708bb0a8a2.png

您也可以點選下方按鈕,選擇提供事件參數和/或使用者屬性

da59bb982f6f906a.png

填寫完畢後,畫面上應該會顯示類似下方的內容,且會出現「驗證事件」按鈕

31f720d550906298.png

進入該頁面後,請按一下 [驗證事件],按鈕以橘色標明。系統應會在下方顯示訊息,指出活動有效,您應該會看到 [傳送至 Google Analytics] 的按鈕。此時,如果事件出現無效,這項工具會告訴您有問題的確切欄位,方便您修正問題並重試

1d63d1e067c46294.png

您現在可以點選按鈕,該按鈕應會向 GA4 傳送測試事件

4. 在 GA4 中驗證事件

傳送事件後,您就可以前往 GA4 帳戶查看「即時」事件。您應該會看到

7b9e9a0f74b64757.png

事件可能需要約 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 Analytics 傳送更有意義的資料,並提升行銷和業務分析成效。為充分發揮這項功能的效益,我們也建議您連結至 Google Ads,將這些事件匯入為轉換。

您已學習以下內容

  • 如何收集與媒體通話相關的正確變數
  • 如何傳送及驗證測試事件
  • 如何建立用於傳送媒體呼叫的指令碼

參考文件