A/B Testi ile Mesajlaşma Denemeleri Oluşturma

Kullanıcılarınıza ulaşırken veya yeni bir pazarlama kampanyası başlatırken doğru adımlar attığınızdan emin olmak istersiniz. A/B testi, kullanıcı tabanınızın belirli bölümlerinde mesaj varyantlarını test ederek en uygun ifadeyi ve sunumu bulmanıza yardımcı olabilir. Hedefiniz ister daha iyi elde tutma ister bir teklifte dönüşüm olsun, A/B testi, seçtiğiniz hedef için bir mesaj varyantının temel performanstan daha iyi olup olmadığını belirlemek üzere istatistiksel analiz yapabilir.

Özellik varyantlarını bir temel değerle A/B test etmek için aşağıdakileri yapın:

  1. Denemenizi oluşturun.
  2. Denemenizi bir test cihazında doğrulayın.
  3. Denemenizi yönetin.

Deneme oluşturma

Bildirim oluşturucu kullanan bir deneme, tek bir bildirim mesajında birden fazla varyantı değerlendirmenize olanak tanır.

  1. Deneyin Analytics verilerine erişebilmesi için projenizde Google Analytics seçeneğinin etkinleştirildiğini doğrulayın.

    Projenizi oluştururken Google Analytics özelliğini etkinleştirmediyseniz Firebase konsolunun Ayarlar > Entegrasyonlar sekmesinden etkinleştirebilirsiniz.

  2. Firebase konsolunda DevOps ve Etkileşim > A/B Testi'ne gidin.

  3. Deneme oluştur'u tıklayın ve deneme yapmak istediğiniz hizmet sorulduğunda Bildirimler'i seçin.

  4. Denemeniz için Ad ve isteğe bağlı olarak Açıklama girip Sonraki'yi tıklayın.

  5. Öncelikle denemenizi kullanan uygulamayı seçerek Hedefleme alanlarını doldurun. Aşağıdakileri içeren seçenekleri belirleyerek kullanıcılarınızın bir alt kümesini denemenize katılmaya hedefleyebilirsiniz:

    • Sürüm: Uygulamanızın bir veya daha fazla sürümü
    • Kullanıcı kitlesi: Denemeye dahil edilebilecek kullanıcıları hedeflemek için kullanılan Analytics kitle
    • Kullanıcı özelliği: Denemeye dahil edilebilecek kullanıcıları seçmek için kullanılan bir veya daha fazla Analytics kullanıcı özelliği
    • Ülke/Bölge: Denemeye dahil edilebilecek kullanıcıları seçmek için bir veya daha fazla ülke ya da bölge
    • Cihaz dili: Denemeye dahil edilebilecek kullanıcıları seçmek için kullanılan bir veya daha fazla dil ve yerel ayar
    • İlk açılış: Uygulamanızı ilk açtıkları tarihe göre kullanıcıları hedefleyin
    • Son uygulama etkileşimi: Kullanıcıları, uygulamanızla son etkileşim zamanlarına göre hedefleyin.
  6. Hedef kullanıcıların yüzdesi: Uygulamanızın hedef kullanıcılar bölümünde belirlenen ölçütlere uyan kullanıcı tabanının, denemenizdeki temel ve bir veya daha fazla varyant arasında eşit olarak dağıtmak istediğiniz yüzdesini seçin. Bu değer, %0,01 ile %100 arasında herhangi bir yüzde olabilir. Yüzdeler, yinelenen denemeler de dahil olmak üzere her deneme için kullanıcılara rastgele yeniden atanır.

  7. Varyantlar bölümündeki İleti metnini girin alanına, temel gruba gönderilecek bir mesaj yazın. Temel gruba mesaj göndermemek için bu alanı boş bırakın.

  8. (İsteğe bağlı) Denemenize birden fazla varyant eklemek için Varyant Ekle'yi tıklayın. Denemelerde varsayılan olarak bir referans değer ve bir varyant bulunur.

  9. (İsteğe bağlı) A varyantı, B varyantı vb. adları değiştirmek için denemenizdeki her varyant için bir ad girin.

  10. Deneme varyantlarını değerlendirirken kullanmak üzere denemeniz için bir hedef metriği tanımlayın. Açılır listeden istediğiniz ek metrikleri de seçebilirsiniz. Bu metrikler arasında yerleşik hedefler (etkileşim, satın alma işlemleri, gelir, elde tutma vb.), Analytics dönüşüm etkinlikleri ve diğer Analytics etkinlikler bulunur.

  11. Mesajınız için seçenekleri belirleyin:

    • Teslimat tarihi: Denemenizi kaydettikten sonra hemen başlatmak için Şimdi gönder'i veya gelecekteki bir zamanda başlatmak için Planlandı'yı seçin.
    • Gelişmiş seçenekler: Denemenize dahil edilen tüm bildirimler için gelişmiş seçenekleri belirlemek istiyorsanız Gelişmiş seçenekler'i genişletin ve listelenen ileti seçeneklerinden herhangi birini değiştirin.
  12. Denemenizi kaydetmek için İncele'yi tıklayın.

