Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Membuat Eksperimen Messaging dengan Pengujian A/B

Ketika mencoba berinteraksi dengan pengguna atau memulai kampanye pemasaran baru, pastikan agar 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 dari basis pengguna Anda. Apa pun sasaran Anda, baik untuk mencapai retensi yang lebih baik maupun konversi atas sebuah penawaran, pengujian A/B dapat menjalankan analisis statistik guna menentukan apakah sebuah varian pesan memiliki performa yang lebih baik dibandingkan grup kontrol untuk tujuan yang Anda pilih.

Untuk melakukan pengujian A/B pada varian 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 analisis.
  2. Di bagian Engage pada menu navigasi Firebase console, klik Pengujian A/B.
  3. Klik Buat eksperimen, lalu pilih Notifications saat diminta memasukkan layanan yang ingin Anda gunakan untuk bereksperimen.
  4. Masukkan Nama dan Deskripsi opsional untuk eksperimen Anda, lalu klik Berikutnya.
  5. Isi kolom Penargetan, yang diawali dengan memilih aplikasi yang menggunakan eksperimen Anda. Anda juga dapat menargetkan subkumpulan pengguna untuk disertakan dalam eksperimen dengan memilih 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 akan memiliki perilaku tertentu
    • Negara/Region: Satu atau beberapa negara atau region 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. Tetapkan Persentase pengguna target: Pilih 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 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.

  7. Di bagian Varian, 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 varian pada eksperimen Anda, klik Tambahkan Varian. Secara default, eksperimen memiliki satu grup kontrol dan satu varian.

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

  10. Tentukan metrik tujuan untuk eksperimen Anda yang akan digunakan saat mengevaluasi varian eksperimen, bersama dengan 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.

  11. Pilih opsi untuk pesan Anda:

    • Tanggal pengiriman: Pilih Kirim Sekarang untuk langsung meluncurkan eksperimen setelah disimpan, atau Terjadwal 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.

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 pendaftaran FCM yang terkait dengannya. Anda dapat menggunakan token ini untuk menguji varian eksperimen tertentu di perangkat uji tempat aplikasi Anda terinstal. Untuk memvalidasi eksperimen di perangkat uji, lakukan langkah berikut:

  1. Dapatkan token pendaftaran FCM sebagai berikut:

    Swift

    Messaging.messaging().token { token, error in
      if let error = error {
        print("Error fetching FCM registration token: \(error)")
      } else if let token = token {
        print("FCM registration token: \(token)")
        self.fcmRegTokenMessage.text  = "Remote FCM registration token: \(token)"
      }
    }
    

    Objective-C

    [[FIRMessaging messaging] tokenWithCompletion:^(NSString *token, NSError *error) {
      if (error != nil) {
        NSLog(@"Error getting FCM registration token: %@", error);
      } else {
        NSLog(@"FCM registration token: %@", token);
        self.fcmRegTokenMessage.text = token;
      }
    }];
    

    Java

    FirebaseMessaging.getInstance().getToken()
        .addOnCompleteListener(new OnCompleteListener<String>() {
            @Override
            public void onComplete(@NonNull Task<String> task) {
              if (!task.isSuccessful()) {
                Log.w(TAG, "Fetching FCM registration token failed", task.getException());
                return;
              }
    
              // Get new FCM registration token
              String token = task.getResult();
    
              // Log and toast
              String msg = getString(R.string.msg_token_fmt, token);
              Log.d(TAG, msg);
              Toast.makeText(MainActivity.this, msg, Toast.LENGTH_SHORT).show();
            }
        });

    Kotlin+KTX

    FirebaseMessaging.getInstance().token.addOnCompleteListener(OnCompleteListener { task ->
        if (!task.isSuccessful) {
            Log.w(TAG, "Fetching FCM registration token failed", task.exception)
            return@OnCompleteListener
        }
    
        // Get new FCM registration token
        val token = task.result
    
        // Log and toast
        val msg = getString(R.string.msg_token_fmt, token)
        Log.d(TAG, msg)
        Toast.makeText(baseContext, msg, Toast.LENGTH_SHORT).show()
    })

    C++

    firebase::InitResult init_result;
    auto* installations_object = firebase::installations::Installations::GetInstance(
        firebase::App::GetInstance(), &init_result);
    installations_object->GetToken().OnCompletion(
        [](const firebase::Future& future) {
          if (future.status() == kFutureStatusComplete &&
              future.error() == firebase::installations::kErrorNone) {
            printf("Installations Auth Token %s\n", future.result()->c_str());
          }
        });
        

    Unity

    Firebase.Messaging.FirebaseMessaging.DefaultInstance.GetTokenAsync().ContinueWith(
      task => {
        if (!(task.IsCanceled || task.IsFaulted) && task.IsCompleted) {
          UnityEngine.Debug.Log(System.String.Format("FCM registration token {0}", task.Result));
        }
      });
    
  2. Di menu navigasi Firebase console, klik Pengujian A/B.
  3. Klik Draf, arahkan kursor ke eksperimen, klik menu konteks (), lalu klik Kelola perangkat uji
  4. Masukkan token FCM 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.

Mengelola eksperimen

