Buka konsol

Membuat Eksperimen Messaging dengan Pengujian A/B

Ketika mencoba berinteraksi dengan pengguna atau memulai kampanye pemasaran baru, Anda perlu memastikan bahwa Anda melakukannya dengan benar. Pengujian A/B dapat membantu Anda menentukan kata-kata dan penyajian yang optimal dengan menguji beberapa variasi pesan pada segmen tertentu dari basis pengguna Anda. Baik untuk mencapai retensi yang lebih baik maupun konversi atas sebuah penawaran, pengujian A/B dapat menjalankan analisis statistik guna menentukan apakah sebuah variasi pesan memiliki performa yang lebih baik dibandingkan grup kontrol untuk tujuan yang Anda pilih.

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

  1. Buat eksperimen.
  2. Validasi eksperimen di perangkat uji.
  3. Kelola eksperimen.

Membuat eksperimen

Eksperimen yang menggunakan Notification composer dapat digunakan untuk mengevaluasi beberapa variasi pada sebuah pesan notifikasi.

  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 analytics.
  2. Di menu navigasi Firebase console, luaskan Grow, lalu klik Pengujian A/B.
  3. Klik Buat eksperimen, lalu pilih Notifications saat diminta untuk layanan yang ingin Anda gunakan untuk bereksperimen.
  4. Masukkan Nama dan Deskripsi opsional untuk eksperimen Anda dan klik Berikutnya.
  5. Isi kolom Penargetan, pertama-tama dengan memilih aplikasi yang menggunakan eksperimen Anda. Anda juga dapat menargetkan subkumpulan pengguna untuk disertakan dalam eksperimen dengan memilih satu atau beberapa opsi berikut:

    • Versi: Satu atau beberapa versi aplikasi Anda
    • Audience pengguna: Audience Analytics yang digunakan untuk menargetkan pengguna yang mungkin disertakan dalam eksperimen
    • Properti pengguna: Satu atau beberapa properti pengguna Analytics untuk memilih pengguna yang mungkin disertakan dalam eksperimen
    • Prediksi: Grup pengguna yang diprediksi oleh machine learning untuk melakukan perilaku tertentu
    • Negara/Wilayah: Satu atau beberapa negara atau wilayah untuk memilih pengguna yang mungkin disertakan dalam eksperimen
    • Bahasa perangkat: Satu atau beberapa bahasa dan lokal yang digunakan untuk memilih pengguna yang mungkin disertakan dalam eksperimen
  6. Setel Persentase pengguna target: Masukkan persentase basis pengguna aplikasi Anda yang cocok dengan kriteria yang ditetapkan dalam Pengguna target, yang ingin Anda bagi secara merata antara grup kontrol dan satu atau beberapa variasi dalam eksperimen. Rentang persentase ini bisa antara 0,01% dan 100%. Persentase ditetapkan ulang ke pengguna secara acak untuk setiap eksperimen, termasuk eksperimen duplikat.

  7. Di bagian Variasi, ketik pesan yang akan dikirim ke grup kontrol di kolom Masukkan teks pesan. Untuk tidak mengirim pesan ke grup kontrol, kosongkan kolom ini.

  8. (Opsional) Untuk menambahkan lebih dari satu variasi pada eksperimen Anda, klik Tambahkan Variasi. Secara default, eksperimen memiliki satu grup kontrol dan satu variasi.

  9. (Opsional) Masukkan nama untuk setiap variasi dalam eksperimen Anda guna mengganti nama Variasi A, Variasi B, dll.

  10. Tentukan metrik tujuan untuk eksperimen Anda yang akan digunakan saat mengevaluasi variasi eksperimen, bersama dengan metrik tambahan yang diinginkan dari daftar drop-down. Metrik ini mencakup tujuan utama (interaksi, pembelian, pendapatan, retensi, dll.), peristiwa konversi Analytics, dan peristiwa Analytics lainnya.

  11. Pilih opsi untuk pesan Anda:

    • Tanggal pengiriman: Pilih Kirim Sekarang untuk segera meluncurkan eksperimen atau Kirim Nanti untuk menentukan waktu peluncuran eksperimen di masa mendatang.
    • Opsi lanjutan: Guna memilih opsi lanjutan untuk semua notifikasi yang disertakan dalam eksperimen Anda, perluas Opsi lanjutan, lalu ubah salah satu opsi pesan yang tertera.
  12. Klik Tinjau untuk menyimpan eksperimen Anda.

Memvalidasi eksperimen pada perangkat uji