Proje başına en fazla 300 denemeye (yeni sürüme sunma dahil) izin verilir. Bunlar, en fazla 24 çalışan deneme ve yeni sürüme sunma içerebilir. Geri kalanlar ise tamamlanmış denemelerdir.

Denemenizi bir test cihazında doğrulama

Her Firebase yüklemesi için onunla ilişkili FCM kayıt jetonunu alabilirsiniz. Bu jetonu, uygulamanızın yüklü olduğu bir test cihazında belirli deneme varyantlarını test etmek için kullanabilirsiniz. Denemenizi bir test cihazında doğrulamak için aşağıdakileri yapın:

  1. FCM kayıt jetonunu aşağıdaki gibi alın:

    Swift

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

    Objective-C

    [[FIRMessaging messaging] tokenWithCompletion:^(NSString * _Nullable token, NSError * _Nullable error) {
      if (error != nil) {
        NSLog(@"Error fetching the remote FCM registration token: %@", error);
      } else {
        NSLog(@"Remote FCM registration token: %@", token);
        NSString* message =
          [NSString stringWithFormat:@"FCM registration token: %@", token];
        // display message
        NSLog(@"%@", message);
      }
    }];

    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

    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<std::string>& 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. Firebase konsolunda DevOps & Engagement > A/B Testi'ne gidin.
  3. Taslak'ı tıklayın, farenizle denemenizin üzerine gelin, bağlam menüsünü () ve ardından Test cihazlarını yönet'i tıklayın.
  4. Bir test cihazı için FCM jetonunu girin ve söz konusu test cihazına gönderilecek deneme varyantını seçin.
  5. Uygulamayı çalıştırın ve seçilen varyantın test cihazında alındığını onaylayın.

Denemenizi yönetme

Remote Config ile, Bildirim Oluşturucu ile veya Firebase In-App Messaging ile deneme oluşturabilirsiniz. Ardından denemenizi doğrulayıp başlatabilir, çalışırken izleyebilir ve çalışan denemenize dahil edilen kullanıcı sayısını artırabilirsiniz.

Denemeniz tamamlandığında, kazanan varyantın kullandığı ayarları not edebilir ve ardından bu ayarları tüm kullanıcılara uygulayabilirsiniz. Dilerseniz başka bir deneme de çalıştırabilirsiniz.

Bir deneme başlat

  1. Firebase konsolunda DevOps ve Etkileşim > A/B Testi'ne gidin.
  2. Taslak'ı ve ardından denemenizin başlığını tıklayın.
  3. Uygulamanızda denemenize dahil edilecek kullanıcılar olduğunu doğrulamak için taslak ayrıntılarını genişletin ve Hedefleme ve dağıtım bölümünde %0'dan büyük bir sayı olup olmadığını kontrol edin (ör. ölçütlere uyan kullanıcıların% 1'i).
  4. Denemenizi değiştirmek için Düzenle'yi tıklayın.
  5. Denemenizi başlatmak için Denemeyi Başlat'ı tıklayın. Proje başına tek seferde en fazla 24 deneme çalıştırabilirsiniz.

Denemeyi izleme

