Khi liên hệ với người dùng hoặc bắt đầu một chiến dịch tiếp thị mới, bạn cần đảm bảo rằng mình đang làm đúng. Thử nghiệm A/B có thể giúp bạn tìm ra cách diễn đạt và trình bày tối ưu bằng cách thử nghiệm các biến thể thông báo trên những phần được chọn trong cơ sở người dùng. Dù mục tiêu của bạn là cải thiện tỷ lệ giữ chân hay tỷ lệ chuyển đổi cho một ưu đãi, thử nghiệm A/B có thể thực hiện phân tích thống kê để xác định xem một biến thể thông báo có hoạt động hiệu quả hơn đường cơ sở cho mục tiêu bạn chọn hay không.
Để thử nghiệm A/B các biến thể tính năng với đường cơ sở, hãy làm như sau:
- Tạo thử nghiệm.
- Xác thực thử nghiệm trên một thiết bị thử nghiệm.
- Quản lý thử nghiệm.
Tạo thử nghiệm
Thử nghiệm sử dụng Firebase In-App Messaging cho phép bạn đánh giá nhiều biến thể của một thông báo trong ứng dụng.
-
Nếu chưa bật Google Analytics khi tạo dự án, bạn có thể bật tính năng này trên thẻ Các công cụ tích hợp mà bạn có thể truy cập bằng cách sử dụng > Cài đặt dự án trong bảng điều khiển của Firebase.
Trong phần DevOps và Tương tác của trình đơn điều hướng trong Firebase bảng điều khiển, hãy nhấp vào A/B Testing.
Nhấp vào Tạo thử nghiệm, rồi chọn Nhắn tin trong ứng dụng khi được nhắc chọn dịch vụ mà bạn muốn thử nghiệm.
Ngoài ra, trên trình đơn điều hướng trong bảng điều khiển Firebase, hãy mở rộng Tương tác, rồi nhấp vào In-App Messaging. Sau đó, nhấp vào Thử nghiệm mới.
Nhập Tên và Nội dung mô tả không bắt buộc cho thử nghiệm của bạn, rồi nhấp vào Tiếp theo.
Điền vào các trường Nhắm mục tiêu, trước tiên hãy chọn ứng dụng sử dụng thử nghiệm của bạn. Bạn cũng có thể nhắm mục tiêu đến một nhóm nhỏ người dùng để tham gia thử nghiệm bằng cách chọn các lựa chọn bao gồm:
- Phiên bản: Một hoặc nhiều phiên bản của ứng dụng
- Đối tượng người dùng: Analytics đối tượng được dùng để nhắm mục tiêu đến những người dùng có thể được đưa vào thử nghiệm
- Thuộc tính người dùng: Một hoặc nhiều thuộc tính người dùng Analytics để chọn những người dùng có thể được đưa vào thử nghiệm
- Quốc gia/Khu vực: Một hoặc nhiều quốc gia hoặc khu vực để chọn những người dùng có thể được đưa vào thử nghiệm
- Ngôn ngữ thiết bị: Một hoặc nhiều ngôn ngữ và ngôn ngữ địa phương được dùng để chọn những người dùng có thể được đưa vào thử nghiệm
- Mở lần đầu: Nhắm mục tiêu đến người dùng dựa trên lần đầu tiên họ mở ứng dụng của bạn
- Lượt tương tác gần đây nhất với ứng dụng: Nhắm mục tiêu đến người dùng dựa trên lần gần đây nhất họ tương tác với ứng dụng của bạn
Đặt Tỷ lệ phần trăm người dùng mục tiêu: Chọn tỷ lệ phần trăm cơ sở người dùng của ứng dụng khớp với tiêu chí được đặt trong phần Người dùng mục tiêu mà bạn muốn chia đều giữa đường cơ sở và một hoặc nhiều biến thể trong thử nghiệm. Đây có thể là bất kỳ tỷ lệ phần trăm nào trong khoảng từ 0,01% đến 100%. Tỷ lệ phần trăm được chỉ định ngẫu nhiên cho người dùng đối với mỗi thử nghiệm, bao gồm cả các thử nghiệm trùng lặp.
Trong phần Biến thể, hãy định cấu hình một thông báo trong ứng dụng đường cơ sở để gửi đến nhóm đường cơ sở bằng giao diện thiết kế thông báo mà bạn dùng cho chiến dịch nhắn tin trong ứng dụng thông thường.
Để thêm một biến thể vào thử nghiệm, hãy nhấp vào Thêm biến thể. Theo mặc định, các thử nghiệm có một đường cơ sở và một biến thể.
(không bắt buộc) Nhập tên mô tả hơn cho từng biến thể.
(không bắt buộc) Ở đầu phần Biến thể, hãy nhấp vào nút So sánh biến thể để so sánh một hoặc nhiều biến thể thông báo song song với thông báo đường cơ sở.
Xác định một chỉ số mục tiêu cho thử nghiệm của bạn để sử dụng khi đánh giá các biến thể thử nghiệm cùng với mọi chỉ số bổ sung mà bạn muốn sử dụng trong danh sách. Các chỉ số này bao gồm các mục tiêu tích hợp (tương tác, giao dịch mua, doanh thu, tỷ lệ giữ chân, v.v.), Analytics sự kiện chuyển đổi và các Analytics sự kiện khác.
Định cấu hình lịch biểu cho thử nghiệm:
- Đặt Ngày bắt đầu và Ngày kết thúc cho thử nghiệm.
- Đặt cách kích hoạt thông báo trong ứng dụng trên tất cả các biến thể.
Nhấp vào Xem lại để lưu thử nghiệm.
Bạn được phép có tối đa 300 thử nghiệm cho mỗi dự án, trong đó có thể có tối đa 24 thử nghiệm đang chạy, phần còn lại là bản nháp hoặc đã hoàn tất.
Xác thực thử nghiệm trên một thiết bị thử nghiệm
Đối với mỗi lượt cài đặt Firebase, bạn có thể truy xuất mã thông báo xác thực lượt cài đặt được liên kết với lượt cài đặt đó. Bạn có thể sử dụng mã thông báo này để thử nghiệm các biến thể thử nghiệm cụ thể trên một thiết bị thử nghiệm đã cài đặt ứng dụng của bạn. Để xác thực thử nghiệm trên một thiết bị thử nghiệm, hãy làm như sau:
- Nhận mã thông báo xác thực lượt cài đặt như sau:
Swift
do { let result = try await Installations.installations() .authTokenForcingRefresh(true) print("Installation auth token: \(result.authToken)") } catch { print("Error fetching token: \(error)") }
Objective-C
[[FIRInstallations installations] authTokenForcingRefresh:true completion:^(FIRInstallationsAuthTokenResult *result, NSError *error) { if (error != nil) { NSLog(@"Error fetching Installation token %@", error); return; } NSLog(@"Installation auth token: %@", [result authToken]); }];
Java
FirebaseInstallations.getInstance().getToken(/* forceRefresh */true) .addOnCompleteListener(new OnCompleteListener<InstallationTokenResult>() { @Override public void onComplete(@NonNull Task<InstallationTokenResult> task) { if (task.isSuccessful() && task.getResult() != null) { Log.d("Installations", "Installation auth token: " + task.getResult().getToken()); } else { Log.e("Installations", "Unable to get Installation auth token"); } } });
Kotlin
val forceRefresh = true FirebaseInstallations.getInstance().getToken(forceRefresh) .addOnCompleteListener { task -> if (task.isSuccessful) { Log.d("Installations", "Installation auth token: " + task.result?.token) } else { Log.e("Installations", "Unable to get Installation auth token") } }
Web
import { getInstallations, getToken } from "firebase/installations"; const installations = getInstallations(app); const installationAuthToken = getToken(installations);
- Trên thanh điều hướng trong bảng điều khiển của Firebase console, hãy nhấp vào Thử nghiệm A/B.
- Nhấp vào Bản nháp (và/hoặc Đang chạy đối với các thử nghiệm Cấu hình từ xa), di chuột qua thử nghiệm, nhấp vào trình đơn theo bối cảnh (more_vert), rồi nhấp vào Quản lý thiết bị thử nghiệm.
- Nhập mã thông báo xác thực lượt cài đặt cho một thiết bị thử nghiệm và chọn biến thể thử nghiệm để gửi đến thiết bị thử nghiệm đó.
- Chạy ứng dụng và xác nhận rằng biến thể đã chọn đang được nhận trên thiết bị thử nghiệm.
Để tìm hiểu thêm về lượt cài đặt Firebase, hãy xem bài viết Quản lý lượt cài đặt Firebase.
Quản lý thử nghiệm
Dù bạn tạo thử nghiệm bằng Remote Config, Trình soạn thông báo hay Firebase In-App Messaging, bạn vẫn có thể xác thực và bắt đầu thử nghiệm, theo dõi thử nghiệm trong khi thử nghiệm đang chạy và tăng số lượng người dùng được đưa vào thử nghiệm đang chạy.
Khi thử nghiệm hoàn tất, bạn có thể ghi lại các chế độ cài đặt mà biến thể hiệu quả nhất sử dụng, sau đó triển khai các chế độ cài đặt đó cho tất cả người dùng. Hoặc bạn có thể chạy một thử nghiệm khác.
Bắt đầu thử nghiệm
- Trong phần DevOps và Tương tác của trình đơn điều hướng trong Firebase bảng điều khiển, hãy nhấp vào A/B Testing.
- Nhấp vào Bản nháp, rồi nhấp vào tiêu đề của thử nghiệm.
- Để xác thực rằng ứng dụng của bạn có những người dùng sẽ được đưa vào thử nghiệm, hãy mở rộng thông tin chi tiết về bản nháp và kiểm tra xem có số lớn hơn 0% trong phần Nhắm mục tiêu và phân phối hay không (ví dụ: 1% người dùng khớp với tiêu chí).
- Để thay đổi thử nghiệm, hãy nhấp vào Chỉnh sửa.
- Để bắt đầu thử nghiệm, hãy nhấp vào Bắt đầu thử nghiệm. Bạn có thể chạy tối đa 24 thử nghiệm cho mỗi dự án tại một thời điểm.
Theo dõi thử nghiệm
Sau khi thử nghiệm chạy được một thời gian, bạn có thể kiểm tra tiến trình và xem kết quả của những người dùng đã tham gia thử nghiệm cho đến nay.
- Trong phần DevOps và Tương tác của trình đơn điều hướng trong Firebase bảng điều khiển, hãy nhấp vào A/B Testing.
Nhấp vào Đang chạy, rồi nhấp vào hoặc tìm kiếm tiêu đề của thử nghiệm. Trên trang này, bạn có thể xem nhiều số liệu thống kê được quan sát và lập mô hình về thử nghiệm đang chạy, bao gồm:
- % chênh lệch so với đường cơ sở: Một thước đo mức độ cải thiện của một chỉ số cho một biến thể nhất định so với đường cơ sở. Được tính bằng cách so sánh phạm vi giá trị cho biến thể với phạm vi giá trị cho đường cơ sở.
- Xác suất vượt qua đường cơ sở: Xác suất ước tính rằng một biến thể nhất định vượt qua đường cơ sở cho chỉ số đã chọn.
- observed_metric trên mỗi người dùng: Dựa trên kết quả thử nghiệm, đây là phạm vi dự đoán mà giá trị chỉ số sẽ rơi vào theo thời gian.
- Tổng observed_metric: Giá trị tích luỹ được quan sát cho đường cơ sở hoặc biến thể. Giá trị này được dùng để đo lường hiệu suất của từng biến thể thử nghiệm và được dùng để tính toán mức độ cải thiện, Value range, Xác suất vượt qua đường cơ sở và Probability to be the best variant. Tuỳ thuộc vào chỉ số đang được đo lường, cột này có thể được gắn nhãn là "Duration per user" (Thời lượng trên mỗi người dùng), "Revenue per user" (Doanh thu trên mỗi người dùng), "Retention rate" (Tỷ lệ giữ chân) hoặc "Conversion rate" (Tỷ lệ chuyển đổi).
Sau khi thử nghiệm chạy được một thời gian (ít nhất 7 ngày đối với FCM và In-App Messaging hoặc 14 ngày đối với Remote Config), dữ liệu trên trang này sẽ cho biết biến thể nào (nếu có) là "biến thể dẫn đầu". Một số phép đo được kèm theo biểu đồ thanh trình bày dữ liệu ở định dạng trực quan.
Triển khai thử nghiệm cho tất cả người dùng
Sau khi thử nghiệm chạy đủ lâu để bạn có một "biến thể dẫn đầu" hoặc biến thể hiệu quả nhất cho chỉ số mục tiêu, bạn có thể phát hành thử nghiệm cho 100% người dùng. Điều này cho phép bạn chọn một biến thể để xuất bản cho tất cả người dùng trong tương lai. Ngay cả khi thử nghiệm của bạn chưa tạo được biến thể có hiệu quả rõ ràng, bạn vẫn có thể chọn phát hành một biến thể cho tất cả người dùng.
- Trong phần DevOps và Tương tác của trình đơn điều hướng trong Firebase bảng điều khiển, hãy nhấp vào A/B Testing.
- Nhấp vào Đã hoàn tất hoặc Đang chạy, nhấp vào một thử nghiệm mà bạn muốn phát hành cho tất cả người dùng, nhấp vào trình đơn theo bối cảnh () Triển khai biến thể.
Triển khai thử nghiệm cho tất cả người dùng bằng cách thực hiện một trong những thao tác sau:
- Đối với một thử nghiệm sử dụng Trình soạn thông báo, hãy sử dụng hộp thoại Triển khai thông báo để gửi thông báo đến những người dùng mục tiêu còn lại không tham gia thử nghiệm.
- Đối với một thử nghiệm Remote Config, hãy chọn một biến thể để xác định những giá trị tham số Remote Config cần cập nhật. Tiêu chí nhắm mục tiêu được xác định khi tạo thử nghiệm sẽ được thêm làm một điều kiện mới trong mẫu của bạn, để đảm bảo việc triển khai chỉ tác động tới những người dùng mà thử nghiệm nhắm đến. Sau khi nhấp vào Xem trong Cấu hình từ xa để xem các thay đổi, hãy nhấp vào Xuất bản các thay đổi để hoàn tất việc triển khai.
- Đối với một thử nghiệm In-App Messaging, hãy sử dụng hộp thoại để xác định biến thể nào cần được triển khai dưới dạng một chiến dịch In-App Messaging độc lập. Sau khi chọn, bạn sẽ được chuyển hướng đến màn hình soạn tin nhắn FIAM để thực hiện mọi thay đổi (nếu cần) trước khi xuất bản.
Mở rộng thử nghiệm
Nếu thấy rằng một thử nghiệm không thu hút đủ người dùng để A/B Testing tuyên bố biến thể dẫn đầu, bạn có thể tăng mức phân phối thử nghiệm để tiếp cận tỷ lệ phần trăm lớn hơn trong cơ sở người dùng của ứng dụng.
- Trong phần DevOps và Tương tác của trình đơn điều hướng trong Firebase bảng điều khiển, hãy nhấp vào A/B Testing.
- Chọn thử nghiệm đang chạy mà bạn muốn chỉnh sửa.
- Trong phần Tổng quan về thử nghiệm, hãy nhấp vào trình đơn theo bối cảnh (), rồi nhấp vào Chỉnh sửa thử nghiệm đang chạy.
- Hộp thoại Nhắm mục tiêu hiển thị một lựa chọn để tăng tỷ lệ phần trăm người dùng tham gia thử nghiệm đang chạy. Chọn một số lớn hơn tỷ lệ phần trăm hiện tại rồi nhấp vào Xuất bản. Thử nghiệm sẽ được đẩy đến tỷ lệ phần trăm người dùng mà bạn đã chỉ định.
Sao chép hoặc dừng thử nghiệm
- Trong phần DevOps và Tương tác của trình đơn điều hướng trong Firebase bảng điều khiển, hãy nhấp vào A/B Testing.
- Nhấp vào Đã hoàn tất hoặc Đang chạy, giữ con trỏ trên thử nghiệm, nhấp vào trình đơn theo bối cảnh (), rồi nhấp vào Sao chép thử nghiệm hoặc Dừng thử nghiệm.
Nhắm mục tiêu đến người dùng
Bạn có thể nhắm mục tiêu đến những người dùng cần đưa vào thử nghiệm bằng cách sử dụng các tiêu chí nhắm mục tiêu đến người dùng sau đây.
| Tiêu chí nhắm mục tiêu | Toán tử | Giá trị | Lưu ý |
|---|---|---|---|
| Phiên bản | chứa,
không chứa, khớp chính xác, chứa biểu thức chính quy |
Nhập giá trị cho một hoặc nhiều phiên bản ứng dụng mà bạn muốn đưa vào thử nghiệm. |
Khi sử dụng bất kỳ toán tử chứa, không chứa hoặc khớp chính xác nào, bạn có thể cung cấp danh sách giá trị được phân tách bằng dấu phẩy. Khi sử dụng toán tử chứa biểu thức chính quy, bạn có thể tạo biểu thức chính quy ở định dạng RE2. Biểu thức chính quy của bạn có thể khớp với tất cả hoặc một phần của chuỗi phiên bản mục tiêu. Bạn cũng có thể sử dụng neo ^ và $ để khớp với phần đầu, phần cuối hoặc toàn bộ chuỗi mục tiêu. |
| Đối tượng người dùng | bao gồm tất cả,
bao gồm ít nhất một, không bao gồm tất cả, không bao gồm ít nhất một |
Chọn một hoặc nhiều đối tượng Analytics để nhắm mục tiêu đến những người dùng có thể được đưa vào thử nghiệm. | Một số thử nghiệm nhắm mục tiêu đến đối tượng Google Analytics có thể cần vài ngày để thu thập dữ liệu vì chúng phải tuân theo Analytics độ trễ xử lý dữ liệu. Bạn có nhiều khả năng gặp phải tình trạng chậm trễ này với những người dùng mới. Họ thường được đăng ký vào các đối tượng đủ điều kiện trong vòng 24 đến 48 giờ sau khi tạo hoặc đối với các đối tượng được tạo gần đây. |
| Thuộc tính người dùng | Đối với văn bản:
chứa, không chứa, khớp chính xác, chứa biểu thức chính quy Đối với số: <, ≤, =, ≥, > |
Thuộc tính người dùng Analytics được dùng để chọn những người dùng có thể được đưa vào thử nghiệm, với nhiều lựa chọn để chọn giá trị thuộc tính người dùng.
Trên ứng dụng, bạn chỉ có thể đặt giá trị chuỗi cho thuộc tính người dùng. Đối với các điều kiện sử dụng toán tử số, dịch vụ Remote Config sẽ chuyển đổi giá trị của thuộc tính người dùng tương ứng thành số nguyên/số thực. |
Khi sử dụng toán tử chứa biểu thức chính quy, bạn có thể tạo biểu thức chính quy ở định dạng RE2. Biểu thức chính quy của bạn có thể khớp với tất cả hoặc một phần của chuỗi phiên bản mục tiêu. Bạn cũng có thể sử dụng neo ^ và $ để khớp với phần đầu, phần cuối hoặc toàn bộ chuỗi mục tiêu. |
| Quốc gia/Khu vực | Không áp dụng | Một hoặc nhiều quốc gia hoặc khu vực được dùng để chọn những người dùng có thể được đưa vào thử nghiệm. | |
| Ngôn ngữ | Không áp dụng | Một hoặc nhiều ngôn ngữ và ngôn ngữ địa phương được dùng để chọn những người dùng có thể được đưa vào thử nghiệm. | |
| Mở lần đầu |
Nhiều hơn
Ít hơn Trong khoảng |
Nhắm mục tiêu đến người dùng dựa trên lần đầu tiên họ mở ứng dụng của bạn, được chỉ định bằng số ngày. | |
| Lượt tương tác gần đây nhất với ứng dụng |
Nhiều hơn
Ít hơn Trong khoảng |
Nhắm mục tiêu đến người dùng dựa trên lần gần đây nhất họ tương tác với ứng dụng của bạn, được chỉ định bằng số ngày. |
A/B Testing chỉ số
Khi tạo thử nghiệm, bạn chọn một chỉ số chính hoặc chỉ số mục tiêu được dùng để xác định biến thể hiệu quả nhất. Bạn cũng nên theo dõi các chỉ số khác để hiểu rõ hơn về hiệu suất của từng biến thể thử nghiệm và theo dõi các xu hướng quan trọng có thể khác nhau đối với từng biến thể, chẳng hạn như tỷ lệ giữ chân người dùng, độ ổn định của ứng dụng và doanh thu từ giao dịch mua hàng trong ứng dụng. Bạn có thể theo dõi tối đa 5 chỉ số không phải mục tiêu trong thử nghiệm.
Ví dụ: giả sử bạn đã thêm các giao dịch mua hàng mới trong ứng dụng vào ứng dụng của mình và muốn so sánh hiệu quả của hai thông báo "thúc đẩy" khác nhau. Trong trường hợp này, bạn có thể quyết định chọn đặt Doanh thu từ giao dịch mua hàng làm chỉ số mục tiêu vì bạn muốn biến thể hiệu quả nhất đại diện cho thông báo mang lại doanh thu từ giao dịch mua hàng trong ứng dụng cao nhất. Và vì bạn cũng muốn theo dõi biến thể nào mang lại nhiều lượt chuyển đổi trong tương lai hơn và giữ chân người dùng, nên bạn có thể thêm những chỉ số sau vào phần Các chỉ số khác cần theo dõi:- Tổng doanh thu ước tính để xem doanh thu kết hợp từ giao dịch mua hàng trong ứng dụng và doanh thu từ quảng cáo khác nhau như thế nào giữa hai biến thể
- Tỷ lệ giữ chân (1 ngày), Tỷ lệ giữ chân (2-3 ngày), Tỷ lệ giữ chân (4-7 ngày) để theo dõi tỷ lệ giữ chân người dùng hằng ngày/hằng tuần
Các bảng sau đây cung cấp thông tin chi tiết về cách tính toán chỉ số mục tiêu và các chỉ số khác.
Chỉ số Mục tiêu
| Chỉ số | Mô tả |
|---|---|
| Số người dùng không gặp sự cố | Tỷ lệ phần trăm người dùng chưa gặp phải lỗi trong ứng dụng của bạn do Firebase Crashlytics SDK phát hiện trong quá trình thử nghiệm.
Lưu ý: Firebase Crashlytics không được hỗ trợ cho các ứng dụng web. |
| Doanh thu ước tính từ quảng cáo | Thu nhập ước tính từ quảng cáo. |
| Tổng doanh thu ước tính | Giá trị kết hợp cho doanh thu từ giao dịch mua hàng và doanh thu ước tính từ quảng cáo. |
| Doanh thu từ giao dịch mua hàng | Giá trị kết hợp cho tất cả các purchase và
in_app_purchase sự kiện.
|
| Tỷ lệ giữ chân (1 ngày) | Số người dùng quay lại ứng dụng của bạn hằng ngày. |
| Tỷ lệ giữ chân (2-3 ngày) | Số người dùng quay lại ứng dụng của bạn trong vòng 2 đến 3 ngày. |
| Tỷ lệ giữ chân (4-7 ngày) | Số người dùng quay lại ứng dụng của bạn trong vòng 4 đến 7 ngày. |
| Tỷ lệ giữ chân (8-14 ngày) | Số người dùng quay lại ứng dụng của bạn trong vòng 8 đến 14 ngày. |
| Tỷ lệ giữ chân (15+ ngày) | Số người dùng quay lại ứng dụng của bạn sau 15 ngày trở lên kể từ lần gần đây nhất họ sử dụng ứng dụng. |
| first_open | Một sự kiện Analytics kích hoạt khi người dùng mở ứng dụng lần đầu tiên sau khi cài đặt hoặc cài đặt lại ứng dụng đó. Được dùng làm một phần của phễu chuyển đổi. |
Chỉ số khác
| Chỉ số | Mô tả |
|---|---|
| notification_dismiss | Một sự kiện Analytics kích hoạt khi một thông báo do Trình soạn thông báo gửi bị đóng (chỉ dành cho Android). |
| notification_receive | Một sự kiện Analytics kích hoạt khi một thông báo do Trình soạn thông báo gửi được nhận trong lúc ứng dụng đang chạy trong nền (chỉ dành cho Android). |
| os_update | Một sự kiện Analytics theo dõi thời điểm hệ điều hành của thiết bị được
cập nhật lên phiên bản mới.Để tìm hiểu thêm, hãy xem bài viết Sự kiện được
thu thập tự động.
Chỉ số này không được hỗ trợ cho các ứng dụng web. |
| screen_view | Một sự kiện Analytics theo dõi các màn hình được xem trong ứng dụng của bạn. Để tìm hiểu thêm, hãy xem bài viết Theo dõi lượt xem màn hình. |
| session_start | Một sự kiện Analytics đếm số phiên người dùng trong ứng dụng của bạn. Để tìm hiểu thêm, hãy xem bài viết Sự kiện được thu thập tự động. |