Setiap instalasi aplikasi Firebase memiliki token ID instance (atau token pendaftaran) yang terkait dengannya. Anda dapat menggunakan token ini untuk menguji variasi eksperimen tertentu pada perangkat uji tempat aplikasi Anda terinstal. Untuk memvalidasi eksperimen di perangkat uji, lakukan langkah berikut:

  1. Dapatkan token ID instance sebagai berikut:

    Swift

    InstanceID.instanceID().instanceID { (result, error) in
      if let error = error {
        print("Error fetching remote instance ID: \(error)")
      } else if let result = result {
        print("Remote instance ID token: \(result.token)")
        self.instanceIDTokenMessage.text  = "Remote InstanceID token: \(result.token)"
      }
    }

    Objective-C

    [[FIRInstanceID instanceID] instanceIDWithHandler:^(FIRInstanceIDResult * _Nullable result,
                                                        NSError * _Nullable error) {
      if (error != nil) {
        NSLog(@"Error fetching remote instance ID: %@", error);
      } else {
        NSLog(@"Remote instance ID token: %@", result.token);
        NSString* message =
          [NSString stringWithFormat:@"Remote InstanceID token: %@", result.token];
        self.instanceIDTokenMessage.text = message;
      }
    }];

    Java
    Android

    FirebaseInstanceId.getInstance().getInstanceId()
            .addOnCompleteListener(new OnCompleteListener<InstanceIdResult>() {
                @Override
                public void onComplete(@NonNull Task<InstanceIdResult> task) {
                    Log.d("IID_TOKEN", task.getResult().getToken());
                }
            });

    Kotlin
    Android

    FirebaseInstanceId.getInstance().instanceId
            .addOnSuccessListener { result ->
                Log.d("IID_TOKEN", result.token)
            }

    C++

    firebase::InitResult init_result;
    auto* instance_id_object = firebase::instance_id::InstanceId::GetInstanceId(
        firebase::App::GetInstance(), &init_result);
    instance_id_object->GetToken().OnCompletion(
        [](const firebase::Future<std::string>& future) {
          if (future.status() == kFutureStatusComplete &&
              future.error() == firebase::instance_id::kErrorNone) {
            printf("Instance ID Token %s\n", future.result()->c_str());
          }
        });
    

    Unity

    Firebase.InstanceId.FirebaseInstanceId.DefaultInstance.GetTokenAsync().ContinueWith(
      task => {
        if (!(task.IsCanceled || task.IsFaulted) && task.IsCompleted) {
          UnityEngine.Debug.Log(System.String.Format("Instance ID Token {0}", task.Result));
        }
      });
    
  2. Di menu navigasi Firebase console, klik Remote Config atau Notifications, lalu klik Pengujian A/B.
  3. Klik Draf, lalu klik judul eksperimen.
  4. Klik Kelola perangkat uji, lalu masukkan token ID instance untuk perangkat uji dan pilih variasi eksperimen untuk dikirim ke perangkat uji tersebut.
  5. Jalankan aplikasi dan pastikan variasi yang dipilih diterima di perangkat uji.

Untuk mempelajari token ID instance lebih lanjut, baca bagian FIRInstanceID (iOS) atau FirebaseInstanceId (Android).

Mengelola eksperimen

Baik membuat eksperimen dengan Remote Config maupun Notifications Composer, Anda dapat memvalidasi dan memulai eksperimen, memantau eksperimen saat sedang berjalan, dan menambah jumlah pengguna yang disertakan dalam eksperimen yang sedang berjalan.

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

