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 yaptığınızdan emin olmalısınız. A/B testi, kullanıcı tabanınızın belirli kısımlarında mesaj varyantlarını test ederek en iyi ifadeyi ve sunuyu bulmanıza yardımcı olabilir. Hedefiniz bir teklifte daha iyi elde tutma veya dönüşüm sağlamak olsun, A/B testi bir mesaj varyantının seçtiğiniz hedef için referans değerden daha iyi performans gösterip göstermediğini belirlemek amacıyla istatistiksel analiz yapabilir.

Özellik varyantları için bir referans değeri ile A/B testi yapmak istiyorsanız 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şturucuyu kullanan 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'in etkinleştirildiğini doğrulayın.

    Projenizi oluştururken Google Analytics'i etkinleştirmediyseniz Entegrasyonlar sekmesinden etkinleştirebilirsiniz. Bu sekmeye Firebase konsolundaki > Proje ayarları bölümünden erişebilirsiniz.

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

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

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

  5. Önce denemenizi kullanan uygulamayı seçerek Hedefleme alanlarını doldurun. Ayrıca, aşağıdakileri içeren seçenekler belirleyerek kullanıcılarınızın bir alt kümesini denemenize katılmaları için 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 kitleleri
    • Kullanıcı özelliği: Denemeye dahil edilebilecek kullanıcıları seçmek için bir veya daha fazla Analytics kullanıcı özelliği
    • Ülke/Bölge: Denemeye dahil edilebilecek kullanıcıların seçileceği bir veya daha fazla ülke veya 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ış: Kullanıcıları, uygulamanızı ilk açtıkları zamana göre hedefleyin
    • Son uygulama etkileşimi: Kullanıcıları, uygulamanızla son etkileşimde bulundukları zamana göre hedefleyin
  6. Hedef kullanıcıların yüzdesini belirleyin:Uygulamanızın kullanıcı tabanının, Hedef kullanıcılar altında belirlenen ölçütlere uyan ve denemenizdeki referans değer ile bir veya daha fazla varyant arasında eşit bir şekilde bölmek istediğiniz yüzdeyi 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ünde, Mesaj metni 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. Denemelerin varsayılan olarak bir referans değeri ve bir varyantı vardır.

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

  10. Açılır listeden istediğiniz ek metriklerle birlikte deneme varyantlarını değerlendirirken denemenizde kullanılacak bir hedef metriği tanımlayın. Bu metrikler yerleşik hedefler (etkileşim, satın almalar, gelir, elde tutma vb.) içerir. Analytics dönüşüm etkinlikleri ve diğer Analytics etkinlikleri gibi çeşitli metrikleri kullanabilirsiniz.

  11. Mesajınızla ilgili seçenekleri belirleyin:

    • Teslim tarihi: Denemenizi kaydedildikten hemen sonra başlatmak için Şimdi Gönder'i veya denemenizi gelecekte başlatacağınız bir zaman belirtmek 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 300'e kadar denemeye izin verilir. Bu deneme, 24 çalışan denemeden oluşabilir. Geri kalan her deneme ise taslak veya tamamlanmış şekilde gerçekleştirilebilir.

Denemenizi bir test cihazında doğrulama

Her Firebase kurulumu 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. Aşağıdaki şekilde FCM kayıt jetonunu 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+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. Firebase konsolu gezinme çubuğunda A/B Testi'ni tıklayın.
  3. Taslak'ı tıklayın, fareyle denemenizin üzerine gelin, içerik 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 bu 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 Uygulama İçi Mesajlaşma ile bir deneme oluşturun, daha sonra denemenizi doğrulayabilir ve başlatabilir, çalışırken denemenizi izleyebilir ve çalışan denemenize dahil edilen kullanıcı sayısını artırabilirsiniz.

Denemeniz bittiğinde, kazanan varyantın kullandığı ayarları not edebilir ve bu ayarları tüm kullanıcılara sunabilirsiniz. Ya da başka bir deneme çalıştırabilirsiniz.

