Bereksperimen dengan strategi promosi menggunakan Firebase Predictions

Dengan Firebase Predictions, Anda dapat mengoptimalkan promosi dalam aplikasi untuk setiap pengguna berdasarkan tingkat kemungkinan pengguna tersebut melakukan pembelian dalam aplikasi. Misalnya, Anda dapat mempromosikan paket "premium" yang lebih mahal kepada pengguna yang mungkin melakukan pembelian, dan mempromosikan paket dasar yang lebih murah kepada pengguna lainnya.

Selanjutnya, melalui Pengujian A/B Firebase, Anda dapat bereksperimen untuk mengetahui pengaruh strategi berbasis prediksi ini terhadap pendapatan pembelian dalam aplikasi, dibandingkan dengan hanya selalu mempromosikan paket dasar atau selalu menawarkan paket premium.

Sebelum memulai

Sebelum mulai menggunakan prediksi untuk menentukan strategi promosi aplikasi, Anda harus menggunakan Google Analytics untuk Firebase dalam aplikasi. Secara khusus, Anda harus:

  • Mengaktifkan fitur berbagi data Analytics di Firebase console.
  • Melakukan pencatatan ke dalam log secara tegas atas peristiwa terkait pengeluaran yang tidak secara otomatis dikumpulkan, seperti ecommerce_purchase. (Firebase otomatis akan mencatat peristiwa in_app_purchase ke dalam log untuk pembelian dalam aplikasi yang diproses oleh App Store dan Play Store.) Secara umum, Anda juga sebaiknya mencatat peristiwa lainnya yang relevan dengan aplikasi ke dalam log, guna memaksimalkan data yang tersedia untuk membuat klasifikasi.
  • Memiliki volume data peristiwa yang memadai agar Firebase mampu memberikan prediksi yang berguna. Umumnya, data berupa 10.000 pengguna aktif bulanan, 500 contoh positif, dan 500 contoh negatif sudah mencukupi untuk Firebase Predictions.

Membuat promosi Anda dapat dikonfigurasi dari jarak jauh

Pertama-tama, siapkan aplikasi Anda untuk mempromosikan paket dasar atau premium, tergantung pada nilai parameter Remote Config. Dalam langkah-langkah selanjutnya, Anda akan mengonfigurasi Predictions dan Pengujian A/B untuk menetapkan parameter dari jarak jauh berdasarkan berbagai kriteria. Namun untuk saat ini, aplikasi Anda hanya selalu mempromosikan paket dasar.

Misalnya:

  1. Impor Analytics SDK dan Remote Config SDK:

    iOS (Swift)

    Tambahkan SDK ke Podfile Anda:

    pod 'Firebase/Core'
    pod 'Firebase/RemoteConfig'
    

    Lalu, impor SDK tersebut:

    import Firebase
    

    Android

    implementation 'com.google.firebase:firebase-core:16.0.8'
    implementation 'com.google.firebase:firebase-config:16.4.0'
    
  2. Lakukan inisialisasi Remote Config dan tetapkan nilai default variabel promoted_bundle ke basic. Kemudian, Anda akan menyiapkan Predictions dan Pengujian A/B untuk menetapkan variabel ini dari jarak jauh. Namun, dengan menetapkan nilai default di aplikasi, Anda memastikan aplikasi berfungsi dengan benar sebelum variabel yang dikonfigurasi dari jarak jauh diambil.

    iOS (Swift)

    self.remoteConfig = RemoteConfig.remoteConfig()
    self.remoteConfig.setDefaults(["promoted_bundle": "basic"])
    

    Java
    Android

    mConfig = FirebaseRemoteConfig.getInstance();
    
    Map<String, Object> remoteConfigDefaults = new HashMap<>();
    remoteConfigDefaults.put("promoted_bundle", "basic");
    mConfig.setDefaults(remoteConfigDefaults);

    Kotlin
    Android

    config = FirebaseRemoteConfig.getInstance()
    
    val remoteConfigDefaults = HashMap<String, Any>()
    remoteConfigDefaults["promoted_bundle"] = "basic"
    config.setDefaults(remoteConfigDefaults)
  3. Promosikan paket yang ditentukan dengan nilai promoted_bundle. Hingga Anda menyiapkan Predictions, nilai ini akan selalu menjadi basic.

    iOS (Swift)

    self.remoteConfig.fetch() { (status, error) -> Void in
        if status == .success {
          self.remoteConfig.activateFetched()
        }
    
        // Act on the retrieved parameters
    
        // Set the bundle to promote based on parameters retrieved with Remote
        // Config. This depends entirely on your app, but, for example, you might
        // retrieve and use image assets based on the specified bundle name.
        self.promotedBundle = self.remoteConfig.getString("promoted_bundle")
    
        // ...
    }
    

    Java
    Android

    mConfig.fetch(CACHE_EXPIRATION)
            .addOnCompleteListener(this, new OnCompleteListener<Void>() {
                @Override
                public void onComplete(@NonNull Task<Void> task) {
                    if (task.isSuccessful()) {
                        mConfig.activateFetched();
                    }
    
                    // Act on the retrieved parameters
    
                    // Set the bundle to promote based on parameters retrieved with
                    // Remote Config. This depends entirely on your app, but for
                    // example, you might retrieve and use image assets based on the
                    // specified bundle name.
                    mPromotedBundle = mConfig.getString("promoted_bundle");
                    // ...
                }
            });

    Kotlin
    Android

    config.fetch(CACHE_EXPIRATION)
            .addOnCompleteListener(this) { task ->
                if (task.isSuccessful) {
                    config.activateFetched()
                }
    
                // Act on the retrieved parameters
    
                // Set the bundle to promote based on parameters retrieved with
                // Remote Config. This depends entirely on your app, but for
                // example, you might retrieve and use image assets based on the
                // specified bundle name.
                promotedBundle = config.getString("promoted_bundle")
                // ...
            }

