---
title: "Các loại A/B test"
description: "Tìm hiểu về các loại A/B test trong Adapty."
---

Adapty cung cấp hai loại A/B test, mỗi loại phù hợp với các tình huống kiểm thử khác nhau:

- **A/B test thông thường:** A/B test được tạo cho một [flow](adapty-flow-builder)/[paywall](paywalls)/[onboarding](onboardings) placement duy nhất.
- **A/B test đa placement:** A/B test được tạo cho nhiều paywall placement trong ứng dụng của bạn. Sau khi A/B test gán một <InlineTooltip tooltip="biến thể">Biến thể A/B test là các phiên bản thay thế của flow, paywall hoặc onboarding để kiểm thử.</InlineTooltip>, nó sẽ hiển thị biến thể đó nhất quán trên tất cả các phần đã chọn trong ứng dụng của bạn.

:::warning
A/B test đa placement chỉ khả dụng cho Adapty SDK từ phiên bản v3.5.0 trở lên. A/B test đa placement chỉ hoạt động với paywall.

A/B test cho flow yêu cầu Adapty SDK v4.0.0+.

A/B test cho onboarding yêu cầu Adapty SDK v3.8.0+ (iOS, Android, React Native, Flutter), v3.14.0+ (Unity), hoặc v3.15.0+ (Kotlin Multiplatform, Capacitor).

Người dùng từ các phiên bản trước sẽ bỏ qua chúng.
:::

Mỗi flow/paywall/onboarding được gán một trọng số để phân chia lưu lượng trong suốt quá trình kiểm thử.

Ví dụ, với trọng số 70% và 30%, paywall đầu tiên được hiển thị cho khoảng 700 trong số 1.000 người dùng, paywall thứ hai cho khoảng 300 người. Trong A/B test đa placement, trọng số được đặt theo biến thể, không phải theo từng paywall.

Cách thiết lập này cho phép bạn so sánh các flow, paywall khác nhau và đưa ra quyết định dựa trên dữ liệu cho chiến lược kiếm tiền của ứng dụng.

## Khi nào nên dùng loại nào \{#when-to-use-each-type\}

Mỗi loại A/B test hữu ích trong các trường hợp:
- **A/B test thông thường**:
  - Ứng dụng của bạn chỉ có một placement.
  - Bạn muốn chạy A/B test trên một placement duy nhất và theo dõi các thay đổi kinh tế chỉ cho placement đó, ngay cả khi ứng dụng có nhiều placement.
  - Bạn muốn chạy A/B test trên người dùng cũ (những người đã thấy ít nhất một Adapty paywall).
- **A/B test đa placement**:
  - Bạn muốn đồng bộ hóa các biến thể trên nhiều placement. Ví dụ, bạn có thể thay đổi giá trong flow onboarding và trong phần cài đặt ứng dụng cùng một lúc.
  - Bạn muốn đánh giá tổng thể kinh tế ứng dụng. Chạy kiểm thử trên tất cả các placement giúp thống kê A/B test dễ phân tích hơn so với kiểm thử các placement riêng lẻ.
  - Bạn muốn chạy A/B test chỉ trên người dùng mới, tức là những người chưa từng thấy một Adapty paywall nào.
  - Bạn muốn sử dụng nhiều paywall trong một biến thể duy nhất:

  <img src="/assets/shared/img/ab-test-variants.png"
  alt="Ví dụ về nhiều paywall trong một biến thể A/B test đa placement"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

## Sự khác biệt chính \{#key-differences\}

| Tính năng                         | A/B Test thông thường                                                                                                   | A/B Test đa placement                                       |
| ------------------------------- |--------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------|
| **Đối tượng kiểm thử**        | Một flow/paywall/onboarding                                                                                             | Tập hợp paywall thuộc một biến thể                      |
| **Tính nhất quán biến thể**         | Biến thể được xác định riêng cho từng placement                                                               | Cùng một biến thể được dùng trên tất cả paywall placement               |
| **Nhắm mục tiêu đối tượng**          | Định nghĩa theo từng flow/paywall/onboarding placement                                                                           | Dùng chung trên tất cả paywall placement                          |
| **Phân tích**                   | Bạn phân tích một flow/paywall/onboarding placement                                                                       | Bạn phân tích toàn bộ ứng dụng trên các placement thuộc kiểm thử |
| **Phân phối trọng số biến thể** | Theo từng flow/paywall/onboarding                                                                                             | Theo tập hợp paywall                                           |
| **Người dùng**                       | Tất cả người dùng                                                                                                      | Chỉ người dùng mới (những người chưa thấy Adapty paywall)     |
| **Phiên bản Adapty SDK**          | Với flow: v4.0.0+. Bất kỳ phiên bản nào với paywall. Với onboarding: v3.8.0+ (iOS, Android, React Native, Flutter), v3.14.0+ (Unity), v3.15.0+ (KMP, Capacitor)                                                          | 3.5.0+                                  |
| **Phù hợp nhất cho**                    | Kiểm thử các thay đổi độc lập trong một flow/paywall/onboarding placement mà không xét đến kinh tế tổng thể của ứng dụng | Đánh giá chiến lược kiếm tiền tổng thể trên toàn ứng dụng           |

