GA4 電子商務 (analytics.js - 標準電子商務):傳送 GA4 電子商務事件

本指南將說明如何為 analytics.js 通用 Analytics (分析) 現有的標準電子商務導入作業,改用 Google Analytics (分析) 4 電子商務事件。

如需其他遷移指南和資源,請前往開發人員遷移中心

結果

本指南的結果是,新的 Google Analytics (分析) 4 導入作業會將 GA4 電子商務事件傳送至新的 GA4 資源和現有的通用 Analytics (分析) 資源。現有的通用 Analytics (分析) 資源將接收 GA4 電子商務資料,但報表會維持不變。

遷移作業分為兩個階段:

  • 將通用 Analytics (分析) 交易遷移至 GA4 購買事件
    • 通用 Analytics (分析) 的標準電子商務支援傳送交易和項目資料。遷移至 Google Analytics (分析) 4 purchase 事件會提供對等的功能。
  • (選用) 評估其他 GA4 電子商務事件

事前準備

  1. 請確認以下描述目前的導入方式:

    • 您正在使用通用 Analytics (分析) 資源。
      • 如果您的資源有追蹤 ID,則會是通用 Analytics (分析)。
    • 您的網站使用 analytics.js 程式庫傳送電子商務事件。
  2. 請參閱電子商務導入作業的遷移選項,瞭解各選項的優缺點。確認是否要按照本指南,將 Google Analytics (分析) 4 電子商務事件用於現有的通用 Analytics (分析) 導入設定。

  3. 請參閱事件相容性參考資料,瞭解將 GA4 購買事件傳送至通用 Analytics (分析) 資源時,系統如何轉譯該事件。

取捨與注意事項

請詳閱並考量下方資訊,完整瞭解使用 Google Analytics (分析) 4 電子商務事件搭配通用 Analytics (分析) 電子商務導入的影響。

優點 缺點
  • 在 GA4 和通用 Analytics (分析) 報表中查看電子商務資料。
  • 遷移至 GA4 purchase 事件會提供完整的通用 Analytics (分析) 電子商務報表。
  • 從 analytics.js 遷移至 gtag.js 的額外工作。建議將所有自訂評估從 analytics.js 遷移至 gtag.js (例如事件、網頁瀏覽、時間等)。

導入作業

1. 將通用 Analytics (分析) 評估從 analytics.js 遷移至 gtag.js

如要傳送 GA4 電子商務事件,您必須從 analytics.js 遷移至 gtag.js,包括所有自訂評估。

一般來說,完成遷移的步驟包括:

  1. 移除 analytics.js 程式碼片段。
  2. 加入 Google 代碼 (gtag.js),並使用通用 Analytics (分析) 資源的追蹤 ID 進行設定。
  3. 將自訂評估程式碼從 analytics.js 遷移至 gtag.js。以下章節將說明如何遷移標準電子商務交易。如需遷移其他評估情境的一般說明,請參閱「評估遷移」。

設定前:analytics.js 代碼

<!-- Google Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

ga('create', 'UA-XXXXX-Y', 'auto');    // Universal Analytics property.
ga('send', 'pageview');
</script>
<!-- End Google Analytics -->

變更後:Google 代碼 (gtag.js)

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXX-Y"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'UA-XXXXX-Y');    // Universal Analytics property.
</script>

2. 更新電子商務導入設定,以便傳送 GA4 事件

更新現有的電子商務導入設定,從使用通用 Analytics (分析) 電子商務事件改用 Google Analytics (分析) 4 事件。完成這個步驟後,通用 Analytics (分析) 資源會收到 GA4 purchase 事件。請參閱「權衡和注意事項」一節,瞭解這項更新可能帶來的影響。

以下範例說明如何將 analytics.js 標準電子商務交易事件遷移至與通用 Analytics (分析) 相容的對等 GA4 電子商務 purchase 事件。

修改前:通用 Analytics (分析) 標準電子商務交易 (analytics.js)

以下範例顯示了含有 2 個項目的交易的 analytics.js 標準電子商務導入作業:

// Add the transaction.
ga('ecommerce:addTransaction', {
  id: '1234',     // Transaction ID.
  affiliation: 'Google Store',
  revenue: '29.97',
  shipping: '5.25',
  tax: '2.42'
});

// Add the items belonging to the transaction.
ga('ecommerce:addItem', {
  id: '1234',     // Transaction ID.
  name: 'Android Warhol T-Shirt',
  sku: 'P12345',  // Item ID.
  category: 'Apparel/T-Shirts',
  price: '12.99',
  quantity: '2'
});
ga('ecommerce:addItem', {
  id: '1234',     // Transaction ID.
  name: 'Flame challenge T-Shirt',
  sku: 'P67890',  // Item ID.
  category: 'Apparel/T-Shirts',
  price: '3.99',
  quantity: '1'
});
ga('ecommerce:send');

