實作
摘要
轉換追蹤導入作業包含三個部分:
-
從到達網頁 / 應用程式進入點收集
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
的值,而不進行編輯。如果現有憑證會保留在先前的造訪中,則應替換舊權杖,並重設 30 天的儲存時間。
保留權杖時,您可以將權杖儲存在裝置層級或使用者層級:
- 「裝置層級」包括使用瀏覽器 Cookie、本機儲存空間、應用程式本機儲存空間,或是可在 30 天歸因期內保留權杖的任何其他方法。
- 使用者層級包括透過伺服器端分析系統或其他伺服器端系統,將其保留在應用程式資料庫中。
以下是裝置層級轉換追蹤的範例,透過第一方 Cookie 在網路瀏覽器中儲存這個權杖。此範例假設您將權杖值剖析為變數 (如上例所示)。在這個範例中,您必須將「根網域」更新為您的網域。
<script> if (typeof rwg_token !== 'undefined') { document.cookie = "_rwg_token=" + rwg_token + ";max-age=2592000;domain=rootdomain.com;path=/"; } </script>
採用使用者層級轉換追蹤時,rwg_token
應儲存在伺服器中並與使用者建立關聯。
傳送轉換資料
當使用者完成可歸因於 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> }
在沙箱和正式版環境中,您傳送轉換事件時都必須提供有效的 rwg_token
。
如要在沙箱環境中進行測試,您可以使用下列測試權杖。
ADQ7psRE9YyDSVR6YpfD-fYdxoFYVKS1xeTvXdSxqF8a3bnk0W62eMEnUjoNPwjhNHG0elwBnM1awTjr9vXET8yOowCeuODjwA==
以下以裝置層級轉換追蹤的完整範例 (使用使用者裝置中的 Cookie) 提供 JavaScript 要求,如下所示:
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 }) }); }
採用使用者層級轉換追蹤時,您必須從伺服器端儲存機制擷取與使用者相關聯的權杖 (無論其所在位置為何),並使用相同的實際工作環境或沙箱端點傳送權杖。
轉換歸因規定
無論使用者在任何商店中透過地點連結進行互動,Google 都必須在轉換歸因時採用標準 30 天的歸屬期。
這個歸因期代表預期會在下列任一情況中傳送轉換事件:
- 使用者點選地點動作連結,並在同一個工作階段中下單
- 使用者在點選地點動作連結後,在 30 天內從其他頻道回訪,以便下單。
- 使用者點選地點動作連結,並在不同的工作階段內下單,或在 30 天內使用不同的工作階段。
此外,我們也預期使用者會透過地點動作連結前往所有介面傳送轉換事件。包括:
- 電腦版或行動版網站應用程式
- 行動應用程式 (透過應用程式深層連結或您網域註冊的應用程式意圖)
如果權杖儲存在使用者層級 (請參閱「保留權杖」),建議您提供跨裝置歸因資訊。也就是說,如果使用電腦追蹤動作連結,然後在行動裝置上完成交易 (使用同一個使用者帳戶),就會觸發轉換事件。
如果權杖只儲存在裝置層級 (例如在瀏覽器 Cookie 中),就不應提供跨裝置歸因。在這種情況下,如果使用者在同一部裝置上追蹤動作連結,則每部裝置都會有不同的權杖,而每部裝置都會分別遵守歸因規則。