Memulai eksperimen

  1. Di menu navigasi Firebase console, luaskan Grow, lalu klik Pengujian A/B.
  2. Klik Draf, lalu klik judul eksperimen.
  3. Untuk memvalidasi bahwa aplikasi Anda memiliki pengguna yang akan disertakan ke dalam eksperimen Anda, periksa jumlah yang lebih besar dari 0% di bagian Penargetan dan distribusi (misalnya, 1% pengguna yang cocok dengan kriteria).
  4. Untuk mengubah eksperimen, klik Edit.
  5. Untuk memulai eksperimen, klik Mulai Eksperimen. Anda dapat menjalankan hingga 6 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 menu navigasi Firebase console, klik Grow, lalu klik Pengujian A/B.
  2. Klik Berjalan, lalu klik judul eksperimen. Di halaman ini, Anda dapat melihat berbagai statistik yang terkait dengan eksperimen Anda yang sedang berjalan, termasuk metrik sasaran dan metrik lainnnya. Untuk setiap metrik, tersedia informasi berikut:

    • Penyempurnaan: Ukuran peningkatan metrik untuk variasi tertentu dibandingkan dengan suatu tolok ukur (atau grup kontrol). Dihitung dengan membandingkan rentang nilai untuk variasi dengan rentang nilai untuk tolok ukur.
    • Kemungkinan memiliki performa lebih baik dari tolok ukur: Perkiraan kemungkinan bahwa variasi tertentu akan lebih baik daripada tolok ukur untuk metrik yang dipilih.
    • Kemungkinan untuk menjadi variasi terbaik: Perkiraan kemungkinan bahwa variasi tertentu akan lebih baik daripada variasi lain untuk metrik yang dipilih.
    • Nilai per pengguna: Didasarkan pada hasil eksperimen, ini adalah rentang perkiraan di mana nilai metrik akan berada sepanjang waktu.
    • Nilai total: Nilai kumulatif yang diamati untuk grup kontrol atau variasi. Nilai ini digunakan untuk mengukur performa setiap variasi eksperimen dan untuk menghitung Penyempurnaan, Rentang nilai, Kemungkinan memiliki performa lebih baik dari tolok ukur, dan Kemungkinan untuk menjadi variasi terbaik. Bergantung pada metrik yang diukur, kolom ini mungkin diberi label "Durasi per pengguna", "Rasio retensi", atau "Rasio konversi".
  3. Untuk menambah jumlah pengguna yang disertakan dalam eksperimen, klik Tingkatkan Distribusi, lalu pilih peningkatan persentase untuk menambahkan lebih banyak pengguna valid ke eksperimen tersebut.

  4. Setelah eksperimen Anda berjalan untuk sementara waktu (setidaknya 24 jam), data pada halaman ini menunjukkan varian mana, jika ada, yang merupakan variasi "unggulan". Beberapa pengukuran disertai dengan diagram batang yang menyajikan data dalam format visual.

Meluncurkan eksperimen ke semua pengguna

Setelah eksperimen berjalan cukup lama sehingga muncul variasi "unggulan", atau variasi dominan, untuk metrik sasaran, Anda dapat meluncurkan eksperimen ke 100% pengguna. Dengan demikian, Anda dapat memilih nilai untuk dipublikasikan di Remote Config bagi semua pengguna ke depannya. Meskipun eksperimen Anda belum menghasilkan variasi dominan, Anda tetap dapat memilih untuk meluncurkan satu variasi ke semua pengguna.

  1. Di menu navigasi Firebase console, klik Grow, lalu klik Pengujian A/B.
  2. Klik Selesai atau Berjalan, klik eksperimen yang ingin diluncurkan ke semua pengguna, klik menu konteks (more_vert), lalu klik Luncurkan variasi.
  3. Luncurkan eksperimen Anda ke semua pengguna dengan melakukan salah satu hal berikut:

    • Untuk eksperimen yang menggunakan Notifications Composer, gunakan dialog Luncurkan pesan untuk mengirim pesan ke pengguna target lain yang bukan merupakan bagian eksperimen.
    • Untuk eksperimen Remote Config, gunakan dialog tersebut untuk menentukan nilai parameter Remote Config yang akan diubah untuk semua pengguna.

Memperluas eksperimen

Jika eksperimen Anda tidak melibatkan cukup pengguna untuk Pengujian A/B agar bisa mengumumkan variasi dominan, Anda dapat meningkatkan distribusi eksperimen untuk menjangkau persentase basis pengguna aplikasi yang lebih besar.

  1. Di menu navigasi Firebase console, klik Grow, lalu klik Pengujian A/B.
  2. Klik Berjalan, arahkan kursor ke eksperimen, klik menu konteks (more_vert), lalu klik Tingkatkan Distribusi.
  3. Konsol akan menampilkan dialog dengan opsi untuk meningkatkan persentase pengguna, yang saat ini disertakan dalam eksperimen yang sedang berjalan. Masukkan angka yang lebih besar daripada persentase saat ini, lalu klik Kirim. Eksperimen akan dikirim ke pengguna sesuai persentase yang Anda tentukan.

Menggandakan atau menghentikan eksperimen

  1. Di menu navigasi Firebase console, klik Grow, lalu klik Pengujian A/B.
  2. Klik Selesai atau Berjalan, arahkan kursor ke eksperimen, klik menu konteks (more_vert), lalu klik Gandakan atau Hentikan.

Penargetan pengguna

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

Kriteria penargetan Operator    Nilai Catatan
Versi contains,
does not contain,
matches exactly,
contains regex
Masukkan nilai untuk satu atau beberapa versi aplikasi yang ingin Anda sertakan dalam eksperimen.

Jika menggunakan salah satu dari operator contains, does not contain, atau matches exactly, Anda dapat memasukkan beberapa nilai yang dipisahkan dengan koma.

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