Bir deneme bir süredir devam ediyorsa ilerlemesini kontrol edebilir ve denemenize şu ana kadar katılan kullanıcılar için sonuçlarınızın nasıl göründüğünü inceleyebilirsiniz.

  1. Firebase konsolunda DevOps ve Etkileşim > A/B Testi'ne gidin.
  2. Yayınlanıyor'u ve ardından denemenizin başlığını tıklayın veya arayın. Bu sayfada, devam eden denemenizle ilgili gözlemlenen ve modellenen çeşitli istatistikleri (aşağıdakiler dahil) görüntüleyebilirsiniz:

    • Temel değişkene göre yüzdelik fark: Belirli bir varyant için bir metriğin temel değişkene kıyasla ne kadar iyileştiğinin ölçüsü. Varyantın değer aralığı ile referansın değer aralığı karşılaştırılarak hesaplanır.
    • Temel değeri geçme olasılığı: Belirli bir varyantın, seçilen metrik için temel değeri geçme olasılığıdır.
    • observed_metric kullanıcı başına: Deneme sonuçlarına göre, metrik değerinin zaman içinde düşeceği tahmin edilen aralıktır.
    • Toplam observed_metric: Temel veya varyant için gözlemlenen kümülatif değer. Bu değer, her bir deneme varyantının ne kadar iyi performans gösterdiğini ölçmek için kullanılır ve Gelişme, Değer aralığı, Temel performansı aşma olasılığı ve En iyi varyant olma olasılığı metriklerini hesaplamak için kullanılır. Ölçülen metriğe bağlı olarak bu sütun "Kullanıcı başına süre", "Kullanıcı başına gelir", "Elde tutma oranı" veya "Dönüşüm oranı" olarak etiketlenebilir.
  3. Denemeniz bir süre çalıştıktan sonra (FCM ve In-App Messaging için en az 7 gün veya Remote Config için 14 gün), bu sayfadaki veriler hangi varyantın "lider" olduğunu gösterir. Bazı ölçümler, verileri görsel biçimde sunan bir çubuk grafik ile birlikte verilir.

Denemeyi tüm kullanıcılara sunma

Bir deneme, hedef metriğiniz için "en iyi varyant" veya kazanan bir varyant belirleyecek kadar uzun süre çalıştıktan sonra denemeyi tüm kullanıcılara sunabilirsiniz. Bu sayede, tüm kullanıcılara yayınlanacak bir varyant seçebilirsiniz. Denemeniz sonucunda net bir kazanan belirleyemezseniz bile dilediğiniz varyantı tüm kullanıcılarınıza sunabilirsiniz.

  1. Firebase konsolunda DevOps ve Etkileşim > A/B Testi'ne gidin.
  2. Tamamlandı veya Çalışıyor'u tıklayın, tüm kullanıcılara yayınlamak istediğiniz bir denemeyi tıklayın, bağlam menüsünü () tıklayın, Varyantı başlat'ı tıklayın.
  3. Aşağıdakilerden birini yaparak denemenizi tüm kullanıcılara sunun:

    • Bildirim oluşturucu'nun kullanıldığı bir denemede, denemeye dahil olmayan kalan hedef kullanıcılara mesaj göndermek için Mesajı kullanıma sun iletişim kutusunu kullanın.
    • Remote Config denemesi için hangi Remote Config parametre değerlerinin güncelleneceğini belirlemek üzere bir varyant seçin. Kullanıma sunma işleminin yalnızca deneme ile hedeflenen kullanıcıları etkileyeceğinden emin olmak için deneme oluşturulurken tanımlanan hedefleme ölçütleri, şablonunuza yeni bir koşul olarak eklenir. Remote Config'de incele'yi tıklayıp değişiklikleri inceledikten sonra, Değişiklikleri yayınla'yı tıklayarak kullanıma sunma işlemini tamamlayın.
    • In-App Messaging denemesi için, hangi varyantın bağımsız bir In-App Messaging kampanyası olarak kullanıma sunulması gerektiğini belirlemek üzere iletişim kutusunu kullanın. Seçim yaptıktan sonra, yayınlamadan önce gerekli değişiklikleri yapmak için FIAM oluşturma ekranına yönlendirilirsiniz.