## Logic lựa chọn A/B test \{#ab-test-selection-logic\}

**A/B test đa placement có độ ưu tiên cao hơn A/B test thông thường.** Tuy nhiên, A/B test đa placement chỉ được hiển thị cho **người dùng mới** — những người chưa từng thấy một Adapty paywall nào (phương thức SDK `getPaywall` chưa bao giờ được gọi cho họ). Điều này đảm bảo tính nhất quán của kết quả trên các placement.

Sơ đồ sau đây cho thấy logic Adapty sử dụng để chọn A/B test cho một placement:

  <img src="/assets/shared/img/ab-tests-scheme.webp"
  alt="Sơ đồ hiển thị logic lựa chọn A/B test cho một paywall placement"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '350px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

Trên trang **A/B Tests**, các kiểm thử paywall, onboarding, flow và đa placement xuất hiện trên các tab riêng biệt.

  <img src="ab-tests-tabs.webp"
  alt="Trang danh sách A/B test với các tab cho loại kiểm thử Regular, Onboarding và Crossplacement"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

## Giới hạn của A/B test đa placement \{#crossplacement-ab-test-limitations\}

:::warning
A/B test đa placement không thể bao gồm các placement thuộc flow hoặc onboarding.
:::

A/B test đa placement đảm bảo rằng mỗi người dùng thấy cùng một biến thể trên tất cả các placement trong kiểm thử. Điều này tạo ra các giới hạn sau:

* Chỉ người dùng mới mới có thể tham gia. Người dùng mới là người chưa thấy Adapty paywall và ứng dụng của họ chưa bao giờ gọi `getPaywall`. Adapty không thể đảm bảo chuỗi paywall nhất quán cho các người dùng khác.

* Placement đầu tiên mà người dùng gặp sẽ xác định paywall Adapty hiển thị. Bạn không thể thay đổi việc phân công người dùng hoặc đăng ký cùng một người dùng vào nhiều hơn một A/B test đa placement.

:::warning
Sau khi người dùng nhận được một paywall đa placement, họ sẽ thấy nó trong 90 ngày, ngay cả sau khi bạn dừng kiểm thử. Để thay đổi thời gian này, trong cài đặt **General**, hãy điều chỉnh **[Cross-placement variation stickiness](general#9-cross-placement-variation-stickiness)**.
:::

## Độ ưu tiên của A/B test đa placement \{#crossplacement-ab-test-priority\}

* A/B test đa placement luôn có độ ưu tiên cao hơn A/B test thông thường và A/B test onboarding. Nếu một người dùng mới đủ điều kiện cho cả A/B test đa placement và A/B test thông thường trên cùng một placement, A/B test đa placement sẽ được hiển thị.

* Khi nhiều A/B test đa placement với cùng đối tượng chia sẻ cùng một placement, Adapty tự động gán độ ưu tiên kiểm thử dựa trên thứ tự chúng được thêm vào. Kiểm thử đầu tiên có độ ưu tiên cao nhất. Bạn không thể thay đổi điều này theo cách thủ công.

* Các kiểm thử nhắm vào phân khúc người dùng nhỏ hơn tự động có độ ưu tiên cao hơn so với những kiểm thử nhắm vào phân khúc Tất cả người dùng.

:::note
Trong Analytics, một A/B test đa placement xuất hiện dưới dạng nhiều kiểm thử con, mỗi kiểm thử cho một placement. Các kiểm thử con theo mẫu đặt tên `<test-name> child-0`, `<test-name> child-1`, v.v. Việc đánh số khớp với thứ tự placement trên trang chi tiết A/B test. Để xem kết quả cho một placement cụ thể, hãy lọc theo **Placement**.
:::

## Các bước tiếp theo \{#next-steps\}

- [Tạo, chạy và dừng A/B test](run_stop_ab_tests) — Thiết lập và khởi chạy kiểm thử đầu tiên của bạn
- [Kết quả và chỉ số A/B test](results-and-metrics) — Phân tích hiệu suất và chọn biến thể chiến thắng