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

Kullanıcılarınıza ulaşırken veya yeni bir pazarlama kampanyası başlatırken her şeyin doğru olduğundan emin olmak istersiniz. A/B testi, kullanıcı tabanınızın belirli bölümlerinde mesaj varyantlarını test ederek ideal 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çilen hedefiniz için bir mesaj varyantının temel performanstan daha iyi performans gösterip göstermediğini belirlemek üzere istatistiksel analiz yapabilir.

Temel değerle birlikte özellik varyantları üzerinde A/B testi yapmak 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'nun kullanıldığı bir deneme, tek bir bildirim mesajında birden fazla varyantı değerlendirmenize olanak tanır.

  1. Firebase konsolunda oturum açın ve denemenin Analytics verilerine erişebilmesi için projenizde Google Analytics'nin etkinleştirildiğini doğrulayın.

    Projenizi oluştururken Google Analytics seçeneğini etkinleştirmediyseniz Firebase konsolunda > Proje ayarları'nı kullanarak erişebileceğiniz Entegrasyonlar sekmesinden etkinleştirebilirsiniz.

  2. Firebase konsolu gezinme çubuğunun Etkileşim bölümünde A/B Testing simgesini tıklayın.

  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. Önce 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 da 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 etkileşime geçtikleri son tarihe göre hedefleyin.
  6. Hedef kullanıcıların yüzdesi: Hedef kullanıcılar bölümünde belirlenen ölçütlere uyan ve denemenizde temel ile bir veya daha fazla varyant arasında eşit olarak bölüştürmek istediğiniz uygulama kullanıcı tabanınızın 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 Mesaj metnini girin alanına temel gruba gönderilecek 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, gelir, elde tutma vb.) bulunur. Analytics dönüşüm etkinliği ve diğer Analytics etkinlik.

  11. İletiniz için seçenekleri belirleyin:

    • Yayın tarihi: Denemenizi kaydettikten sonra hemen başlatmak için Şimdi Gönder'i veya denemenizi 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 üzere Gelişmiş seçenekler'i genişletin ve ardından listelenen mesaj seçeneklerinden herhangi birini değiştirin.
  12. Denemenizi kaydetmek için İncele'yi tıklayın.

Proje başına en fazla 300 denemeye izin verilir. Bunlardan en fazla 24'ü devam eden deneme olabilir. Diğerleri ise taslak veya tamamlanmış deneme olabilir.

Denemenizi bir test cihazında doğrulama