Pada tahap ini, Anda dapat menerapkan aplikasi Anda ke App Store atau Play Store. Pengguna akan mendapatkan perilaku promosi default (selalu mempromosikan paket dasar). Namun, karena promosi dikontrol oleh variabel yang dapat dikonfigurasi dari jarak jauh, Anda dapat mengubah dan bereksperimen dengan strategi promosi hanya menggunakan Firebase console, tanpa harus mendorong pengguna mengupdate aplikasi.

Memulai prediksi pengeluaran pengguna

Selanjutnya, siapkan project Firebase Anda untuk mulai memprediksi perilaku pengeluaran pengguna Anda.

Di Firebase console, buka bagian Predictions. Jika belum, setujui persyaratan layanan Predictions.

Setelah Anda menyetujui persyaratan layanan, Predictions akan diaktifkan untuk project Anda. Bagian Predictions dalam Firebase console dapat digunakan untuk menetapkan prediksi kustom. Namun, untuk prediksi pengeluaran, Anda dapat memanfaatkan prediksi spend dan not_spend bawaan, yang didasarkan pada agregasi peristiwa Analytics untuk memprediksi apakah pengguna akan melakukan pembelian dalam aplikasi atau pembelian e-commerce (pembelian langganan tidak dianggap di prediksi ini untuk saat ini). Prediksi ini akan tersedia setelah Anda mengaktifkan Predictions dan mencatat beberapa peristiwa pengeluaran selama beberapa minggu ke dalam log.

Membuat eksperimen strategi promosi

Sekarang buat percobaan Pengujian A/B yang menguji pengaruh strategi promosi berbasis prediksi terhadap pendapatan, dibandingkan dengan hanya selalu mempromosikan paket dasar dan selalu mempromosikan paket premium.

Eksperimen sebaiknya memiliki tiga variasi, yakni grup kontrol, grup yang tanpa syarat menetapkan parameter, dan grup berbasis prediksi, sehingga eksperimen dapat menentukan apakah pendekatan berbasis prediksi memiliki manfaat yang lebih besar atau tidak, dibandingkan dengan hanya menerapkan promosi ke semua orang. Namun, eksperimen dengan tiga variasi membutuhkan lebih banyak peserta agar data yang dikumpukan cukup. Jika aplikasi tidak memiliki cukup pengguna untuk menjalankan eksperimen dengan tiga variasi, Anda masih bisa melakukan eksperimen dengan dua variasi, dengan mengabaikan eksperimen yang menerapkan promosi ke semua orang.

Untuk membuat eksperimen:

  1. Di Firebase console, buka bagian Pengujian A/B.

  2. Buat eksperimen baru:

    1. Klik Buat eksperimen > Remote Config.

    2. Pilih aplikasi Anda dari daftar dan tentukan jumlah pengguna yang ingin Anda sertakan ke dalam eksperimen. Anda juga dapat memilih untuk mengecualikan kategori pengguna tertentu dari eksperimen ini, seperti pembeli terbanyak.

    3. Pilih Pendapatan pembelian dari daftar metrik sasaran, lalu pilih setiap metrik tambahan yang ingin Anda lacak, seperti interaksi pengguna, retensi, penghapusan aplikasi, dan klik iklan.

    4. Tentukan tiga variasi:

      • Selalu promosikan paket dasar (grup kontrol)
      • Selalu promosikan paket premium
      • Promosikan paket dasar atau premium, tergantung pada prediksi pengeluaran

      Untuk Grup kontrol, buat parameter promoted_bundle lalu tetapkan ke (no change). Pengguna yang ditetapkan ke grup kontrol akan mendapatkan perilaku default, yang hanya selalu melihat promosi dasar.

      Untuk variasi Selalu promosikan premium, tetapkan parameter promoted_bundle ke premium. Pengguna yang ditetapkan untuk variasi ini hanya selalu melihat promosi premium.

      Untuk variasi Promosikan premium kepada pengguna yang kemungkinan akan berbelanja, tetapkan parameter promoted_bundle ke premium lalu tetapkan subset pengguna ke Predict: spend (medium risk tolerance). Pengguna yang ditetapkan ke variasi ini hanya melihat promosi premium jika mereka diprediksi akan berbelanja.

Mulai eksperimen dan biarkan berjalan selama beberapa hari atau lebih, sampai Pengujian A/B menyatakan variasi dominan. Jika eksperimen tidak dapat menentukan variasi dominan, Anda mungkin perlu memperluas eksperimen ke lebih banyak pengguna.

Meluncurkan variasi dominan ke semua pengguna

Setelah Pengujian A/B mengumpulkan cukup informasi untuk menyatakan variasi dominan, dalam hal ini, variasi yang memaksimalkan pendapatan pembelian, Anda dapat memutuskan apakah akan meluncurkan variasi dominan (atau variasi lain) ke semua pengguna Anda.

Di bagian Pengujian A/B pada Firebase console, buka tampilan detail dari eksperimen yang telah diselesaikan. Dari tampilan ini, Anda dapat melihat performa setiap variasi menurut metrik sasaran Anda dan metrik sekunder apa pun yang Anda pilih. Dengan informasi ini, Anda dapat memutuskan apakah akan meluncurkan variasi dominan atau variasi lainnya.

Untuk meluncurkan variasi ke semua pengguna, klik more_vert > Luncurkan variasi dominan di halaman detail eksperimen.

Kirim masukan tentang...

Butuh bantuan? Kunjungi halaman dukungan kami.