Audience pengguna includes all of,
includes at least one of,
does not include all of,
does not include at least one of
Pilih satu atau beberapa audience Analytics untuk pengguna target yang mungkin disertakan dalam eksperimen Anda.  
Properti pengguna Untuk teks:
contains,
does not contain,
exactly matches,
contains regex

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 condition yang menggunakan operator numerik, layanan Remote Config akan mengonversi nilai properti pengguna yang terkait menjadi bilangan bulat/float.
Jika menggunakan operator berisi regex, Anda dapat membuat ekspresi reguler dalam format RE2. Ekspresi reguler Anda dapat cocok dengan semua atau sebagian dari string versi target. Anda juga dapat menggunakan tanda ^ dan $ untuk mencocokkan bagian awal, akhir, atau keseluruhan string target.
Prediksi T/A Targetkan 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 fitur Firebase Predictions. Jika tidak ada opsi yang tersedia, Anda mungkin perlu menggunakan Firebase Predictions dengan membuka bagian Predictions pada Firebase console.  
Negara perangkat T/A Satu atau beberapa negara atau wilayah yang digunakan untuk memilih pengguna yang mungkin disertakan dalam eksperimen.  
Bahasa perangkat T/A Satu atau beberapa bahasa dan lokal yang digunakan untuk memilih pengguna yang mungkin disertakan dalam eksperimen. Kriteria penargetan ini hanya tersedia untuk Remote Config.

Metrik Pengujian A/B

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

Metrik sasaran

Metrik Deskripsi
Interaksi pengguna tiap hari Jumlah pengguna yang menjalankan aplikasi Anda di latar depan dengan cukup lama setiap harinya untuk memicu peristiwa Analytics user_engagement.
Retensi (1 hari) Jumlah pengguna yang kembali ke aplikasi Anda setiap harinya.
Retensi (2-3 hari) Jumlah pengguna yang kembali ke aplikasi Anda dalam 2-3 hari.
Retensi (4-7 hari) Jumlah pengguna yang kembali ke aplikasi Anda dalam 4-7 hari.
Retensi (8-14 hari) Jumlah pengguna yang kembali ke aplikasi Anda dalam 8-14 hari.
Retensi (15+ hari) Jumlah pengguna yang kembali ke aplikasi Anda dalam 15 hari atau lebih sejak terakhir menggunakannya.
Notifikasi terbuka Melacak apakah pengguna membuka notifikasi yang dikirim Notifications Composer.
Pendapatan pembelian Nilai gabungan untuk semua peristiwa ecommerce_purchase dan in_app_purchase.
Estimasi pendapatan AdMob Estimasi pendapatan dari AdMob.
Estimasi pendapatan total 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
Pengguna tanpa kejadian error Persentase pengguna yang tidak mengalami error di aplikasi Anda yang terdeteksi Firebase Crash Reporting SDK selama eksperimen. Untuk mempelajari lebih lanjut, lihat Metrik Pengguna Tanpa Kejadian Error.
notification_dismiss Peristiwa Analytics yang terpicu saat notifikasi yang dikirim Notifications Composer ditolak (khusus Android).
notification_receive Peristiwa Analytics yang terpicu saat notifikasi yang dikirim Notifications Composer diterima saat aplikasi berada di background (khusus Android).
os_update Peristiwa Analytics yang dilacak saat 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 ditampilkan 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.

Ekspor data BigQuery

Anda dapat mengakses semua data analisis yang terkait dengan pengujian A/B Anda di BigQuery. Dengan BigQuery, Anda dapat menganalisis data menggunakan BigQuery SQL, mengekspornya ke penyedia cloud lain, atau menggunakan data tersebut untuk model ML kustom Anda. Lihat Menautkan BigQuery ke Firebase untuk mengetahui informasi lebih lanjut.

Untuk memulai, pastikan project Firebase Anda sudah ditautkan ke BigQuery. Pilih Setelan > Setelan Project dari menu navigasi sebelah kiri, lalu pilih Integrasi > BigQuery > Tautkan. Halaman ini menampilkan opsi untuk melakukan ekspor data analisis BiqQuery untuk semua aplikasi dalam project tersebut.

Untuk kueri data analisis dalam konteks eksperimen, Anda dapat membuka halaman hasil eksperimen dan memilih Lihat di BigQuery. Langkah ini akan membuka komposer kueri konsol BigQuery dengan kueri contoh data eksperimen yang sudah dimuat sebelumnya untuk ulasan Anda. Perhatikan bahwa karena data Firebase di BigQuery hanya diupdate sekali sehari, data yang tersedia di halaman eksperimen mungkin lebih baru daripada data yang tersedia di konsol BigQuery.