Denemeyi genişletme

Bir denemenin A/B Testinglider ilan etmek için yeterli sayıda kullanıcı getirmediğini fark ederseniz denemenizin dağıtımını artırarak uygulamanın kullanıcı tabanının daha büyük bir yüzdesine ulaşabilirsiniz.

  1. Firebase konsolunda DevOps ve Etkileşim > A/B Testi'ne gidin.
  2. Düzenlemek istediğiniz çalışan denemeyi seçin.
  3. Denemeye genel bakış bölümünde bağlam menüsünü () ve ardından Çalışan denemeyi düzenle'yi tıklayın.
  4. Hedefleme iletişim kutusunda, devam eden denemeye katılan kullanıcıların yüzdesini artırma seçeneği gösterilir. Mevcut yüzdeden daha büyük bir sayı seçip Yayınla'yı tıklayın. Deneme, belirttiğiniz kullanıcı yüzdesine sunulur.

Denemeyi kopyalama veya durdurma

  1. Firebase konsolunda DevOps ve Etkileşim > A/B Testi'ne gidin.
  2. Tamamlandı veya Çalışıyor'u tıklayın, fare işaretçisini denemenizin üzerine getirin, bağlam menüsünü () tıklayın ve ardından Denemeyi kopyala veya Denemeyi durdur'u tıklayın.

Kullanıcı hedefleme

Aşağıdaki kullanıcı hedefleme ölçütlerini kullanarak denemenize dahil edilecek kullanıcıları hedefleyebilirsiniz.

Hedefleme ölçütü Operatörler    Değerler Not
Sürüm şunu içerir,
şunu içermez,
tam olarak eşleşir,
normal ifade(regex) içerir
Denemeye dahil etmek istediğiniz bir veya daha fazla uygulama sürümü için bir değer girin.

İçerir, içermez veya tam olarak eşleşir operatörlerinden herhangi birini kullanırken virgülle ayrılmış bir değer listesi sağlayabilirsiniz.

Normal ifade içerir operatörünü kullanırken RE2 biçiminde normal ifadeler oluşturabilirsiniz. Normal ifadeniz, hedef sürüm dizesinin tamamıyla veya bir kısmıyla eşleşebilir. Hedef dizenin başlangıcı, sonu veya tamamıyla eşleşmek için ^ ve $ tutturucularını da kullanabilirsiniz.

Kullanıcı kitleleri includes all of,
includes at least one of,
does not include all of,
does not include at least one of
Denemenize dahil edilebilecek kullanıcıları hedeflemek için bir veya daha fazla Analytics kitle seçin. Google Analytics kitlelerini hedefleyen bazı denemelerde, Analytics veri işleme gecikmesine tabi oldukları için veri birikmesi birkaç gün sürebilir. Bu gecikmeyle en çok, genellikle oluşturulduktan 24-48 saat sonra uygun kitlelere kaydedilen yeni kullanıcılarda veya yeni oluşturulan kitlelerde karşılaşma olasılığınız yüksektir.
Kullanıcı özelliği Metin için:
içerir,
içermez,
tam olarak eşleşir,
normal ifade(regex) içerir

Sayılar için:
<, ≤, =, ≥, >
Denemeye dahil edilebilecek kullanıcıları seçmek için Analytics kullanıcı özelliği kullanılır. Kullanıcı özelliği değerlerini seçmek için çeşitli seçenekler sunulur.

