Công thức tính cỡ mẫu A/B testing cho biết mỗi biến thể cần bao nhiêu khách truy cập trước khi chênh lệch về tỷ lệ chuyển đổi có ý nghĩa. Với một test hai phía tiêu chuẩn ở mức tin cậy 95% và độ mạnh thống kê 80%, bạn cần khoảng n = (1,96 + 0,84)² × (p1(1−p1) + p2(1−p2)) / (p2 − p1)² khách truy cập mỗi biến thể, trong đó p1 là tỷ lệ nền và p2 là tỷ lệ bạn mong phát hiện.
Áp công thức đó vào số liệu B2B thực tế và kết quả khá khó chịu. Một trang chuyển đổi ở mức 3% cần khoảng 14.000 khách truy cập mỗi biến thể để phát hiện đáng tin cậy mức tăng tương đối 20%. Rất nhiều trang B2B không có nhiều khách truy cập như vậy trong một quý. Dưới đây: từng đầu vào của công thức, các bảng đã tính sẵn cho nhiều tỷ lệ cơ sở, thời gian một thử nghiệm cần ở một mức lưu lượng nhất định, và nên làm gì khi câu trả lời là “tám tháng”.
Quan điểm của chúng tôi: Hầu hết A/B test B2B thiếu power thống kê
Trước hết là quan điểm mà các con số ủng hộ. Chúng tôi cho rằng phần lớn A/B test trong B2B bị dừng từ rất lâu trước khi có đủ dữ liệu, và nhiều “phiên bản thắng” chỉ là nhiễu. Kịch bản thường thấy: thử nghiệm ba tuần, biến thể dẫn trước 25%, một huy hiệu xanh, thay đổi được triển khai, và sáu tháng sau pipeline không tăng lên chút nào.
Test thiếu độ mạnh thống kê sẽ bỏ lỡ các hiệu ứng có thật, làm lãng phí suất test. Tệ hơn, khi một test như vậy vượt qua ngưỡng ý nghĩa, mức tăng đo được thường bị phóng đại, vì chỉ những lần may mắn mới vượt được ngưỡng. Các nhà thống kê gọi đây là sai số về độ lớn (type M). Đội ngũ triển khai một thay đổi có thể chẳng có tác dụng gì, lại còn ghi một con số bị thổi phồng vào báo cáo CRO. Tính cỡ mẫu trước khi chạy là cách phòng ngừa rẻ nhất.
Công thức tính cỡ mẫu A/B test
Công thức tiêu chuẩn để so sánh hai tỷ lệ chuyển đổi (kiểm định z hai tỷ lệ) là:
n mỗi biến thể = [ zα/2 × √(2 × p̄ × (1 − p̄)) + zβ × √(p1(1 − p1) + p2(1 − p2)) ]² / (p2 − p1)²
Mỗi đầu vào có một ý nghĩa dễ hiểu:
- p1 (tỷ lệ chuyển đổi cơ sở): tỷ lệ chuyển đổi hiện tại của trang và mục tiêu bạn đang thử nghiệm. Dùng tỷ lệ cho đúng sự kiện chuyển đổi và đúng trang, trong 4 đến 8 tuần gần nhất, không phải mức trung bình toàn website.
- p2 (tỷ lệ mục tiêu): mức cơ sở nhân với (1 + MDE). Với mức cơ sở 3% và MDE tương đối 20%, p2 = 3,6%.
- MDE (hiệu ứng tối thiểu phát hiện được): mức tăng tương đối nhỏ nhất bạn muốn phát hiện. Đây là quyết định kinh doanh, không phải quyết định thống kê. MDE nhỏ hơn cần lưu lượng nhiều hơn rất nhiều, vì hiệu số (p2 − p1) được bình phương ở mẫu số. Giảm một nửa MDE thì cỡ mẫu tăng khoảng gấp bốn.
- p̄ (tỷ lệ gộp): trung bình của p1 và p2. Nó mô tả mức nhiễu với giả định không có khác biệt thực sự.
- zα/2 = 1,96: tương ứng với tỷ lệ dương tính giả 5% (alpha 0,05), chia cho cả hai đuôi vì phiên bản thử có thể tốt hơn hoặc tệ hơn.
- zβ = 0,8416: tương ứng với lực thống kê 80%, nghĩa là nếu mức tăng thực bằng MDE, thử nghiệm sẽ phát hiện được trong 80% trường hợp. 20% còn lại, bạn bỏ lỡ một biến thể thắng thực sự.
Nhiều công cụ tính dùng phiên bản không gộp đơn giản hóa như ở đoạn đầu. Ở tỷ lệ chuyển đổi B2B, hai cách chỉ chênh nhau vài khách truy cập. Công cụ tính A/B testing của chúng tôi dùng công thức gộp ở trên và cũng ước tính thời gian thử nghiệm.
Ví dụ tính toán từng bước
Ví dụ (số liệu minh họa): một trang yêu cầu demo có tỷ lệ chuyển đổi 3%. Bạn muốn phát hiện mức tăng tương đối 20%.
- Đặt các tỷ lệ: p1 = 0,030, p2 = 0,030 × 1,2 = 0,036. Chênh lệch tuyệt đối là 0,006.
- Tỷ lệ gộp: p̄ = (0,030 + 0,036) / 2 = 0,033.
- Số hạng đầu tiên: √(2 × 0,033 × 0,967) = √0,06382 = 0,2526. Nhân với 1,96: 0,4951.
- Số hạng thứ hai: p1(1−p1) = 0,0291 và p2(1−p2) = 0,0347. √(0,0638) = 0,2526. Nhân với 0,8416: 0,2126.
- Cộng rồi bình phương: (0,4951 + 0,2126)² = 0,7077² = 0,5009.
- Chia cho bình phương chênh lệch: 0,5009 / 0,006² = 0,5009 / 0,000036 = 13.914 khách truy cập mỗi biến thể.
Vậy thử nghiệm cần tổng cộng khoảng 27.800 khách truy cập, và riêng nhóm đối chứng khoảng 417 chuyển đổi (13.914 × 3%), trước khi bạn đọc kết quả. Để kiểm tra chéo, công thức không gộp đơn giản hóa cho 13.911 mỗi biến thể, và phép xấp xỉ arcsine (Cohen's h) cho khoảng 13.890. Ba phương pháp chênh nhau không quá 0,2%.
Bảng cỡ mẫu cho tỷ lệ chuyển đổi B2B
Bảng dưới đây áp dụng công thức gộp ở trên (alpha 0,05 hai phía, power 0,8) cho các tỷ lệ cơ sở từ 1% (ví dụ: yêu cầu demo tính trên tổng khách truy cập của một trang đông khách) đến 10% (ví dụ: một chuyển đổi vi mô như nhấp vào CTA). Hãy dùng tỷ lệ cơ sở của chính bạn; các dòng này chỉ là điểm tham chiếu. Giá trị là số khách truy cập mỗi biến thể, được tính bằng Node.js và làm tròn lên.
| Tỷ lệ chuyển đổi cơ sở | MDE tương đối 10% | MDE tương đối 20% | MDE tương đối 30% | MDE tương đối 50% |
|---|---|---|---|---|
| 1% | 163,095 | 42,693 | 19,827 | 7,750 |
| 2% | 80,682 | 21,109 | 9,798 | 3,826 |
| 3% | 53,211 | 13,914 | 6,455 | 2,518 |
| 5% | 31,234 | 8,158 | 3,780 | 1,471 |
| 10% | 14,751 | 3,841 | 1,774 | 686 |
Chuyển từ MDE 10% sang MDE 50% giúp giảm cỡ mẫu cần thiết khoảng 20 lần. Tăng gấp đôi tỷ lệ cơ sở giảm cỡ mẫu khoảng một nửa. Bạn không thể thay đổi traffic nhanh chóng, nhưng có thể chọn mức thay đổi cần kiểm định và chuyển đổi cần đo, và với một website nhỏ, đó là hai đòn bẩy thực sự quan trọng.
Thử nghiệm sẽ mất bao lâu?
Thời lượng bằng tổng số khách truy cập cần thiết (cả hai biến thể) chia cho số khách truy cập hằng tháng thực sự đến trang được thử nghiệm. Bảng cho thấy số tháng với tỷ lệ chia 50/50 ở ba mức lưu lượng.
| Số khách truy cập trang mỗi tháng | Mức cơ sở | MDE 10% | MDE 20% | MDE 30% | MDE 50% |
|---|---|---|---|---|---|
| 2,000 | 2% | 80.7 | 21.1 | 9.8 | 3.8 |
| 2,000 | 3% | 53.2 | 13.9 | 6.5 | 2.5 |
| 2,000 | 5% | 31.2 | 8.2 | 3.8 | 1.5 |
| 5,000 | 2% | 32.3 | 8.4 | 3.9 | 1.5 |
| 5,000 | 3% | 21.3 | 5.6 | 2.6 | 1.0 |
| 5,000 | 5% | 12.5 | 3.3 | 1.5 | 0.6 |
| 20,000 | 2% | 8.1 | 2.1 | 1.0 | 0.4 |
| 20,000 | 3% | 5.3 | 1.4 | 0.6 | 0.3 |
| 20,000 | 5% | 3.1 | 0.8 | 0.4 | 0.1 |
Dù bảng nói gì, hãy chạy mọi bài kiểm thử ít nhất hai tuần trọn vẹn để hành vi ngày thường, cuối tuần và mọi đợt tăng đột biến do chiến dịch đều có mặt ở cả hai nhánh. Và coi bất cứ bài kiểm thử nào trên ba tháng là bài kiểm thử có lẽ không nên chạy ở dạng hiện tại: nội dung trang, chiến dịch và cơ cấu lưu lượng đều thay đổi trong khoảng thời gian đó, và kết quả sẽ mô tả một website không còn tồn tại.
Với 5.000 lượt truy cập mỗi tháng và tỷ lệ cơ sở 3%, mức tăng 50% có thể đọc được sau khoảng một tháng, còn mức tăng 10% mất gần hai năm. Không ai giữ nguyên một trang suốt hai năm, nên bài thử nghiệm thứ hai sẽ bị dừng sớm và được diễn giải như thể kết quả có ý nghĩa.

Điều phần lớn các đội làm sai
- Dùng lưu lượng toàn website khi ước tính thời gian. Chỉ những khách đến được phần tử đang kiểm thử mới được tính. Một bài kiểm thử trang bảng giá trên website 20.000 khách truy cập có thể chỉ có 2.000 khách đủ điều kiện mỗi tháng.
- Chọn MDE sau khi thử nghiệm. Nếu bạn đặt MDE là 30% trước khi ra mắt và thử nghiệm cho thấy 12%, bạn không có biến thể thắng 12%. Bạn có một thử nghiệm không kết luận được.
- Xem trộm kết quả và dừng ngay khi thấy huy hiệu xanh đầu tiên. Phân tích của Evan Miller, How Not To Run an A/B Test, cho thấy việc kiểm định ý nghĩa thống kê lặp đi lặp lại luôn làm tăng tỷ lệ dương tính giả. Trong ví dụ của ông (tỷ lệ cơ sở 50%, một thay đổi không có tác dụng gì, dừng ngay khi kết quả đạt mức ý nghĩa 5% hoặc sau 150 quan sát), tỷ lệ dương tính giả là 26,1% thay vì mức danh nghĩa 5%.
Khi con số cho thấy cần nhiều tháng: Bảy lựa chọn
1. Kiểm thử những thay đổi lớn hơn
Cách rẻ nhất để giảm cỡ mẫu là nâng MDE một cách trung thực, nghĩa là kiểm thử những thay đổi đủ lớn để có thể tạo ra mức đó: một tuyên bố giá trị mới, một ưu đãi khác (đặt lịch tức thì thay vì biểu mẫu liên hệ), một trang dành riêng cho một ngành thay vì trang chung. Hướng dẫn tối ưu hóa tỷ lệ chuyển đổi B2B của chúng tôi trình bày cách xếp hạng ý tưởng kiểm thử theo quy mô hiệu ứng kỳ vọng.
2. Test trên các trang có lưu lượng cao hơn
Trang chủ, các bài blog hàng đầu và landing page có lưu lượng lớn mang lại nhiều khách truy cập hơn mỗi tháng (xem ghi chú của chúng tôi về tối ưu hóa landing page B2B để biết trang nào thường có nhiều lưu lượng ở giai đoạn quyết định nhất). Một thử nghiệm trên mẫu trang dùng chung cho nhiều trang (mọi trang giải pháp, mọi bài blog) gộp lưu lượng của chúng vào một thử nghiệm.
3. Dùng chuyển đổi vi mô một cách thận trọng
Chuyển đổi vi mô như lượt nhấp CTA hoặc lượt bắt đầu điền form có tỷ lệ cơ sở cao hơn, nên áp dụng dòng 10% của bảng thay vì dòng 2%. Điểm cần lưu ý: một biến thể có thể tăng lượt nhấp nhưng giảm số demo đạt chuẩn. Chỉ dùng chuyển đổi vi mô làm chỉ số ra quyết định khi bạn có bằng chứng nó biến động cùng chiều với mục tiêu chính, và luôn báo cáo chuyển đổi chính bên cạnh như một chỉ số bảo vệ.
4. Gộp phân khúc trước, tách ra sau
Chạy test riêng cho từng phân khúc sẽ chia nhỏ lưu lượng. Hãy chạy một test trên các phân khúc, rồi chỉ xem kết quả cấp phân khúc như một xu hướng tham khảo. Nếu bạn cần câu trả lời riêng cho một phân khúc, test phải được tính cỡ mẫu chỉ dựa trên lưu lượng của riêng phân khúc đó. Lộ trình test cá nhân hóa 90 ngày chỉ cách sắp xếp thứ tự các test phân khúc để mỗi test có đủ lưu lượng.
5. Dùng sequential testing
Thiết kế tuần tự (kiểm định tuần tự theo nhóm với các lần xem kết quả giữa chừng được lên kế hoạch trước, hoặc các phương pháp luôn hợp lệ được tích hợp trong một số công cụ thử nghiệm) cho phép bạn kiểm tra kết quả trong lúc thử nghiệm và dừng sớm khi tác động lớn, mà không làm tăng dương tính giả. Đánh đổi là cỡ mẫu tối đa lớn hơn một chút nếu thử nghiệm chạy đến cùng. Đây là phiên bản hợp lệ của việc xem trộm kết quả. Nếu một thử nghiệm mất hàng tháng, hãy dành ngân sách cho các công cụ CRO chẩn đoán như bản ghi phiên và phân tích form trước.
6. Cân nhắc phương pháp Bayes, với kỳ vọng rõ ràng
A/B testing theo Bayes báo cáo xác suất B thắng A và mức tổn thất kỳ vọng nếu bạn chọn sai. Điều đó dễ hành động hơn p-value, và cho phép bạn đưa ra quyết định rõ ràng như “triển khai nếu xác suất tốt hơn trên 90% và tổn thất kỳ vọng dưới 0,1 điểm phần trăm”. Với các thay đổi có thể đảo ngược, chấp nhận rủi ro đó thường là hợp lý.
Điều mà phương pháp Bayes không làm được là tạo ra thông tin. Với prior yếu, lượng dữ liệu cần để tự tin về mức tăng 20% gần như bằng trong bảng tần suất. “Xác suất vượt trội” 90% trên một mẫu nhỏ vẫn mong manh, và kiểm tra hằng ngày với quy tắc dừng vẫn làm tăng tỷ lệ sai trên thực tế. Thử nghiệm Bayes thay đổi cách bạn diễn đạt sự không chắc chắn và ra quyết định. Nó không làm giảm sự không chắc chắn.
7. Đừng xem trộm kết quả, hoặc lên kế hoạch cho các lần xem
Chốt cỡ mẫu trước khi ra mắt, ghi vào bản tóm tắt thử nghiệm, và không kết luận thử nghiệm cho đến khi đạt cỡ mẫu đó. Nếu các bên liên quan cần cập nhật giữa chừng, hãy dùng thiết kế tuần tự ngay từ đầu thay vì kiểm tra tùy hứng. Mẫu kế hoạch thử nghiệm của chúng tôi có một trường cho từng quyết định này.
Danh sách kiểm tra trước khi ra mắt
- Lấy tỷ lệ cơ sở và số khách truy cập đủ điều kiện mỗi tháng cho chính xác trang và chuyển đổi đó (4 đến 8 tuần gần nhất).
- Chọn MDE dựa trên mức độ lớn của thay đổi, và ghi lại.
- Tính n mỗi biến thể bằng công thức hoặc bảng ở trên, rồi tính thời lượng.
- Nếu thời gian vượt quá khoảng ba tháng, hãy thiết kế lại bài kiểm thử (thay đổi lớn hơn, trang lưu lượng cao hơn, hoặc chỉ số có mức cơ sở cao hơn kèm rào chắn).
- Đặt quy tắc dừng: cỡ mẫu cố định, hoặc kế hoạch tuần tự với các lần xem kết quả được lên kế hoạch trước.
Với các đội B2B, mức tác động lớn nhất thường đến từ việc hiển thị nội dung khác nhau cho các khách truy cập khác nhau thay vì trau chuốt một trang cho tất cả, vì một thông điệp viết cho một phân khúc là thay đổi lớn hơn màu nút mới. Nếu bạn đang cân nhắc giữa thử nghiệm chia đôi đơn giản và thử nghiệm có nhiều biến thể hoặc nhiều yếu tố, hãy đọc bài so sánh A/B testing và thử nghiệm đa biến của chúng tôi, bài viết áp dụng cùng phép tính cỡ mẫu cho thiết kế A/B/n và đa biến.
Khi bạn sẵn sàng thử nghiệm các trải nghiệm theo phân khúc, tính năng A/B testing cho trang cá nhân hóa của Markettailor cho phép bạn so sánh từng phân khúc với nhóm đối chứng và theo dõi kết quả theo từng phân khúc, để cỡ mẫu bạn lên kế hoạch đúng là cỡ mẫu bạn nhận được.
Câu hỏi thường gặp
Công thức tính cỡ mẫu A/B test là gì?
Với hai tỷ lệ chuyển đổi, n mỗi biến thể = [1,96 × √(2p̄(1−p̄)) + 0,8416 × √(p1(1−p1) + p2(1−p2))]² / (p2 − p1)², trong đó p1 là mức cơ sở, p2 là tỷ lệ mục tiêu và p̄ là trung bình của chúng. Công thức này giả định độ tin cậy 95% (hai phía) và power 80%.
Tôi cần bao nhiêu khách truy cập cho một A/B test với tỷ lệ chuyển đổi 2%?
Khoảng 21.100 khách truy cập mỗi biến thể để phát hiện mức tăng tương đối 20%, khoảng 9.800 cho mức tăng 30%, và khoảng 3.800 cho mức tăng 50%, ở độ tin cậy 95% và power 80%. Nhân đôi các con số này để có tổng lưu lượng thử nghiệm.
A/B testing theo phương pháp Bayes có cần cỡ mẫu nhỏ hơn không?
Không đáng kể, trừ khi bạn có prior mạnh và có cơ sở. Kiểm thử Bayes cho kết quả trực quan hơn (xác suất thắng nhóm đối chứng, tổn thất kỳ vọng) và hỗ trợ ra quyết định dựa trên rủi ro, nhưng lượng dữ liệu cần để tự tin về một mức tăng nhất định cũng tương tự phép tính tần suất.
Website B2B nên dùng mức hiệu ứng tối thiểu có thể phát hiện (MDE) bao nhiêu?
Chọn MDE dựa trên traffic của bạn, không phải mong muốn. Tính xem mức nào có thể phát hiện được trong sáu đến tám tuần với traffic của trang, rồi chỉ thử nghiệm những thay đổi đủ lớn để có khả năng tạo ra mức tăng đó. Trong bảng thời lượng ở trên, một trang có 5.000 khách truy cập mỗi tháng và tỷ lệ cơ sở 3% chỉ có thể đọc được mức tăng khoảng 30% trở lên trong vòng ba tháng.
Có thể dừng A/B test sớm nếu đã có ý nghĩa thống kê không?
Không được với thử nghiệm cỡ mẫu cố định thông thường, vì kiểm tra nhiều lần sẽ làm tăng dương tính giả. Nếu cần khả năng dừng sớm, hãy dùng thiết kế thử nghiệm tuần tự với các lần phân tích giữa kỳ được lên kế hoạch trước khi bắt đầu.