Catch up on everthing we announced at this year's Firebase Summit. Learn more

Membuat Eksperimen In-App Messaging dengan Pengujian A/B

Ketika mencoba berinteraksi dengan pengguna atau memulai kampanye pemasaran baru, pastikan prosesnya berjalan dengan baik. Pengujian A/B dapat membantu Anda menentukan kata-kata dan penyajian yang optimal dengan menguji beberapa varian pesan pada segmen tertentu basis pengguna Anda. Apa pun sasaran Anda, baik untuk mengoptimalkan retensi maupun konversi atas sebuah penawaran, pengujian A/B dapat menjalankan analisis statistik guna menentukan apakah performa suatu varian pesan mengalahkan grup kontrol untuk tujuan yang dipilih.

Untuk melakukan pengujian A/B pada varian fitur dengan grup kontrol, lakukan hal berikut:

  1. Buat eksperimen.
  2. Lakukan validasi eksperimen di perangkat uji.
  3. Kelola eksperimen.

Membuat eksperimen

Eksperimen yang menggunakan Firebase In-App Messaging memungkinkan Anda mengevaluasi beberapa varian pesan tunggal dalam aplikasi.

  1. Login ke Firebase, perbarui Setelan berbagi data dan pastikan fitur berbagi data sudah aktif. Tanpa berbagi data, eksperimen Anda tidak akan memiliki akses ke data analisis.
  2. Di bagian Engage pada menu navigasi Firebase console, klik A/B Testing.
  3. Klik Create experiment, lalu pilih In-App Messaging saat diminta memasukkan layanan yang ingin digunakan dalam eksperimen.
  4. Atau, pada menu navigasi Firebase console, luaskan Engage, lalu klik In-App Messaging. Lalu klik New experiment.
  5. Masukkan Name dan Description opsional untuk eksperimen Anda, lalu klik Next.
  6. Isi kolom Targeting, yang diawali dengan memilih aplikasi yang menggunakan eksperimen Anda. Anda juga dapat menargetkan subkumpulan pengguna untuk disertakan dalam eksperimen dengan memilih opsi yang menyertakan hal berikut:

    • Version: Satu atau beberapa versi aplikasi Anda
    • User audience: Audience Analytics yang digunakan untuk menargetkan pengguna yang mungkin disertakan dalam eksperimen
    • User property: Satu atau beberapa properti pengguna Analytics untuk memilih pengguna yang mungkin disertakan dalam eksperimen
    • Prediction: Grup pengguna yang diprediksi oleh machine learning akan memiliki perilaku tertentu
    • Country/Region: Satu atau beberapa negara atau wilayah untuk memilih pengguna yang mungkin disertakan dalam eksperimen
    • Device language: Satu atau beberapa bahasa dan lokalitas yang digunakan untuk memilih pengguna yang mungkin disertakan dalam eksperimen
    • First open: Menargetkan pengguna berdasarkan waktu pertama kali mereka membuka aplikasi Anda
    • Last app engagement: Menargetkan pengguna berdasarkan waktu terakhir kali mereka berinteraksi dengan aplikasi Anda
  7. Tetapkan Persentase pengguna target: Pilih persentase basis pengguna aplikasi Anda, yang cocok dengan kriteria yang ditetapkan dalam Target users. Bagi kriteria ini secara merata antara grup kontrol dan satu atau beberapa varian dalam eksperimen. Rentang persentase ini bisa antara 0,01% dan 100%. Persentase ditetapkan ulang ke pengguna secara acak untuk setiap eksperimen, termasuk eksperimen duplikat.

  8. Di bagian Variants, konfigurasikan pesan dalam aplikasi dasar pengukuran yang akan dikirim ke grup kontrol menggunakan antarmuka desain pesan yang Anda gunakan untuk kampanye pesan dalam aplikasi biasa.

  9. Untuk menambahkan varian ke eksperimen, klik Add variant. Secara default, eksperimen memiliki satu grup kontrol dan satu varian.

  10. (Opsional) Masukkan nama untuk setiap varian dalam eksperimen Anda guna mengganti nama Variant A, Variant B, dll.

  11. (opsional) Di bagian atas Variants, klik tombol Compare variants untuk membandingkan satu varian pesan lainnya secara berdampingan dengan pesan dasar pengukuran.

  12. Tentukan metrik sasaran untuk eksperimen Anda yang akan digunakan saat mengevaluasi varian eksperimen, beserta metrik tambahan yang diinginkan dari daftar drop-down. Metrik ini mencakup tujuan bawaan (interaksi, pembelian, pendapatan, retensi, dll.), Peristiwa konversi Analytics, dan peristiwa Analytics lainnya.

  13. Konfigurasi penjadwalan untuk eksperimen:

    • Tetapkan tanggal Start dan End untuk eksperimen.
    • Tetapkan cara pesan dalam aplikasi dipicu di semua varian.
  14. Klik Review untuk menyimpan eksperimen Anda.

