HeatMapXHeatMapX
價格登入

我們如何將 A/B 測試的配送設計對齊業界標準——分離「配送率」與「A/B 配比」

HeatMapX Engineering Team3 min read
  • engineering
  • ab-testing
  • product-design

本文重點

  • A/B 測試的比例設定,很容易把「配送率」與「A/B 配比」這兩個不同的關注點混在一起
  • 我們將兩者拆分為獨立的參數
  • 拆分之後,「風險控管」與「公平比較」都能各自被單純地處理

在 HeatMapX 實作 A/B 測試功能的過程中,有一個看似樸素卻十分重要的設計決策:如何為「比例」建模。結論是,我們將**「納入實驗的比例(配送率)」與「A/B 配比」拆分成兩個獨立的參數**。本文將分享其中的理由。

容易混淆的兩個關注點

A/B 測試的「比例」其實包含了性質不同的兩個關注點。

  • 要讓多少訪客進入實驗(=風險控管)
  • 在進入實驗的訪客中,A 與 B 該如何分配(=比較的公平性)

在初期較為樸素的設計中,這兩者常被合併成一個滑桿。然而這麼一來,「想小規模安全地測試」與「想公平比較 A 與 B」這兩個不同的目的就會糾纏在一起,無論對使用者還是對實作來說都會變得難以理解。

拆分後的模型

因此我們將兩者獨立出來。

  • traffic_allocation(納入實驗的比例):在所有訪客中,被納入實驗對象的比率。範圍為 0~100%。
  • A/B 配比:在被納入實驗的對象中,Control 與 Variant B 各自的權重。

以偽代碼描述,分配的判斷邏輯如下。

  1. 首先依據配送率,判斷訪客「是否屬於實驗對象」。
  2. 只有被納入的訪客,才會依照 A/B 配比被分配到 Control / Variant B。

未被納入的訪客,則會照常看到原本的頁面(沒有任何變動)。

拆分帶來的好處

  • 可以逐步擴大風險範圍:即使配送率從 10% → 30% → 100% 逐步調整,也能維持比較的公平性(50:50),只單獨調整風險程度。
  • 設定含意更清楚:「納入的規模」與「呈現方式」分屬不同的介面,減少誤解。
  • 與業界標準一致:主流的 A/B 測試工具也同樣將流量分配與實驗內部的分配分開處理。

也反映在介面上

這項設計決策同樣反映在介面上。在實驗設定畫面中,可以分別指定「納入實驗的比例」與「A/B 配比」,而在實驗詳情頁面,則可以將兩者以摘要形式同時確認。

結語

看似單純的「比例」這個元素,其實潛藏著風險控管與比較公平性這兩個不同的關注點。透過將它們拆分建模,我們打造出對使用者來說更容易理解、也更容易營運的 A/B 測試功能。雖然只是一個小小的設計決策,但正是這些累積,決定了產品的易用程度。

從 Claude Code 執行的熱圖,免費開始。

貼上一行追蹤標籤,從 CLI 取得分析與改善建議。