Bir deneme başlat

  1. Firebase konsolu gezinme menüsünün Etkileşim bölümünde A/B Testi'ni tıklayın.
  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 (örneğin, ölçütleri karşılayan 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üre çalıştıktan sonra, ilerlemesini kontrol edebilir ve sonuçlarınızın, denemenize şimdiye kadar katılan kullanıcılar için nasıl göründüğünü görebilirsiniz.

  1. Firebase konsolu gezinme menüsünün Etkileşim bölümünde A/B Testi'ni tıklayın.
  2. Çalıştırılıyor'u tıklayın, ardından denemenizin başlığını tıklayın veya arayın. Bu sayfada, aşağıdakiler de dahil olmak üzere çalışan denemenizle ilgili gözlemlenen ve modellenmiş çeşitli istatistikleri görüntüleyebilirsiniz:

    • Referans değerden fark yüzdesi: Belirli bir varyant için bir metriğin referans değere kıyasla iyileşmesinin ölçüsü. Varyantın değer aralığı, referans değerin değer aralığıyla karşılaştırılarak hesaplanır.
    • Referans değeri geçme olasılığı: Belirli bir varyantın, seçilen metrik için referans değeri geçme olasılığı.
    • Kullanıcı başına observed_metric: Deneme sonuçlarına göre bu, metrik değerinin zaman içinde yer alacağı tahmini aralıktır.
    • Toplam observed_metric: Referans değer veya varyant için gözlemlenen kümülatif değer. Değer, her deneme varyantının ne kadar iyi performans gösterdiğini ölçmek için kullanılır ve İyileşme, Değer aralığı, Referans değeri 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 Uygulama İçi Mesajlaşma için en az 7 gün veya Remote Config için en az 14 gün) çalıştırıldıktan sonra, bu sayfadaki veriler, varsa hangi varyantın "lider" olduğunu gösterir. Bazı ölçümlere, verileri görsel biçimde sunan bir çubuk grafik eşlik eder.

Denemeyi tüm kullanıcılara sunma

Bir deneme, hedef metriğiniz için bir "lider" veya kazanan varyant olacak kadar uzun süre çalıştıktan sonra, denemeyi kullanıcıların% 100'üne yayınlayabilirsiniz. Bu sayede, bundan sonra tüm kullanıcılara yayınlamak için bir varyant seçebilirsiniz. Denemeniz net bir kazanan oluşturmamış olsa bile, bir varyantı tüm kullanıcılarınıza yayınlamayı seçebilirsiniz.

  1. Firebase konsolu gezinme menüsünün Etkileşim bölümünde A/B Testi'ni tıklayın.
  2. Tamamlandı veya Çalıştırılıyor'u, tüm kullanıcılara yayınlamak istediğiniz bir denemeyi ve ardından içerik menüsünü tıklayın () Varyantı kullanıma sun'u tıklayın.
  3. Aşağıdakilerden birini yaparak denemenizi tüm kullanıcılara sunun:

    • Bildirim oluşturucuyu kullanan bir denemede, mesajı denemenin parçası olmayan kalan hedef kullanıcılara 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. Denemeyi oluştururken tanımlanan hedefleme ölçütleri, kullanıma sunmanın yalnızca deneme tarafından hedeflenen kullanıcıları etkilemesini sağlamak için şablonunuza yeni bir koşul olarak eklenir. Değişiklikleri incelemek için Remote Config'de incele'yi tıkladıktan sonra kullanıma sunumu tamamlamak için Değişiklikleri yayınla'yı tıklayın.
    • Uygulama İçi Mesajlaşma denemesinde hangi varyantın bağımsız bir Uygulama İçi Mesajlaşma kampanyası olarak kullanıma sunulması gerektiğini belirlemek için iletişim kutusunu kullanın. Bu seçeneği belirlediğinizde, yayınlamadan önce gerekli değişiklikleri yapmak için FIAM oluşturma ekranına yönlendirilirsiniz.

Denemeyi genişletin

Bir denemenin, A/B Testi'nin lider ilan etmesi için yeterli 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 Testi'ni tıklayın.
  2. Düzenlemek istediğiniz, çalışan denemeyi seçin.
  3. Denemeye genel bakış'ta içerik menüsünü () ve ardından Çalışan denemeyi düzenle'yi tıklayın.
  4. Hedefleme iletişim kutusunda, çalışan denemeye katılan kullanıcıların yüzdesini artırma seçeneği görüntülenir. Geçerli yüzdeden büyük bir sayı seçip Yayınla'yı tıklayın. Deneme, belirttiğiniz kullanıcı yüzdesine aktarılır.