İstemcide, kullanıcı özelliklerinin yalnızca dize değerlerini ayarlayabilirsiniz. Sayısal operatörlerin kullanıldığı koşullarda Remote Config hizmeti, ilgili kullanıcı özelliğinin değerini tam sayıya/kayan noktalı sayıya dönüştürür.
contains regex operatörünü kullanırken RE2 biçiminde normal ifadeler oluşturabilirsiniz. Normal ifadeniz, hedef sürüm dizesinin tamamıyla veya bir kısmıyla eşleşebilir. Hedef dizenin başlangıcı, sonu veya tamamıyla eşleşmek için ^ ve $ tutturucularını da kullanabilirsiniz.
Ülke/Bölge Yok Denemeye dahil edilebilecek kullanıcıları seçmek için kullanılan bir veya daha fazla ülke ya da bölge.  
Diller Yok Denemeye dahil edilebilecek kullanıcıları seçmek için kullanılan bir veya daha fazla dil ve yerel ayar.  
İlk açılış Daha fazla
Daha az
Arasında
Kullanıcıları, uygulamanızı ilk açtıkları zamana göre (gün cinsinden belirtilir) hedefleyin.
Son uygulama etkileşimi Daha fazla
Daha az
Arasında
Kullanıcıları, uygulamanızla en son etkileşimde bulundukları zamana göre (gün cinsinden belirtilir) hedefleyin.

A/B Testing metrik

Denemenizi oluştururken, kazanan varyantı belirlemek için kullanılan birincil veya hedef metriği seçersiniz. Ayrıca, her deneme varyantının performansını daha iyi anlamanıza yardımcı olmak ve her varyant için farklılık gösterebilecek önemli trendleri (ör. kullanıcıları elde tutma, uygulama kararlılığı ve uygulama içi satın alma geliri) izlemek için diğer metrikleri de takip etmeniz gerekir. Denemenizde en fazla beş hedef dışı metrik izleyebilirsiniz.

Örneğin, uygulamanıza yeni uygulama içi satın alma işlemleri eklediğinizi ve iki farklı "hatırlatma" mesajının etkinliğini karşılaştırmak istediğinizi varsayalım. Bu durumda, kazanan varyantın en yüksek uygulama içi satın alma gelirini sağlayan bildirimi temsil etmesini istediğiniz için hedef metriğiniz olarak satın alma geliri'ni seçebilirsiniz. Ayrıca, hangi varyantın gelecekte daha fazla dönüşüm sağladığını ve kullanıcıları elde tuttuğunu da izlemek istediğiniz için İzlenecek diğer metrikler bölümüne aşağıdakileri ekleyebilirsiniz:

  • Uygulama içi satın alma ve reklam gelirinizin iki varyant arasında nasıl farklılık gösterdiğini görmek için tahmini toplam gelir.
  • Günlük veya haftalık kullanıcı elde tutma oranınızı izlemek için Elde tutma (1 gün), Elde tutma (2-3 gün), Elde tutma (4-7 gün).

Aşağıdaki tablolarda, hedef metriklerinin ve diğer metriklerin nasıl hesaplandığıyla ilgili ayrıntılı bilgi verilmektedir.

Hedef metrikleri

Metrik Açıklama
Kilitlenme sorunu yaşamayan kullanıcı sayısı Deneme sırasında Firebase Crashlytics SDK'sı tarafından algılanan ve uygulamanızda hatalarla karşılaşmayan kullanıcıların yüzdesi.

Not: Firebase Crashlytics, web uygulamaları için desteklenmez.

Tahmini reklam geliri Tahmini reklam kazançları.
Tahmini toplam gelir Satın alma ve tahmini reklam gelirlerinin birleştirilmiş değeri.
Satın alma geliri Tüm purchase ve in_app_purchase etkinliklerinin birleştirilmiş değeri.
Elde tutma (1 gün) Uygulamanıza günlük olarak geri dönen kullanıcıların sayısı.
Elde tutma (2-3 gün) 2-3 gün içinde uygulamanıza geri dönen kullanıcıların sayısı.
Elde tutma (4-7 gün) 4-7 gün içinde uygulamanıza geri dönen kullanıcıların sayısı.
Elde tutma (8-14 gün) 8-14 gün içinde uygulamanıza geri dönen kullanıcıların sayısı.
Elde tutma (en az 15 gün) Uygulamanızı son kullandıklarından 15 gün veya daha uzun bir süre sonra geri dönen kullanıcı sayısı.
first_open Bir kullanıcı uygulamayı yükledikten veya yeniden yükledikten sonra ilk kez açtığında tetiklenen bir Analytics etkinliği. Dönüşüm hunisinin bir parçası olarak kullanılır.

Diğer metrikler

