轉換追蹤

導入作業

摘要

導入轉換追蹤的程序分為三個部分:

  • 從到達網頁 / 應用程式進入點收集 rwg_token
  • 為適當的歸屬期保留 rwg_token
  • 在結帳時傳送轉換事件

導入轉換追蹤時,不必使用 Google Analytics (分析) 或任何其他第三方 JavaScript。

開始導入轉換追蹤前,請先決定要追蹤的是裝置層級或使用者層級的轉換:

  • 裝置層級包括使用瀏覽器 Cookie、本機儲存空間、應用程式本機儲存空間,或任何其他可在 30 天歸屬期內保留權杖的方法。由於權杖會儲存在使用者的裝置本機上,因此,如果使用者變更所使用的裝置、清除本機儲存空間或 Cookie,或是使用私密瀏覽或無痕模式,轉換事件可能就無法正確歸因。使用裝置層級轉換追蹤時,您必須在所有支援的介面 (包括行動裝置) 中重新導入這項功能。
  • 使用者層級包括透過伺服器端分析系統或其他伺服器端系統,將該資料庫保存在應用程式資料庫中。由於權杖會儲存在伺服器端,因此,如果使用者變更目前使用的裝置、清除本機儲存空間或 Cookie,或是使用私密瀏覽或無痕模式,系統就會在使用者重新登入後,將轉換事件歸因於該事件。使用使用者層級轉換追蹤時,視系統的架構而定,您可以在伺服器端導入一次這項功能,並在所有支援的途徑中重複使用。

收集 rwg_token

每次 Google 顯示您透過動態饋給提供的 action_link 時,網址就會經過修改,包含專屬的查詢參數:rwg_token。rwg_token 值是經過編碼的字串,包含使用者點選的連結相關中繼資料。您應該儲存這個權杖,並做為轉換事件一併傳回。

您必須在每個到達網頁 / 應用程式進入點,剖析 rwg_token 查詢參數設定的值,並予以儲存。此步驟會說明儲存這個參數的需求條件:保留 rwg_token。

下方舉例說明如何透過瀏覽器剖析此權杖,以追蹤裝置層級追蹤。或者,您也可以在回應要求時從伺服器端收集這個權杖:

<script>
  var query = location.search.substring(1);
  var params = query.split('&');
  var rwgToken = undefined;
  for (var i = 0; i < params.length; ++i) {
    var pair = params[i].split('=');
    if (pair[0] == 'rwg_token') {
      rwgToken = decodeURIComponent(pair[1]);
      break;
    }
  }
</script>

保留 rwg_token

您必須保留 rwg_token 網址參數,參數會附加至您提供的所有動作連結,為期 30 天。應儲存並傳回 rwg_token 的值,不要進行任何編輯。

除了 rwg_token 外,您還需要儲存與動作連結相關聯的 merchant_id

如果已有上次造訪後保留的現有權杖,應替換先前的 rwg_token 和 merchant_id,且儲存空間的 30 天期限應重設。

保留上述組合時,您可以在裝置層級或使用者層級儲存值:

  • 裝置層級包括使用瀏覽器 Cookie、本機儲存空間、應用程式本機儲存空間,或任何其他可在 30 天歸屬期內保留權杖的方法。
  • 使用者層級包括透過伺服器端分析系統或其他伺服器端系統,將該資料庫保存在應用程式資料庫中。

以下舉例說明裝置層級轉換追蹤,並使用第一方 Cookie 將這些值儲存在網路瀏覽器中。這個範例假設您已將符記值剖析為變數,如上例所示。如要使用這個範例,必須將「rootdomain」更新至您的網域。

<script>
  if (typeof rwg_token !== 'undefined') {
    document.cookie =
    "_rwg_token=" + rwg_token + ";_merchant_id="+merchantid +";max-age=2592000;domain=rootdomain.com;path=/";
  }
</script>

使用使用者層級轉換追蹤時,rwg_token + business_id 應儲存在伺服器上,並與使用者建立關聯。

傳送轉換資料

使用者完成可歸因於 Google 地點動作連結的交易時,您必須傳送 HTTP POST 要求給轉換端點。有兩個端點:一個用於正式環境,另一個用於沙箱環境。

  • 生產:https://www.google.com/maps/conversion/collect
  • 沙箱:https://www.google.com/maps/conversion/debug/collect

貼文內文必須是 JSON 編碼的物件,格式如下:

{
  "conversion_partner_id": <partnerId>,
  "rwg_token": <rwg_token_val>
  "merchant_changed": 1|2
}

系統會使用 merchant_changed 值來判斷商家是否已從初始重新導向商家變更。有兩個值可以傳遞

商家變更值 需求
1 當使用者離開原始商家的網站,並透過平台向其他商家完成購物時,請使用這個值
2 客戶在透過原始實體 (商家) 完成交易時,應使用這個值。

在沙箱和正式環境中,您都必須在傳送轉換事件時,提供有效的 rwg_token。為進行測試,請在啟動前在這兩種環境中使用下列測試權杖:

ADQ7psRE9YyDSVR6YpfD-fYdxoFYVKS1xeTvXdSxqF8a3bnk0W62eMEnUjoNPwjhNHG0elwBnM1awTjr9vXET8yOowCeuODjwA==

以下提供裝置層級轉換追蹤 (在使用者裝置上的 Cookie 使用使用者裝置 Cookie) 的完整範例,以如何提出此發布要求:

const partnerId = XXXXXXXXXX;

const endpoint = `https://www.google.com/maps/conversion/collect`;

const rwgTokenCookie = document.cookie
  .split('; ')
  .find(row => row.startsWith('_rwg_token='));

if (typeof rwgTokenCookie !== 'undefined') {
  const rwgTokenVal = rwgTokenCookie.split('=')[1];
  fetch(endpoint, {
    method: "POST",
    body: JSON.stringify({
      conversion_partner_id: partnerId,
      rwg_token: rwgTokenVal,
      Merchant_changed: merchantChanged
    })
  });
}

使用使用者層級的轉換追蹤時,建議您從伺服器端儲存機制擷取與使用者相關聯的權杖 (不論其所在介面為何),然後使用相同的實際工作環境或沙箱端點傳送該權杖。

轉換歸因規定

Google 的轉換歸因規定,針對任何商店中與地點連結的互動,必須為 30 天的歸屬期。

這個歸因期間表示 Google 預期會在下列任一情況下傳送轉換事件:

  • 使用者追蹤地點動作連結,並在同一個工作階段中向同一個商家下單(商家變更值 = 2)
  • 使用者在追蹤地點動作連結後,在 30 天內從其他管道回訪,為同一個商家下單。( 商家 變化值 = 2)
  • 使用者會追蹤地點動作連結,然後在同一工作階段內或於 30 天內的不同工作階段內向其他商店下單。( 商家變更值 = 1)

此外,Google 預期使用者從地點動作連結前往的所有途徑,都會傳送轉換事件。包含:

  • 電腦版或行動網頁應用程式
  • 行動應用程式 (透過應用程式深層連結或網域中已註冊的應用程式意圖)

如果權杖儲存在使用者層級 (請參閱保留權杖),則您應提供跨裝置歸因。也就是說,使用者若先在電腦上點選動作連結,然後在行動裝置上完成交易 (使用同一個使用者帳戶),應該就會觸發轉換事件。

如果權杖只儲存在裝置層級 (例如瀏覽器 Cookie),就預期不會提供跨裝置歸因。在此情況下,如果使用者點選裝置上的動作連結,且每部裝置都會遵循歸因規則,則每部裝置都會有個別的保留權杖。