Denemeyi kopyalama veya durdurma

  1. Firebase konsolu gezinme menüsünün Etkileşim bölümünde A/B Testi'ni tıklayın.
  2. Tamamlandı veya Çalıştırılıyor'u tıklayın, işaretçiyi denemenizin üzerine getirin, içerik menüsü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,
şunu içermez,
tam olarak eşleşir,
şu normal ifadeyi 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 değerlerin virgülle ayrılmış bir listesini sağlayabilirsiniz.

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

Kullanıcı kitleleri şunların tümünü içerir,
en az birini içerir,
şunların tümünü içermez,
en az birini içermez
Denemenize dahil edilebilecek kullanıcıları hedeflemek için bir veya daha fazla Analytics kitlesi seçin. Google Analytics kitlelerini hedefleyen bazı denemeler Analytics'teki veri işleme gecikmesine tabi olduğundan veri biriktirmesi birkaç gün sürebilir. Bu gecikmeyi genellikle oluşturma işleminden 24-48 saat sonra uygun kitlelere kaydolan yeni kullanıcılar veya yeni oluşturulan kitleler için yaşarsınız.
Kullanıcı mülkü Metin için:
şunu içerir,
şunu içermez,
tam olarak eşleşir,
şunu içerir: normal ifade

Sayılar için:
<, ≤, =, ≥, >
Analytics kullanıcı özelliği, bir denemeye dahil edilebilecek kullanıcıları seçmek için kullanılır ve kullanıcı özelliği değerlerini belirlemek için bir dizi seçenek sunar.

İstemcide, kullanıcı özellikleri için yalnızca dize değerleri ayarlayabilirsiniz. Remote Config hizmeti, sayısal operatörlerin kullanıldığı koşullar için ilgili kullanıcı özelliğinin değerini bir tam sayıya/kayanlığa dönüştürür.
Şu normal ifadeyi içerir operatörünü kullanırken RE2 biçiminde normal ifadeler oluşturabilirsiniz. Normal ifadeniz, hedef sürüm dizesinin tamamı veya bir kısmıyla eşleşebilir. Bir hedef dizenin başlangıcı, sonu veya tamamı ile eşleştirmek için ^ ve $ çapalarını da kullanabilirsiniz.
Ülke/Bölge Yok Denemeye dahil edilebilecek kullanıcıları seçmek için kullanılan bir veya daha fazla ülke veya 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ış Şundan fazla:
Şundan küçük:
Arada
Kullanıcıları, uygulamanızı ilk açtıkları tarihe göre (gün cinsinden) hedefleyin.
Son uygulama etkileşimi Şundan fazla:
Şundan küçük:
Arada
Kullanıcıları uygulamanızla en son ne zaman etkileşimde bulunduklarına göre hedefleyin (gün cinsinden).

A/B Testi metrikleri

Denemenizi oluştururken, kazanan varyantı belirlemek için kullanılan bir birincil veya hedef metriği seçersiniz. Her deneme varyantının performansını daha iyi anlamanıza yardımcı olması için diğer metrikleri de takip etmeniz ve kullanıcıyı elde tutma, uygulama kararlılığı ve uygulama içi satın alma geliri gibi her varyant için farklı olabilecek önemli trendleri takip etmeniz gerekir. Denemenizde en fazla beş hedef olmayan metrik izleyebilirsiniz.

Örneğin, uygulamanıza yeni uygulama içi satın alma işlemleri eklediğinizi ve iki farklı "otomatik hatırlatma" mesajının etki düzeyini karşılaştırmak istediğinizi varsayalım. Bu durumda, kazanan varyantın en yüksek uygulama içi satın alma geliriyle sonuçlanan bildirimi temsil etmesini istediğiniz için hedef metriğiniz olarak Satın alma geliri'ni ayarlamayı seçebilirsiniz. Hangi varyantın gelecekte daha fazla dönüşümle sonuçlandığını ve kullanıcıların elde tutulmasını sağladığını izlemek istediğiniz için aşağıdakileri İzlenecek diğer metrikler bölümüne ekleyebilirsiniz:

  • Toplam uygulama içi satın alma işlemi ile reklam gelirinizin iki varyant arasında nasıl farklılık gösterdiğini öğrenmek için tahmini toplam gelir
  • Günlük/haftalık kullanıcı elde tutma oranınızı takip etmek 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ığı hakkında ayrıntılı bilgi verilmektedir.