Metrik Açıklama
notification_dismiss Bildirim Oluşturucu tarafından gönderilen bir bildirim kapatıldığında tetiklenen Analytics etkinliği (yalnızca Android).
notification_receive Bildirim oluşturucu tarafından gönderilen bir bildirim, uygulama arka plandayken alındığında tetiklenen bir Analytics etkinliği (yalnızca Android).
os_update Cihazın işletim sistemi yeni sürüme güncellendiğinde bunu izleyen bir Analytics etkinliğidir.Daha fazla bilgi için Otomatik olarak toplanan etkinlikler başlıklı makaleyi inceleyin.

Bu metrik, web uygulamaları için desteklenmez.

screen_view Uygulamanızda görüntülenen ekranları izleyen bir Analytics etkinliktir. Daha fazla bilgi için Ekran Görüntülemelerini İzleme başlıklı makaleyi inceleyin.
session_start Uygulamanızdaki kullanıcı oturumlarını sayan bir Analytics etkinliğidir. Daha fazla bilgi için Otomatik olarak toplanan etkinlikler başlıklı makaleyi inceleyin.

BigQuery veri dışa aktarma

A/B Testing deneme verilerini Firebase konsolunda görüntülemenin yanı sıra BigQuery'de de inceleyip analiz edebilirsiniz. A/B Testing için ayrı bir BigQuery tablosu olmasa da deneme ve varyant üyelikleri, Analytics etkinlik tablolarındaki her Google Analytics etkinliğinde depolanır.

Deneme bilgilerini içeren kullanıcı özellikleri userProperty.key like "firebase_exp_%" veya userProperty.key = "firebase_exp_01" biçimindedir. Burada 01 deneme kimliği, userProperty.value.string_value ise deneme varyantının (sıfır tabanlı) dizinini içerir.

Deneme verilerini ayıklamak için bu deneme kullanıcı özelliklerini kullanabilirsiniz. Bu sayede deneme sonuçlarınızı birçok farklı şekilde dilimleyebilir ve A/B Testing sonuçlarını bağımsız olarak doğrulayabilirsiniz.

Başlamak için bu rehberde açıklandığı şekilde aşağıdakileri tamamlayın:

  1. Firebase konsolunda Google Analytics için BigQuery dışa aktarmayı etkinleştirme
  2. BigQuery kullanarak A/B Testing verilerine erişme
  3. Örnek sorguları inceleyin

Firebase konsolunda Google Analytics için BigQuery dışa aktarma özelliğini etkinleştirin.

Spark planındaysanız BigQuery korumalı alanını BigQuery erişmek için ücretsiz olarak kullanabilirsiniz. Bu kullanım, korumalı alan sınırlarına tabidir. Daha fazla bilgi için Fiyatlandırma ve BigQuery sandbox başlıklı makaleyi inceleyin.

Öncelikle Analytics verilerinizi BigQuery konumuna aktardığınızdan emin olun:

  1. Firebase konsolunda Ayarlar > Entegrasyonlar sekmesine gidin.

  2. BigQuery kartında Yönet'i tıklayın ve projenizin Analytics verilerini BigQuery'ye aktardığını doğrulayın.

    Kartta Bağla yazıyorsa dışa aktarma işlemini ayarlamanız gerekir (sonraki adıma geçin).

  3. Dışa aktarma işlemini ayarlamanız gerekiyorsa:

    1. Firebase'i BigQuery'e bağlama hakkında başlıklı makaleyi inceleyin, ardından Sonraki'yi tıklayın.

    2. Entegrasyonu yapılandırın bölümünde Google Analytics seçeneğini etkinleştirin.

    3. Bir bölge seçin ve dışa aktarma ayarlarını belirleyin.

    4. BigQuery'e bağla'yı tıklayın.

Verileri dışa aktarma şeklinize bağlı olarak tabloların kullanılabilir hale gelmesi bir gün kadar sürebilir. Proje verilerini BigQuery dışa aktarma hakkında daha fazla bilgi için Proje verilerini BigQuery dışa aktarma başlıklı makaleyi inceleyin.

BigQuery'de A/B Testing verilerine erişme

