cPixel 如何讓每筆購買只計算一次
cPixel 如何避免一筆購買被計算兩次?
cPixel 會用一個由你的商店與結帳資訊建立的事件 ID,將每筆 Shopify 購買傳送給每個已連接的帳戶一次,並在 Meta 的伺服器傳送運作時關閉瀏覽器端的 Purchase。其他事件則來自瀏覽器或伺服器,或是兩者共用同一個 ID。剩下的重複計算通常來自另一個 App 或標記。
這個 ID 是你商店 myshopify.com 網址與結帳權杖的雜湊值,而不是訂單 ID,因此顧客的瀏覽器與 cPixel 的伺服器會各自獨立得出相同的值。你連接的每個平台帳戶都會拿到這個 ID,而 cPixel 不會讓同一個像素被連接兩次。大部分其他事件則攜帶 Shopify 自己的事件 ID。當你開啟後,結帳以外成立的訂單會使用根據訂單建立的 ID,而只送往 GA4 的退款則有自己的 ID。
各平台依哪個 ID 去重複?
每個平台都有自己的比對依據:Meta、TikTok、OpenAI Ads、Pinterest 與 Snapchat 使用事件 ID,GA4 與 Google Ads 則使用交易 ID。cPixel 只會將每個事件傳送到一個平台一次,或是在該平台比對的鍵值下傳送兩次。
| 平台 | 依什麼去重複 | 視窗期 | cPixel 傳送的內容 |
|---|---|---|---|
| Meta | 事件名稱與事件 ID,須為同一個像素;通常會保留最先收到的一筆 | 48 小時 | 瀏覽與結帳事件由雙方共用同一個 ID 傳送;Purchase 只由伺服器傳送 |
| TikTok | 事件與事件 ID;保留最先收到的一筆 | 48 小時 | 除了 Pageview 由雙方共用同一個 ID 傳送外,其餘全部來自伺服器 |
| GA4 | 網頁串流上的交易 ID | 未說明 | 購買事件由伺服器傳送,以訂單 ID 作為交易 ID;其餘來自瀏覽器 |
| OpenAI Ads | 像素 ID、事件名稱與 id;最先收到的一筆勝出 |
未說明 | 結帳與購買事件來自伺服器;其餘來自瀏覽器標記 |
| 事件名稱與事件 ID;保留最先擷取到的一筆 | 48 小時 | 結帳與購買事件來自伺服器;其餘來自瀏覽器標記 | |
| Snapchat | 它自己的去重複 ID;購買事件也依訂單 ID | 48 小時;依訂單 ID 為 30 天 | 結帳、付款資訊與購買事件來自伺服器;其餘來自瀏覽器標記 |
| Google Ads | 單一轉換動作內的交易 ID | 未說明 | 購買事件由感謝頁面上的瀏覽器標記傳送,附上訂單 ID |
資料來源,查核於 2026 年 9 月 24 日:Meta、TikTok、GA4、OpenAI、Pinterest、Snap、Google Ads。
在即時中,一次完成的伺服器傳送旁會標示「以事件 ID 去重複」,說明平台比對副本所依據的鍵值,不代表它真的合併了一組重複事件;「因瀏覽器未能傳送而改為傳送」則標示原本要由瀏覽器傳送、改由伺服器代送的事件。
為什麼 Meta 只從伺服器取得購買事件?
因為 Meta 是唯一一個 cPixel 有可能同時從兩端傳送購買事件的平台,而同一份副本不能被計算兩次。伺服器端的副本是根據 Shopify 訂單建立的,因此不依賴顧客的瀏覽器,還攜帶更多 Meta 用來比對顧客身分的細節。
Meta 的瀏覽器端 Purchase 只在 cPixel 對該像素的伺服器傳送未運作時觸發:帳戶沒有存取權杖、Meta 拒絕了權杖、從我們的伺服器傳送事件已關閉,或 Free 方案已暫停伺服器傳送。不論哪種情況,Meta 每筆訂單都只會收到一個 Purchase。
在即時中,Meta 會出現在該筆購買的伺服器列,而不是瀏覽器列。在 Meta Events Manager 中,Purchase 透過 Conversions API 送達,其他事件則因為雙方都有傳送而顯示為「Multiple」。
哪些情況仍會被重複計算?
另一個工具傳送到同一個像素,以及在平台的視窗期關閉後重新傳送。cPixel 無法為另一個 App 的事件去重複:每個 App 都會建立自己的事件 ID,因此平台會看到兩筆購買。
常見的第二個傳送來源是某個平台自己的 Shopify App(例如 Facebook & Instagram 或 Google & YouTube)、另一個追蹤 App 或自訂像素,以及貼在你佈景主題中的像素程式碼。重複計算通常會顯示成「網頁瀏覽數變成兩倍,但訂單營收看起來仍然正確」,這正是 cPixel 自己提示的說法,因此請一併檢查頁面瀏覽數與購買數。解決方法就是每個像素一個傳送來源:搭配 Facebook 與 Instagram App 使用 cPixel。
我要如何找出第二個傳送來源?
先從 cPixel 的目的地頁面開始,再到平台上確認。cPixel 每天都會讀取你商店前台中寫入佈景主題的標記,以及在 Shopify 註冊的像素,並在另一個 App 也設定了 cPixel 傳送的同一個平台底下列出任何重疊的項目。
- 在 cPixel 中,開啟目的地,閱讀每個發現項目底下的該怎麼處理。
- 在 Shopify 中,前往 Settings → Customer events,記下每一個可能傳送到同一個平台的 App 像素與自訂像素。
- 在 cPixel 中,開啟即時,點擊開始工作階段,並下一筆真實訂單,看看 cPixel 把它傳送到了哪些帳戶。
- 在平台上,確認這筆訂單只產生了一筆購買。在 Meta Events Manager 中,如果 Purchase 同時透過瀏覽器與 Conversions API 送達,就代表還有第二個傳送來源,因為 cPixel 對該像素的伺服器傳送運作時,其瀏覽器端 Purchase 會關閉。
這項掃描回報的是設定狀態,而不是實際觸發的內容,也無法讀取有密碼保護的商店,因此沒有出現通知不代表沒有第二個傳送來源。關於佈景主題程式碼、代碼管理工具與 Meta 的事件設定工具,請參閱為什麼 Meta 會將 Shopify 購買計算兩次。
重新傳送購買事件時會發生什麼?
它會保留原本的事件 ID,因此仍記得第一筆副本的平台只會保留一筆。傳送失敗後的重試、Free 方案暫停期間所保留訂單的重播、每夜對 Webhook 未送達訂單的修復,以及即時畫面中的重新傳送事件,全都會沿用這個 ID。
平台的視窗期是上限。Meta 在 48 小時內去重複,因此 cPixel 重播保留訂單時,一旦訂單超過這個時限就會跳過 Meta,而每夜修復也只涵蓋昨天的訂單,落在 Meta 與 TikTok 的視窗期之內。
重新傳送事件在付費方案上,會以原本的 ID 將一筆購買重新傳送給每個已連接的帳戶。請只在購買事件沒有送達時使用它,而不是用來灌高數字:超過 48 小時後,向 Meta 重新傳送可能會讓這筆購買被計算兩次。