Anda dapat melakukan hingga 300 eksperimen per project, yang dapat terdiri dari maksimum 24 eksperimen yang sedang berjalan, dan eksperimen lainnya sebagai draf atau selesai.

Memvalidasi eksperimen di perangkat uji

Untuk setiap penginstalan Firebase, Anda dapat mengambil token autentikasi penginstalan yang terkait dengannya. Anda dapat menggunakan token ini untuk menguji varian eksperimen tertentu di perangkat uji yang menginstal aplikasi Anda. Untuk memvalidasi eksperimen di perangkat uji, lakukan langkah berikut:

  1. Dapatkan token autentikasi penginstalan sebagai berikut:

    Swift

    Installations.installations().authTokenForcingRefresh(true, completion: { (result, error) in
      if let error = error {
        print("Error fetching token: \(error)")
        return
      }
      guard let result = result else { return }
      print("Installation auth token: \(result.authToken)")
    })
    

    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+KTX

    FirebaseInstallations.getInstance().getToken(/* forceRefresh */ true)
        .addOnCompleteListener { task ->
            if (task.isSuccessful) {
                Log.d("Installations", "Installation auth token: " + task.result?.token)
            } else {
                Log.e("Installations", "Unable to get Installation auth token")
            }
        }
  2. Di menu navigasi Firebase console, klik A/B Testing.
  3. Klik Draft (dan/atau Running untuk eksperimen Remote Config), arahkan kursor ke eksperimen Anda, klik menu konteks (), lalu klik Manage test devices.
  4. Masukkan token autentikasi penginstalan Firebase untuk perangkat uji dan pilih varian eksperimen untuk dikirim ke perangkat uji tersebut.
  5. Jalankan aplikasi dan pastikan varian yang dipilih diterima di perangkat uji.

Untuk mempelajari penginstalan Firebase lebih lanjut, baca Mengelola penginstalan Firebase.

Mengelola eksperimen

Baik menggunakan Remote Config, Notifications Composer, maupun Firebase In-App Messaging untuk membuat eksperimen, Anda dapat memvalidasi dan memulai eksperimen, memantau eksperimen saat dijalankan, dan menambah jumlah pengguna yang disertakan dalam eksperimen yang sedang berjalan.

Saat eksperimen selesai, Anda dapat mencatat setelan yang digunakan oleh varian dominan, lalu meluncurkan setelan tersebut ke semua pengguna. Atau, Anda dapat menjalankan eksperimen lain.

Memulai eksperimen

  1. Di bagian Engage pada menu navigasi Firebase console, klik A/B Testing.
  2. Klik Draft, lalu klik judul eksperimen.
  3. Untuk memvalidasi bahwa aplikasi Anda memiliki pengguna yang akan disertakan dalam eksperimen, lihat detail draf dan cari angka yang lebih besar dari 0% di bagian Targeting and distribution (misalnya, 1% of users matching the criteria).
  4. Untuk mengubah eksperimen, klik Edit.
  5. Untuk memulai eksperimen, klik Start Experiment. Anda dapat menjalankan hingga 24 eksperimen per project sekaligus.