使用後:GA4 電子商務購買 (gtag.js)

將 analytics.js 交易事件遷移至 GA4 purchase 事件時,主要差異如下:

  • GA4 含有單一 purchase 事件,其中包含與交易相關的所有詳細資料和項目。analytics.js 會執行多個 ga() 電子商務指令來擷取相同資訊。
  • GA4 為整個事件提供單一 transaction_id 欄位。每個項目都必須加入 analytics.js 代碼。
  • GA4 包含多個項目類別欄位。analytics.js 使用單一類別欄位搭配 / 分隔符號來描述階層。不過,由於類別參數轉譯的特性,如果 GA4 事件包含多個項目類別欄位,那麼您可以在通用 Analytics (分析) 資源中使用這類事件。
 gtag('event', 'purchase', {
   currency: 'USD',
   transaction_id: '1234',    // Transaction ID.
   value: 29.97,
   affiliation: 'Google Store',
   shipping: 5.25,
   tax: 2.42,
   items: [
    {
      item_id: 'P12345',     // Item ID.
      item_name: 'Android Warhol T-Shirt',
      item_category: 'Apparel',
      item_category2: 'T-Shirts',
      price: 12.99,
      quantity: 2
    },
    {
      item_id: 'P67890',    // Item ID.
      item_name: 'Flame challenge T-Shirt',
      item_category: 'Apparel',
      item_category2: 'T-Shirts',
      price: 3.99,
      quantity: 1
    }
  ]
});

3. 建立及設定新的 GA4 資源

將電子商務導入設定更新為傳送 GA4 電子商務事件後,請完成下列任一選項,開始將資料傳送至新的 Google Analytics (分析) 4 資源。

方法 1:使用 GA4 設定輔助程式,並啟用已連結的網站代碼

GA4 設定輔助程式會自動建立新的 GA4 資源,並從通用 Analytics (分析) 資源複製下列設定:資源名稱網站網址時區貨幣設定。這樣也可以啟用已連結的網站代碼功能,重複使用現有的通用 Analytics (分析) gtag.js 導入設定,以載入新的 GA4 資源。

按照「Google Analytics (分析) 4 設定輔助程式」一文所述的步驟,建立及設定新的 Google Analytics (分析) 4 資源。請務必勾選「允許使用現有代碼來收集資料」選項,以使用已連結的網站代碼功能。

方法 2:更新 gtag.js 程式碼片段

  1. 建立新的 Google Analytics (分析) 4 資源。
    • 使用 Google Analytics (分析) 4 設定輔助程式新增 Google Analytics (分析) 4 資源。 不過,在設定期間出現提示時,請取消勾選「Enable data collection with your existing tag」(使用現有代碼啟用資料收集) 選項。或者,您也可以在沒有 Google Analytics (分析) 4 設定輔助程式的情況下,建立 Google Analytics (分析) 4 資源。使用助理的好處是,可以複製通用 Analytics (分析) 資源中的部分基本設定。
  2. 找出 Google Analytics (分析) 4 資源的代碼 ID
  3. 使用 config 指令搭配代碼 ID,在現有的 gtag.js 程式碼片段中加入 Google Analytics (分析) 4 資源

以下 gtag.js 程式碼片段範例已設定通用 Analytics (分析) 和 Google Analytics (分析) 4 資源。

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXX-Y"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'UA-XXXXX-Y');         // Universal Analytics property.
  gtag('config', 'TAG_ID');  // Google Analytics 4 property.
</script>

4. (選用) 評估其他電子商務事件

如要充分利用 GA4 電子商務報表,請導入其他 GA4 電子商務事件。詳情請參閱 Google Analytics (分析) 4 電子商務

如果您使用預設的 gtag.js 程式碼片段設定,系統會將 GA4 事件傳送至通用 Analytics (分析) 和 GA4 資源。如事件相容性參考資料中的定義,系統會翻譯傳送至通用 Analytics (分析) 資源的 GA4 事件。如果您希望採用其他行為,可以使用 gtag.js 的群組和轉送資料功能,控管要將哪些事件傳送至通用 Analytics (分析) 和 GA4 資源。舉例來說,您可以將 purchase 事件同時傳送至通用 Analytics (分析) 和 GA4 資源,但只將其他 GA4 電子商務事件傳送至 GA4 資源。