Her Firebase yüklemesi için 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 şekilde alın:

    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

    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 konsol gezinme çubuğunda A/B Testi'ni tıklayın.
  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, Bildirim Oluşturucu veya Firebase In-App Messaging ile bir deneme oluşturduktan sonra denemenizi doğrulayıp başlatabilir, deneme çalışırken denemenizi 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 konsolu gezinme menüsünün Etkileşim bölümünde A/B Testing simgesini tıklayın.
  2. Taslak'ı ve ardından denemenizin başlığını tıklayın.
  3. Uygulamanızın, 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 (örneğin, ö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 aynı anda en fazla 24 deneme çalıştırabilirsiniz.

Denemeyi izleme

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

  1. Firebase konsolu gezinme menüsünün Etkileşim bölümünde A/B Testing simgesini tıklayın.
  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 metrikte, referans değerle karşılaştırıldığında varyasyonun ne kadar iyileştiğini gösteren ölçü. Varyantın değer aralığı, referansın değer aralığıyla karşılaştırılarak hesaplanır.
    • Orijinali geçme olasılığı: Belirli bir varyantın, seçilen metrik için orijinalden daha iyi performans gösterme olasılığıdır.
    • observed_metric kullanıcı başına: Deneme sonuçlarına göre, metrik değerinin zaman içinde içinde yer alacağı 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ığı, Referansı geçme 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 (FCM ve In-App Messaging için en az 7 gün veya Remote Config için 14 gün) çalıştıktan sonra bu sayfadaki veriler, varsa 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 belirleyebileceğiniz 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 konsolu gezinme menüsünün Etkileşim bölümünde A/B Testing simgesini tıklayın.
  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 ve Varyantı başlat'ı seçin.
  3. Aşağıdakilerden birini yaparak denemenizi tüm kullanıcılara sunun:

    • Bildirim oluşturucu'nun kullanıldığı bir denemede, denemeye katılmayan 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 yapıldıktan sonra, yayınlamadan önce gerekli değişiklikleri yapmanız için FIAM oluşturma ekranına yönlendirilirsiniz.

Denemeyi genişletme

Bir denemenin A/B Testing 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 konsolu gezinme menüsünün Etkileşim bölümünde A/B Testing simgesini tıklayın.
  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 dahil olan 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 konsolu gezinme menüsünün Etkileşim bölümünde A/B Testing simgesini tıklayın.
  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 içerir,
içermez,
tam olarak eşleşir,
normal ifade 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 tümünü içerir,
en az birini içerir,
tümünü içermez,
en az birini içermez
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 içerir

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

İstemcide, kullanıcı özelliklerine yalnızca dize değerleri 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.
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.
Ü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
Uygulamanızı ilk açtıkları tarihe göre kullanıcıları hedefleyin (gün cinsinden belirtilir).
Son uygulama etkileşimi Daha fazla
Daha az
Arasında
Uygulamanızla etkileşime geçtikleri son tarihe göre kullanıcıları hedefleyin (gün cinsinden belirtilir).

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 gelirini 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:

  • Birleştirilmiş 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/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ılar 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.
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ı sayısı.
Elde tutma (2-3 gün) Uygulamanıza 2-3 gün içinde geri dönen kullanıcı 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 Kullanıcı bir 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.
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 etkinliktir. 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 deneysel çalışma 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ğini, 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 BigQuery için Google Analytics dışa aktarmayı etkinleştirme

Spark planındaysanız BigQuery korumalı alanını kullanarak BigQuery'a korumalı alan sınırları dahilinde ücretsiz olarak erişebilirsiniz. Daha fazla bilgi için Fiyatlandırma ve BigQuery sanal alanı başlıklı makaleyi inceleyin.

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

  1. Entegrasyonlar sekmesini açın. Bu sekmeye Firebase konsolunda > Proje ayarları'nı kullanarak erişebilirsiniz.
  2. BigQuery'yı diğer Firebase hizmetleriyle birlikte kullanıyorsanız Yönet'i tıklayın. Aksi takdirde, Bağla'yı tıklayın.
  3. Firebase'i BigQuery'e Bağlama Hakkında başlıklı makaleyi inceleyin, ardından Sonraki'yi tıklayın.
  4. Entegrasyonu yapılandırın bölümünde Google Analytics açma/kapatma düğmesini etkinleştirin.
  5. Bir bölge seçin ve dışa aktarma ayarlarını belirleyin.

  6. �BigQuery ile Bağla'yı tıklayın.

Verileri nasıl dışa aktarmayı seçtiğinize bağlı olarak tabloların kullanılabilir hâle 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 şu şekilde 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ırlamak iyi bir uygulamadır. Bu nedenle, denemeniz 2 Şubat 2024 ile 2 Mayıs 2024 arasında çalıştı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.

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

  1. Google Cloud konsolunda BigQuery'ı açın.
  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 deneme verilerini sorgulama

Blaze planını kullanıyorsanız Denemeye genel bakış sayfasında, görüntülediğiniz denemenin adını, varyantlarını, 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 A/B Testing simgesini açın ve sorgulamak istediğiniz A/B Testing denemesini seçerek Denemeye genel bakış sayfasını açın.
  2. Seçenekler menüsünde, BigQuery entegrasyonu bölümünde Sorgu denemesi verileri'ni seçin. Bu işlem, projenizi BigQuery içinde açar ve deneme verilerinizi sorgulamak için kullanabileceğiniz temel bir sorgu sağlar.Google Cloud

Aşağıdaki örnekte, "Kışa hoş geldin denemesi" adlı ve üç varyantı (referans değeri dahil) olan bir deneme için oluşturulan sorgu gösterilmektedir. Etkin deneme adını, varyant adını, benzersiz etkinliği ve her etkinlik için 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

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

Keşfetme ö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ıklayın.

Deneme sonuçları verilerini kullanarak Firebase A/B Testing sonuçları bağımsız olarak doğrulayabilirsiniz. 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, _TABLE_SUFFIX başlangıç ve bitiş tarihleri olarak belirtilen zaman aralığındaki tüm denemeler için standart sapmaları çı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 üreteciyle 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 içinde belirli bir denemeyle ilgili verilerin nasıl alınacağını gösterir. Bu örnek sorgu, deneme adını, varyant adlarını (temel varyant 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