Memantau eksperimen

Setelah eksperimen berjalan beberapa lama, Anda dapat memeriksa kemajuannya dan melihat seperti apa hasilnya bagi pengguna yang mengikuti eksperimen Anda sejauh ini.

  1. Di bagian Engage pada menu navigasi Firebase console, klik A/B Testing.
  2. Klik Running, lalu klik judul eksperimen. Di halaman ini, Anda dapat melihat berbagai statistik yang diamati dan sesuai model tentang eksperimen yang sedang berjalan, termasuk yang berikut:

    • % difference from baseline: Ukuran peningkatan metrik untuk varian tertentu dibandingkan dengan dasar pengukuran (atau grup kontrol). Dihitung dengan membandingkan rentang nilai untuk varian dengan rentang nilai untuk dasar pengukuran.
    • Probability to beat baseline: Perkiraan kemungkinan bahwa varian tertentu akan mengalahkan dasar pengukuran untuk metrik yang dipilih.
    • observed_metric per pengguna: Berdasarkan hasil eksperimen, ini adalah perkiraan rentang nilai metrik yang akan dicapai seiring waktu.
    • Total observed_metric: Nilai kumulatif yang diamati untuk varian atau grup kontrol. Nilai ini digunakan untuk mengukur performa setiap varian eksperimen dan untuk menghitung Improvement, Value range, Probability to beat baseline, dan Probability to be the best variant. Bergantung pada metrik yang diukur, kolom ini dapat diberi label "Duration per user," "Revenue per user," "Retention rate," atau "Conversion rate."
  3. Setelah eksperimen berjalan beberapa saat (setidaknya 7 hari untuk FCM dan In-App Messaging, atau 14 hari untuk Remote Config), data di halaman ini menunjukkan varian "posisi teratas", jika ada. Beberapa hasil pengukuran disertai dengan diagram batang yang menyajikan data dalam format visual.

Meluncurkan eksperimen ke semua pengguna

Setelah eksperimen berjalan cukup lama sehingga muncul varian "posisi teratas", atau varian dominan, untuk metrik sasaran, Anda dapat meluncurkan eksperimen ke 100% pengguna. Dengan demikian, Anda dapat memilih varian yang akan dipublikasikan ke semua pengguna ke depannya. Meskipun jika eksperimen Anda belum menghasilkan varian dominan, Anda tetap dapat memilih untuk meluncurkan satu varian ke semua pengguna.

  1. Di bagian Engage pada menu navigasi Firebase console, klik A/B Testing.
  2. Klik Completed atau Running, klik eksperimen yang ingin diluncurkan ke semua pengguna, klik menu konteks (), lalu klik Roll out variant.
  3. Luncurkan eksperimen Anda ke semua pengguna dengan melakukan salah satu hal berikut:

    • Untuk eksperimen yang menggunakan Notifications Composer, gunakan dialog Roll out message untuk mengirim pesan ke pengguna target lain yang bukan merupakan bagian eksperimen.
    • Untuk eksperimen Remote Config, pilih varian untuk menentukan parameter value Remote Config yang akan diubah. Kriteria penargetan yang ditentukan saat membuat eksperimen akan ditambahkan sebagai kondisi baru dalam template Anda, untuk memastikan peluncuran hanya memengaruhi pengguna yang ditargetkan oleh eksperimen tersebut. Setelah mengklik Review in Remote Config untuk meninjau perubahan, klik Publish changes untuk menyelesaikan peluncuran.
    • Untuk eksperimen In-App Messaging, gunakan dialog untuk menentukan varian mana yang perlu diluncurkan sebagai kampanye In-App Messaging mandiri. Setelah varian dipilih, Anda akan dialihkan ke layar penulisan FIAM untuk melakukan perubahan apa pun (jika diperlukan) sebelum memublikasikan.

Memperluas cakupan eksperimen

