查網站電商媒體電商數據榜單中心數據速報 工具箱小教室電商健檢比較清單對手對戰API關於
數據與 KPI

GA4 版位追蹤實作:用 view_promotion、select_promotion 算出哪個 banner 最會賣

GA4 版位追蹤實作:用 view_promotion、select_promotion 算出哪個 banner 最會賣|ECPRO 電商博士
字級
ChatGPT 摘要 Claude 摘要 Perplexity 摘要
林克威導讀

我用版位追蹤把首頁 banner 的成效從「感覺」變成「數字」。

本文重點
  • 先搞懂四個關鍵參數:版位追蹤的座標系
  • 對應到實務:像 QuickEntry 腰帶那種版位怎麼區分
  • 第一顆事件:view_promotion(版位曝光)
  • 第二顆事件:select_promotion(版位點擊)
  • 命名規範:版位追蹤成敗的隱形關鍵
  • 怎麼看報表:從曝光點擊到收益排行

先問你一個殘忍的問題:你首頁上那五張 banner,哪一張是真的在賺錢,哪一張只是佔位子?大部分店家答不出來。設計師排版、行銷換檔期、老闆憑感覺說「這張好像不錯」,然後每個月照樣輪播。問題是——如果你不知道哪個版位帶來成交,你就永遠在為感覺付出版面成本。

好消息是,GA4 有一組專門解決這件事的事件:view_promotion(版位被看到)與 select_promotion(版位被點擊)。把它們埋好,你就能算出每一個版位的曝光、點擊、點擊率,甚至一路追到最後成交金額,做出一張「版位收益排行榜」。這篇帶你從概念到程式碼到報表,一次做到位。

先搞懂四個關鍵參數:版位追蹤的座標系

內部推廣追蹤的核心,是用四個參數幫每個版位標上「座標」,之後報表才分得出誰是誰:

  • promotion_id:這檔推廣活動的編號,例如 'summer-sale-2026'
  • promotion_name:活動的可讀名稱,例如 '夏季全站 8 折'
  • creative_name:這張素材的名稱,例如 'banner-寬褲主視覺'
  • creative_slot:這是最重要的一個——版位代號,用來區分「同一檔活動出現在網站的哪個位置」,例如 'home_hero_1'、'home_belt'、'category_top'

記住一句話:promotion 是「賣什麼活動」,creative_slot 是「在哪個位子賣」。同一檔夏季特賣,可能同時出現在首頁大圖、首頁腰帶、分類頁頂端三個位子,它們 promotion_id 相同,但 creative_slot 不同。這樣你才分得出「同一個活動,哪個版位最會帶客人進來」。

對應到實務:像 QuickEntry 腰帶那種版位怎麼區分

很多店家首頁有一條「快速入口腰帶」,並排四到六個小方塊(新品、熱銷、清倉、會員專區)。這種版位最容易被忽略追蹤,因為它們看起來只是導覽。但其實它們就是內部推廣版位,而且往往是點擊主力。

做法是:腰帶裡的每一格,都給一個獨立的 creative_slot。例如從左到右依序是 'belt_slot_1' 到 'belt_slot_4',creative_name 帶上那格的主題('腰帶-新品上市'),promotion_id 帶上它導向的活動。這樣你之後就能看到「腰帶第一格 vs 第三格」的點擊率差多少,把最會賣的主題移到第一格、把沒人點的那格換掉。版位追蹤的價值就在這裡:它讓你有依據去換位、停損、優化,而不是憑手感。

第一顆事件:view_promotion(版位曝光)

當一個版位真正出現在使用者眼前(進入可視範圍)時觸發 view_promotion。理想上要搭配「曝光才算」的邏輯(用 IntersectionObserver 偵測元素進入畫面),而不是一律在頁面載入就全部送出——不然被輪播藏在後面、使用者根本沒看到的 banner 也會被算進曝光,點擊率就被稀釋。基本結構如下:

  • gtag('event', 'view_promotion', {
  •   promotion_id: 'summer-sale-2026',
  •   promotion_name: '夏季全站 8 折',
  •   creative_name: 'banner-寬褲主視覺',
  •   creative_slot: 'home_hero_1',
  •   items: [{ item_id: 'SKU-1024', item_name: '日式棉麻寬褲', promotion_id: 'summer-sale-2026', creative_slot: 'home_hero_1' }]
  • });

這裡有個進階但很實用的細節:items 裡的每個商品也可以帶 promotion_id 與 creative_slot。這樣 GA4 就能把「這支商品是透過哪個版位被推出去、最後有沒有成交」串起來,讓你算出「版位 → 商品 → 營收」的完整歸因,而不只是點擊數。

第二顆事件:select_promotion(版位點擊)

使用者點擊那個版位時觸發 select_promotion,參數要跟同一版位的 view_promotion 完全對齊(一樣的 promotion_id 與 creative_slot),GA4 才配得起來算出點擊率:

  • gtag('event', 'select_promotion', {
  •   promotion_id: 'summer-sale-2026',
  •   promotion_name: '夏季全站 8 折',
  •   creative_name: 'banner-寬褲主視覺',
  •   creative_slot: 'home_hero_1',
  •   items: [{ item_id: 'SKU-1024', item_name: '日式棉麻寬褲', promotion_id: 'summer-sale-2026', creative_slot: 'home_hero_1' }]
  • });