Hedef metrikleri

Metrik Açıklama
Kilitlenme sorunu yaşamayan kullanıcılar Deneme sırasında Firebase Crashlytics SDK tarafından 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 için birleşik değer ve tahmini reklam gelirleri.
Satın alma geliri Tüm purchase ve in_app_purchase etkinlikleri için birleştirilmiş değer.
Elde tutma (1 gün) Günlük olarak uygulamanıza geri gelen 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ı sayısı.
Elde tutma (4-7 gün) 4-7 gün içinde uygulamanıza geri dönen kullanıcı sayısı.
Elde tutma (8-14 gün) 8-14 gün içinde uygulamanıza geri dönen kullanıcı sayısı.
Elde tutma (en az 15 gün) Uygulamanızı son kullanmalarından en az 15 gün sonra uygulamanıza 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ğidir. 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 bir Analytics etkinliği (yalnızca Android).
notification_receive Uygulama arka plandayken Bildirim oluşturucu tarafından gönderilen bir bildirim alındığında tetiklenen bir Analytics etkinliğidir (yalnızca Android).
os_update Cihaz işletim sisteminin yeni sürüme güncellemelerini izleyen bir Analytics etkinliği.Daha fazla bilgi edinmek için Otomatik olarak toplanan etkinlikler bölümüne bakın.
screen_view Uygulamanızda görüntülenen ekranları izleyen bir Analytics etkinliğidir. Daha fazla bilgi edinmek için Ekran Görüntülemelerini İzleme bölümüne bakın.
session_start Uygulamanızdaki kullanıcı oturumlarını sayan bir Analytics etkinliği. Daha fazla bilgi için Otomatik olarak toplanan etkinlikler bölümüne bakın.

BigQuery verilerini dışa aktarma

Firebase konsolunda A/B Testi deneme verilerini görüntülemenin yanı sıra, BigQuery'de deneme verilerini de inceleyebilir ve analiz edebilirsiniz. A/B Testi'nde 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ğidir ve userProperty.value.string_value, deneme varyantının (sıfır tabanlı) dizinini içerir.

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

Başlamak için bu kılavuzda açıklandığı şekilde aşağıdaki adımları uygulayın:

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

Firebase konsolunda Google Analytics için BigQuery Export'u etkinleştirme

Spark planını kullanıyorsanız Korumalı alan sınırlarına tabi olarak BigQuery'ye ücretsiz olarak erişmek için BigQuery korumalı alanını kullanabilirsiniz. Daha fazla bilgi için Fiyatlandırma ve BigQuery korumalı alanı bölümüne bakın.

Öncelikle, Analytics verilerinizi BigQuery'ye aktardığınızdan emin olun:

  1. Firebase konsolundaki > Proje ayarları üzerinden erişebileceğiniz Entegrasyonlar sekmesini açın.
  2. BigQuery'yi halihazırda diğer Firebase hizmetleriyle kullanıyorsanız Yönet'i tıklayın. Aksi takdirde, Bağla'yı tıklayın.
  3. Firebase'i BigQuery'ye Bağlama Hakkında bölümünü inceleyin, ardından Sonraki'yi tıklayın.
  4. Entegrasyonu yapılandır 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'ye bağla'yı tıklayın.

Verileri dışa aktarma yönteminize bağlı olarak tabloların kullanılabilir hale gelmesi bir günü bulabilir. Proje verilerini BigQuery'ye aktarma hakkında daha fazla bilgi için Proje verilerini BigQuery'ye aktarma başlıklı makaleyi inceleyin.

BigQuery'de A/B Testi verilerine erişme