Belirli bir denemeyle ilgili verileri sorgulamadan önce, sorgunuzda kullanmak üzere aşağıdakilerden bazılarını veya tümünü edinmeniz gerekir:

  • Deneme kimliği: Bu kimliği, Denemeye genel bakış sayfasının URL'sinden edinebilirsiniz. Örneğin, URL'niz şeklinde görünüyorsa https://console.firebase.google.com/project/my_firebase_project/config/experiment/results/25, deneme kimliği 25'tir.
  • Google Analytics mülk kimliği: Bu, 9 haneli Google Analytics mülk kimliğinizdir. Bu bilgiyi Google Analytics içinde bulabilirsiniz. Ayrıca, Google Analytics etkinlik tablonuzun (project_name.analytics_000000000.events) adını göstermek için proje adınızı genişlettiğinizde BigQuery içinde de görünür.
  • Deneme tarihi: Daha hızlı ve daha verimli bir sorgu oluşturmak için sorgularınızı deneme verilerinizi içeren Google Analytics günlük etkinlik tablosu bölümleriyle (YYYYMMDD sonekiyle tanımlanan tablolar) sınırlamanız iyi bir uygulamadır. Bu nedenle, denemeniz 2 Şubat 2024 ile 2 Mayıs 2024 arasında yayınlandıysa _TABLE_SUFFIX between '20240202' AND '20240502' belirtirsiniz. Örnek için Belirli bir denemenin değerlerini seçme başlıklı makaleye bakın.
  • Etkinlik adları: Bunlar genellikle denemede yapılandırdığınız hedef metriklerinizle eşleşir. Örneğin, in_app_purchase etkinlikleri, ad_impression veya user_retention etkinlikleri.
başlıklı makaleyi inceleyin.

Sorgunuzu oluşturmak için gereken bilgileri topladıktan sonra:

  1. Google Cloud konsolunda BigQuery bölümüne gidin.
  2. Projenizi ve ardından SQL sorgusu oluştur'u seçin.
  3. Sorgunuzu ekleyin. Çalıştırılacak örnek sorgular için Örnek sorguları keşfetme bölümüne bakın.
  4. Çalıştır'ı tıklayın.

Firebase konsolunun otomatik olarak oluşturduğu sorguyu kullanarak sorgu denemesi verilerini sorgulama

Blaze planını kullanıyorsanız Deneye genel bakış sayfasında, görüntülediğiniz deneye ait deney adını, varyantları, etkinlik adlarını ve etkinlik sayısını döndüren örnek bir sorgu yer alır.

Otomatik olarak oluşturulan sorguyu almak ve çalıştırmak için:

  1. Firebase konsolunda DevOps ve Etkileşim > A/B Testi'ne gidin.
  2. Sorgulamak istediğiniz A/B Testing denemesini seçerek Denemeye genel bakış sayfasını açın.
  3. Seçenekler menüsünde, BigQuery entegrasyonu bölümünün altında Deneme verilerini sorgula'yı seçin. Bu işlem, projenizi BigQuery içindeki Google Cloud konsolunda açar ve deneme verilerinizi sorgulamak için kullanabileceğiniz temel bir sorgu sağlar.

Aşağıdaki örnekte, "Kışa merhaba denemesi" adlı üç varyantı (referans değeri dahil) olan bir deneme için oluşturulan sorgu gösterilmektedir. Her etkinlik için etkin deneme adını, varyant adını, benzersiz etkinliği ve etkinlik sayısını döndürür. Sorgu oluşturucunun doğrudan projenizde açıldığından tablo adında proje adınızı belirtmediğini unutmayın.

  /*
    This query is auto-generated by Firebase A/B Testing for your
    experiment "Winter welcome experiment".
    It demonstrates how you can get event counts for all Analytics
    events logged by each variant of this experiment's population.
  */
  SELECT
    'Winter welcome experiment' AS experimentName,
    CASE userProperty.value.string_value
      WHEN '0' THEN 'Baseline'
      WHEN '1' THEN 'Welcome message (1)'
      WHEN '2' THEN 'Welcome message (2)'
      END AS experimentVariant,
    event_name AS eventName,
    COUNT(*) AS count
  FROM
    `analytics_000000000.events_*`,
    UNNEST(user_properties) AS userProperty
  WHERE
    (_TABLE_SUFFIX BETWEEN '20240202' AND '20240502')
    AND userProperty.key = 'firebase_exp_25'
  GROUP BY
    experimentVariant, eventName