Jika eksperimen Anda tidak mendapatkan cukup pengguna agar Pengujian A/B bisa mendeklarasikan posisi teratas, Anda dapat memperluas distribusi eksperimen agar menjangkau persentase basis pengguna aplikasi yang lebih besar.

  1. Di bagian Engage pada menu navigasi Firebase console, klik A/B Testing.
  2. Pilih eksperimen yang sedang berjalan yang ingin Anda edit.
  3. Di bagian Experiment overview, klik menu konteks (), lalu klik Edit running experiment.
  4. Dialog Targeting menampilkan opsi untuk meningkatkan persentase pengguna yang saat ini disertakan dalam eksperimen yang sedang berjalan. Pilih angka yang lebih besar daripada persentase saat ini, lalu klik Publish. Eksperimen akan dikirim ke jumlah pengguna yang sesuai dengan persentase yang Anda tentukan.

Menduplikasi atau menghentikan eksperimen

  1. Di bagian Engage pada menu navigasi Firebase console, klik A/B Testing.
  2. Klik Completed atau Running, arahkan kursor ke eksperimen, klik menu konteks (), lalu klik Duplicate experiment atau Stop experiment.

Penargetan pengguna

Anda dapat menargetkan pengguna untuk disertakan dalam eksperimen menggunakan kriteria penargetan pengguna berikut.

Kriteria penargetan Operator    Nilai Catatan
Version berisi,
tidak berisi,
sama persis,
berisi ekspresi reguler
Masukkan nilai untuk satu atau beberapa versi aplikasi yang ingin Anda sertakan dalam eksperimen.

Jika menggunakan operator berisi, tidak berisi, atau sama persis, Anda dapat memasukkan beberapa nilai yang dipisahkan dengan koma.

Jika menggunakan operator berisi ekspresi reguler, Anda dapat membuat ekspresi reguler dalam format RE2. Ekspresi reguler dapat cocok dengan semua atau sebagian string versi target. Anda juga dapat menggunakan anchor ^ dan $ untuk mencocokkan bagian awal, akhir, atau keseluruhan string target.

User audience(s) mencakup semua dari,
mencakup setidaknya salah satu dari,
tidak mencakup semua dari,
tidak mencakup setidaknya salah satu dari
Pilih satu atau beberapa audience Analytics untuk menargetkan pengguna yang mungkin disertakan dalam eksperimen Anda.  
User property Untuk teks:
berisi,
tidak berisi,
sama persis,
berisi ekspresi reguler

Untuk angka:
<, ≤, =, ≥, >
Properti pengguna Analytics digunakan untuk memilih pengguna yang mungkin disertakan dalam eksperimen, dengan serangkaian opsi untuk memilih nilai properti pengguna.

Di klien yang digunakan, Anda dapat menetapkan hanya nilai string untuk properti pengguna. Untuk kondisi yang menggunakan operator numerik, layanan Remote Config akan mengonversi nilai properti pengguna yang sesuai menjadi bilangan bulat/float.
Jika menggunakan operator berisi ekspresi reguler, Anda dapat membuat ekspresi reguler dalam format RE2. Ekspresi reguler dapat cocok dengan semua atau sebagian string versi target. Anda juga dapat menggunakan anchor ^ dan $ untuk mencocokkan bagian awal, akhir, atau keseluruhan string target.
Prediction T/A Menargetkan grup pengguna yang ditetapkan oleh Firebase Predictions. Misalnya, pengguna yang mungkin akan berhenti menggunakan aplikasi Anda, atau pengguna yang mungkin akan melakukan pembelian dalam aplikasi. Pilih salah satu nilai yang ditentukan oleh alat Firebase Predictions. Jika tidak ada opsi yang tersedia, Anda mungkin perlu memilih ikut serta pada Firebase Predictions dengan membuka bagian Predictions pada Firebase console.  
Device country T/A Satu atau beberapa negara atau wilayah yang digunakan untuk memilih pengguna yang mungkin disertakan dalam eksperimen.  
Device language T/A Satu atau beberapa bahasa dan lokalitas yang digunakan untuk memilih pengguna yang mungkin disertakan dalam eksperimen. Kriteria penargetan ini hanya tersedia untuk Remote Config.
First open lebih dari
kurang dari
antara
Menargetkan pengguna berdasarkan waktu pertama kali mereka membuka aplikasi Anda, dalam hari. Kriteria penargetan ini hanya tersedia untuk Firebase In-App Messaging.
Last app engagement lebih dari
kurang dari
antara
Menargetkan pengguna berdasarkan waktu terakhir kali mereka berinteraksi dengan aplikasi Anda, dalam hari. Kriteria penargetan ini hanya tersedia untuk Firebase In-App Messaging.