Baik membuat eksperimen dengan Remote Config, Notifications composer, maupun Firebase In-App Messaging, 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 Pengujian A/B.
  2. Klik Draf, lalu klik judul eksperimen.
  3. Untuk memvalidasi bahwa aplikasi Anda memiliki pengguna yang akan disertakan ke dalam eksperimen, luaskan detail draf dan 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 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 Pengujian A/B.
  2. Klik Berjalan, 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:

    • % perbedaan dari dasar pengukuran: 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.
    • Kemungkinan untuk mengalahkan yang asli: Perkiraan kemungkinan bahwa varian tertentu akan mengalahkan dasar pengukuran untuk metrik yang dipilih.
    • observed_metric per pengguna: Didasarkan pada hasil eksperimen, ini adalah rentang perkiraan nilai metrik yang akan dicapai setelah beberapa waktu.
    • Total observed_metric: Nilai kumulatif yang diamati untuk grup kontrol atau varian. Nilai ini digunakan untuk mengukur performa setiap varian eksperimen dan untuk menghitung Peningkatan, Rentang nilai, Kemungkinan untuk mengalahkan yang asli, dan Kemungkinan untuk menjadi varian terbaik. Bergantung pada metrik yang diukur, kolom ini dapat diberi label "Durasi per pengguna", "Pendapatan per pengguna", "Rasio retensi", atau "Rasio konversi".
  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 "unggulan", 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 "unggulan", 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 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 Pengujian A/B.
  2. Klik Selesai atau Berjalan, klik eksperimen yang ingin diluncurkan ke semua pengguna, klik menu konteks (), lalu klik Luncurkan varian.
  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, pilih varian untuk menentukan nilai parameter 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 Tinjau di Remote Config untuk meninjau perubahan, klik Publikasikan perubahan untuk menyelesaikan peluncuran.
    • Untuk eksperimen In-App Messaging, gunakan dialog untuk menentukan varian mana yang perlu diluncurkan sebagai campaign In-App Messaging mandiri. Setelah dipilih, Anda akan dialihkan ke layar penulisan FIAM untuk melakukan perubahan apa pun (jika diperlukan) sebelum memublikasikan.

Memperluas eksperimen

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

  1. Di bagian Engage pada menu navigasi Firebase console, klik Pengujian A/B.
  2. Pilih eksperimen yang sedang berjalan yang ingin Anda edit.
  3. Di Ringkasan eksperimen, klik menu konteks (), lalu klik Edit eksperimen yang sedang berjalan.
  4. Dialog Penargetan 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 Publikasikan. Eksperimen akan dikirim ke pengguna sesuai persentase yang Anda tentukan.

Menduplikasi atau menghentikan eksperimen

  1. Di bagian Engage pada menu navigasi Firebase console, klik Pengujian A/B.
  2. Klik Selesai atau Berjalan, arahkan kursor ke eksperimen, klik menu konteks (), lalu klik Duplikasikan eksperimen atau Hentikan eksperimen.

Penargetan pengguna

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

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

Jika menggunakan salah satu dari 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 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 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.  
Properti pengguna 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 terkait menjadi bilangan bulat/float.
Jika menggunakan operator berisi ekspresi reguler, 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 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.  
Negara perangkat T/A Satu atau beberapa negara atau region 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.
Pertama dibuka lebih dari
kurang dari
antara
Targetkan pengguna berdasarkan saat pertama kali mereka membuka aplikasi Anda, yang ditentukan dalam hari. Kriteria penargetan ini hanya tersedia untuk Firebase In-App Messaging.
Interaksi terakhir dengan aplikasi lebih dari
kurang dari
antara
Targetkan pengguna berdasarkan terakhir kali mereka berinteraksi dengan aplikasi Anda, yang ditentukan dalam hari. Kriteria penargetan ini hanya tersedia untuk Firebase In-App Messaging.

Metrik Pengujian A/B

Saat Anda membuat eksperimen, Anda memilih metrik yang digunakan untuk membandingkan varian eksperimen. Anda juga dapat memilih metrik lain untuk dilacak guna membantu Anda agar 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
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 penghasilan 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 bebas error 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 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 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.

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. Baca artikel Menautkan BigQuery ke Firebase untuk mengetahui informasi selengkapnya.

Untuk mendapatkan manfaat penuh dari ekspor data BigQuery, project Firebase harus menggunakan paket harga bayar sesuai penggunaan "Blaze". BigQuery menagih biaya untuk penyimpanan data, streaming insert, dan pembuatan kueri data. Memuat dan mengekspor data tidak ditagih biaya. Lihat Harga BigQuery, atau sandbox BigQuery untuk mengetahui informasi selengkapnya.

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 membuat kueri data analisis eksperimen:

  1. Dari daftar eksperimen aktif, pilih eksperimen yang diinginkan untuk membuka halaman hasil eksperimen.
  2. Dari menu konteks di panel Ringkasan eksperimen, pilih Data eksperimen kueri (opsi ini tidak tersedia untuk project pada paket gratis) .

    Langkah ini akan membuka komposer kueri konsol BigQuery dengan kueri contoh data eksperimen yang dibuat secara otomatis dan yang dimuat sebelumnya untuk ditinjau. Dalam kueri ini, eksperimen Anda dienkode sebagai properti pengguna dengan nama eksperimen dalam kunci dan varian eksperimen dalam nilai.

  3. Di komposer kueri, pilih Jalankan kueri. Hasil akan ditampilkan di panel bagian bawah.

Perlu diperhatikan 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.