最容易翻車的地方就是這裡:曝光與點擊的 creative_slot 命名如果對不上,報表就會裂成兩筆對不起來的資料。曝光時寫 'home_hero_1'、點擊時寫 'homeHero1',GA4 會當成兩個不同版位,你算不出點擊率。務必把版位代號集中管理(例如寫成一份常數表),曝光與點擊都引用同一份,杜絕手打不一致。

命名規範:版位追蹤成敗的隱形關鍵

版位追蹤 80% 的失敗都不是技術問題,是命名混亂。建議在動工前先訂一份 creative_slot 命名字典,用「頁面_區塊_序號」的結構,全站共用:

  • home_hero_1 / home_hero_2:首頁主視覺輪播的第一、二張
  • home_belt_1 到 home_belt_4:首頁快速入口腰帶四格
  • category_top / category_sidebar:分類頁頂端與側欄
  • cart_recommend:購物車頁的推薦版位

promotion_id 則建議用「活動主題-年份」,例如 'newyear-2026'、'membersday-2026'。這樣三個月後回頭看報表,你一眼就知道每筆資料是哪個活動的哪個版位,不會對著一堆亂碼發呆。命名字典就是版位追蹤的地基,先訂好,之後省下無數次對不上的痛苦。

怎麼看報表:從曝光點擊到收益排行

埋好之後,GA4 的「營利 → 促銷活動」報表(或用探索分析自建)就能看到每個 promotion 與 creative_slot 的曝光數、點擊數、點閱率。但真正有價值的是往下一層做「版位收益」——用探索分析,維度選 creative_slot,指標拉「促銷活動點擊」與「購買收益」,你就得到一張「哪個版位帶來多少營收」的排行榜。

判讀邏輯是:高曝光低點擊的版位 → 素材或位置不吸引人,換素材或降權;高點擊低成交的版位 → 導去的商品或活動頁沒接住,檢查落地頁;高點擊又高成交的版位 → 加碼、複製到更多位置。有了這張表,你每個月換 banner 就不再是憑感覺,而是拿數字說話,把最貴的首頁黃金版位留給真正會賣的素材。

用 AI 輔助,但驗證不能省

你可以用 AI 加速這件事:例如請 AI 依你的命名字典,一次產出腰帶四格的 view_promotion 與 select_promotion 程式碼;或把一份 GA4 促銷報表貼給 AI,請它幫你點出「哪個版位點擊率異常低、可能要換」。AI 在整理重複結構的程式碼、與初步解讀數字趨勢上確實好用。

但同樣要守住底線:AI 不知道你網站的真實 DOM 結構、不知道哪個元素對應哪個版位,它產的 creative_slot 常常是它自己編的。你必須人工核對每個版位代號有沒有接到正確的元素、曝光與點擊是否成對、命名是否符合你的字典。AI 產完,一律進 DebugView 走一遍完整曝光與點擊流程再上線。把 AI 當減少重工的工具,最終正確性還是靠你自己驗。

劃重點總結

版位追蹤讓「首頁哪張 banner 最會賣」從玄學變數字。核心是兩顆事件——view_promotion 記曝光、select_promotion 記點擊;核心是四個參數——promotion_id、promotion_name、creative_name,而 creative_slot 是區分版位的靈魂;成敗關鍵是命名字典要先訂好、曝光與點擊代號要對齊;價值在於做出版位收益排行榜,讓你有依據換位停損。像腰帶那種多格版位,記得每格獨立 creative_slot。埋完用 DebugView 驗過再上,別讓黃金版位繼續浪費在不會賣的素材上。

ECPRO 數據觀察

用真實數據延伸這個主題

ECPRO 電商博士實測逾 10 萬個台灣電商網站。想用數據驗證本文觀點,延伸閱讀這幾份實測報告:

覺得有用?分享出去
LINE Facebook X Threads

常見問題

creative_slot 到底是什麼?跟 promotion_id 差在哪?

promotion_id 代表「賣什麼活動」,例如夏季特賣;creative_slot 代表「在哪個版位賣」,例如首頁大圖、首頁腰帶第一格。同一檔活動會同時出現在多個版位,它們 promotion_id 相同、creative_slot 不同。有了 creative_slot,你才分得出同一活動哪個位子最會帶客人進來。

首頁腰帶那種多格版位怎麼追蹤?

把腰帶裡每一格都給獨立的 creative_slot,例如從左到右 belt_slot_1 到 belt_slot_4,creative_name 帶上那格主題。這樣就能比較各格的點擊率與帶來的營收,把最會賣的主題移到第一格、把沒人點的換掉,用數字決定版面而不是憑手感。

為什麼我的版位點擊率報表對不起來?

幾乎都是命名不一致造成的。曝光時 creative_slot 寫 home_hero_1、點擊時寫成 homeHero1,GA4 會當成兩個不同版位,點擊率就算不出來。解法是先訂一份版位命名字典,曝光的 view_promotion 與點擊的 select_promotion 都引用同一份代號,杜絕手打不一致。

訂閱電商情報每週一封,台灣電商數據與經營洞察。
相關文章