Metrik Pengujian A/B

Saat membuat eksperimen, Anda memilih metrik yang digunakan untuk membandingkan varian eksperimen. Anda juga dapat memilih metrik pelacakan lain untuk membantu Anda lebih memahami setiap varian eksperimen dan mendeteksi efek samping yang signifikan (seperti aplikasi mengalami error). Tabel berikut memberikan detail tentang cara perhitungan metrik sasaran dan metrik lainnya.

Metrik sasaran

Metrik Deskripsi
Retention (1 day) Jumlah pengguna yang kembali ke aplikasi Anda setiap hari.
Retention (2-3 days) Jumlah pengguna yang kembali ke aplikasi Anda dalam 2-3 hari.
Retention (4-7 days) Jumlah pengguna yang kembali ke aplikasi Anda dalam 4-7 hari.
Retention (8-14 days) Jumlah pengguna yang kembali ke aplikasi Anda dalam 8-14 hari.
Retention (15+ days) Jumlah pengguna yang kembali ke aplikasi Anda dalam 15 hari atau lebih sejak terakhir menggunakannya.
Notification open Melacak apakah pengguna membuka notifikasi yang dikirim Notifications Composer.
Purchase revenue Nilai gabungan untuk semua peristiwa ecommerce_purchase dan in_app_purchase.
Estimated AdMob revenue Estimasi penghasilan dari AdMob.
Estimated total revenue Nilai gabungan untuk pembelian dan estimasi pendapatan AdMob.
first_open Peristiwa Analytics yang terpicu saat pengguna pertama kali membuka aplikasi setelah menginstal atau menginstal ulang. Digunakan sebagai bagian dari funnel konversi.
notification_open Peristiwa Analytics yang terpicu saat pengguna membuka notifikasi yang dikirim Notifications Composer. Digunakan sebagai bagian dari funnel konversi.

Metrik lainnya

Metrik Deskripsi
Crash-free users Persentase pengguna yang tidak mengalami error di aplikasi Anda yang terdeteksi Firebase Crashlytics SDK selama eksperimen berlangsung.
notification_dismiss Peristiwa Analytics yang terpicu saat notifikasi yang dikirim Notifications Composer ditutup (khusus Android).
notification_receive Peristiwa Analytics yang terpicu saat notifikasi yang dikirim Notifications Composer diterima saat aplikasi berada di latar belakang (khusus Android).
os_update Peristiwa Analytics yang melacak kapan sistem operasi perangkat diupdate ke versi baru. Untuk mempelajari lebih lanjut, lihat Peristiwa yang dikumpulkan secara otomatis.
screen_view Peristiwa Analytics yang melacak layar yang dilihat dalam aplikasi Anda. Untuk mempelajari lebih lanjut, lihat Melacak Tampilan Layar.
session_start Peristiwa Analytics yang menghitung sesi pengguna di aplikasi Anda. Untuk mempelajari lebih lanjut, lihat Peristiwa yang dikumpulkan secara otomatis.
user_engagement Peristiwa Analytics yang terpicu secara berkala saat aplikasi Anda ada di latar depan. Untuk mempelajari lebih lanjut, lihat Peristiwa yang dikumpulkan secara otomatis.