Diğer sorgu örnekleri için Örnek sorguları inceleme bölümüne gidin.

Keşfedin özelliğiyle ilgili örnek sorgular

Aşağıdaki bölümlerde, A/B Testing deneme verilerini Google Analytics etkinlik tablolarından ayıklamak için kullanabileceğiniz sorgularla ilgili örnekler verilmiştir.

Tüm denemelerden satın alma ve deneme standart sapma değerlerini ayıklama

Deneme sonuçları verilerini kullanarak sonuçları bağımsız olarak doğrulayabilirsiniz. Firebase A/B Testing Aşağıdaki BigQuery SQL ifadesi, deneme varyantlarını, her varyanttaki tekil kullanıcı sayısını ve in_app_purchase ile ecommerce_purchase etkinliklerinden elde edilen toplam geliri toplar. Ayrıca, _TABLE_SUFFIX başlangıç ve bitiş tarihleri olarak belirtilen zaman aralığındaki tüm denemeler için standart sapmaları da çıkarır. Firebase'in sağladığı sonuçların kendi analizinizle eşleştiğini doğrulamak için bu sorgudan elde ettiğiniz verileri tek kuyruklu t-testleri için istatistiksel önemlilik oluşturma aracıyla birlikte kullanabilirsiniz.

A/B Testing'nın çıkarımı nasıl hesapladığı hakkında daha fazla bilgi için Test sonuçlarını yorumlama başlıklı makaleyi inceleyin.

  /*
    This query returns all experiment variants, number of unique users,
    the average USD spent per user, and the standard deviation for all
    experiments within the date range specified for _TABLE_SUFFIX.
  */
  SELECT
    experimentNumber,
    experimentVariant,
    COUNT(*) AS unique_users,
    AVG(usd_value) AS usd_value_per_user,
    STDDEV(usd_value) AS std_dev
  FROM
    (
      SELECT
        userProperty.key AS experimentNumber,
        userProperty.value.string_value AS experimentVariant,
        user_pseudo_id,
        SUM(
          CASE
            WHEN event_name IN ('in_app_purchase', 'ecommerce_purchase')
              THEN event_value_in_usd
            ELSE 0
            END) AS usd_value
      FROM `PROJECT_NAME.analytics_ANALYTICS_ID.events_*`
      CROSS JOIN UNNEST(user_properties) AS userProperty
      WHERE
        userProperty.key LIKE 'firebase_exp_%'
        AND event_name IN ('in_app_purchase', 'ecommerce_purchase')
        AND (_TABLE_SUFFIX BETWEEN 'YYYYMMDD' AND 'YYYMMDD')
      GROUP BY 1, 2, 3
    )
  GROUP BY 1, 2
  ORDER BY 1, 2;

Belirli bir denemenin değerlerini seçme

Aşağıdaki örnek sorgu, BigQuery'daki belirli bir denemeyle ilgili verilerin nasıl alınacağını gösterir. Bu örnek sorgu, deneme adını, varyant adlarını (Temel Çizgi dahil), etkinlik adlarını ve etkinlik sayılarını döndürür.

  SELECT
    'EXPERIMENT_NAME' AS experimentName,
    CASE userProperty.value.string_value
      WHEN '0' THEN 'Baseline'
      WHEN '1' THEN 'VARIANT_1_NAME'
      WHEN '2' THEN 'VARIANT_2_NAME'
      END AS experimentVariant,
    event_name AS eventName,
    COUNT(*) AS count
  FROM
    `analytics_ANALYTICS_PROPERTY.events_*`,
    UNNEST(user_properties) AS userProperty
  WHERE
    (_TABLE_SUFFIX BETWEEN 'YYYMMDD' AND 'YYYMMDD')
    AND userProperty.key = 'firebase_exp_EXPERIMENT_NUMBER'
  GROUP BY
    experimentVariant, eventName