Belirli bir denemeye ait verileri sorgulamadan önce, sorgunuzda kullanmak üzere aşağıdakilerin bir kısmını veya tamamını edinmeniz gerekir:

  • Deneme kimliği: Bu bilgiyi Denemeye genel bakış sayfasının URL'sinden edinebilirsiniz. Örneğin, URL'niz https://console.firebase.google.com/project/my_firebase_project/config/experiment/results/25 gibi görünüyorsa deneme kimliği 25'tir.
  • Google Analytics mülk kimliği: 9 haneli Google Analytics mülk kimliğinizdir. Google Analytics'te bulabilirsiniz. Google Analytics etkinlik tablonuzun adını (project_name.analytics_000000000.events) gösterecek şekilde proje adınızı genişlettiğinizde de BigQuery'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 son ekiyle tanımlanan tablolar) sınırlandırmanız önerilir. Bu nedenle, denemeniz 2 Şubat 2024 ile 2 Mayıs 2024 arasında çalıştırıldıysa _TABLE_SUFFIX between '20240202' AND '20240502' değerini belirtirsiniz. Bir örnek için Belirli bir denemenin değerlerini seçme bölümüne bakın.
  • Etkinlik adları: Bunlar genellikle denemede yapılandırdığınız hedef metriklerinize karşılık gelir. Örneğin, in_app_purchase etkinlikleri, ad_impression veya user_retention etkinlikleri.

Bu bilgileri topladıktan sonra, sorgunuzu oluşturmak için ihtiyacınız olan bilgileri kullanın:

  1. Google Cloud konsolunda BigQuery'yi açın.
  2. Projenizi ve ardından SQL sorgusu oluştur'u seçin.
  3. Sorgunuzu ekleyin. Çalıştırılacak 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şturulan sorgusunu kullanarak deneme verilerini sorgulama

Blaze planını kullanıyorsanız Denemeye genel bakış sayfasında deneme adını, varyantları, etkinlik adlarını ve görüntülediğiniz denemeyle ilgili etkinlik sayısını döndüren bir örnek sorgu sağlanır.

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

  1. Firebase konsolunda A/B Testi'ni açın ve sorgulamak istediğiniz A/B Testi denemesini seçerek Denemeye genel bakış'ı açın.
  2. Seçenekler menüsünde, BigQuery entegrasyonu'nun altındaki Sorgu deneme verileri'ni seçin. Bu işlem, projenizi Google Cloud Console'daki BigQuery'de açar ve deneme verilerinizi sorgulamak için kullanabileceğiniz temel bir sorgu sağlar.

Aşağıdaki örnekte, "Kışın karşılama denemesi" adlı üç varyantlı (referans dahil) bir deneme için oluşturulmuş bir sorgu gösterilmektedir. Her etkinliğin etkin deneme adını, varyant adını, benzersiz etkinliği ve etkinlik sayısını döndürür. Sorgu oluşturucunun tablo adında projenizin adını belirtmediğini unutmayın. Çünkü doğrudan projenizin içinde açılır.

  /*
    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

Daha fazla sorgu örneği için Örnek sorguları keşfetme bölümüne gidin.

Örnek sorguları keşfedin

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

Tüm denemelerden satın alma ve deneme standart sapma değerlerini çıkarın

Firebase A/B Testi sonuçlarını bağımsız olarak doğrulamak için deneme sonuçları verilerini kullanabilirsiniz. Aşağıdaki BigQuery SQL ifadesi, deneme varyantlarını ve her bir varyanttaki benzersiz kullanıcı sayısını çıkarır. Ayrıca, _TABLE_SUFFIX başlangıç ve bitiş tarihleri olarak belirtilen zaman aralığındaki tüm denemelerin standart sapmaları ile in_app_purchase ve ecommerce_purchase etkinliklerinden elde edilen toplam geliri ve standart sapmaları toplar. Firebase'in sağladığı sonuçların kendi analizinizle eşleştiğini doğrulamak amacıyla, bu sorgudan elde ettiğiniz verileri tek kuyruklu t testleri için istatistiksel anlamlılık oluşturucuyla kullanabilirsiniz.

A/B Testi'nin çıkarımı nasıl hesapladığı hakkında daha fazla bilgi için Test sonuçlarını yorumlama konusuna bakın.

  /*
    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çin

Aşağıdaki örnek sorgu, BigQuery'de belirli bir deneme için verilerin nasıl alınacağını gösterir. Bu örnek sorgu deneme adını, varyant adlarını (Referans değer 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