Nedir Bu A/B Testing? Firebase Remote Config ile A/B oluşturma

Umut Sever
Arabam Labs
Published in
5 min readAug 5, 2024

A/B Test Nedir?

A/B testi, iki farklı versiyonun performansını karşılaştırarak hangisinin daha iyi sonuç verdiğini belirleyen bir test yöntemidir.

Genellikle bir kontrol grubu (A) ve bir deney grubu (B) oluşturulur ve bu gruplar rastgele seçilen kullanıcılarla test edilir. Amaç, yapılan değişikliklerin kullanıcı deneyimini nasıl etkilediğini anlamaktır.

Örneğin bir butonun rengini değiştirerek hangi rengin daha fazla tıklama aldığını görmek istiyorsunuz. A grubu kullanıcıları kırmızı butonu, B grubu ise mavi butonu görür. Belirli bir süre sonunda hangi rengin daha fazla tıklama aldığını analiz ederek en etkili rengi belirleyebilirsiniz.

A/B Test Metrikleri Nelerdir?

A/B testinin sonuçlarını analiz etmek için belirli performans metriklerini izlemek gerekir. Bu metrikler, testin amacına göre değişiklik gösterebilir. Bazı yaygın olan metrikler:

  1. Dönüşüm Oranı: Hangi versiyonun daha fazla satış veya kayıt getirdiği.
  2. Tıklanma Oranı: Hangi butonun, linkin veya alanın daha fazla tıklandığı.
  3. Kullanıcı Etkileşimi: Kullanıcıların hangi versiyonla daha fazla etkileşime geçtiği.
  4. Gelir: Hangi versiyonun daha fazla gelir getirdiği.

Bu metrikleri izleyerek bir çıkarımda bulunmak ve hangi versiyonun daha başarılı olduğunu objektif bir şekilde belirlemek için farklı analiz araçları kullanılabilir.

Bu analiz araçlarından en yaygın olanı Firebase Analytics ile panel üzerinden nasıl A/B Test yaratılabileceğine aşağıda detaylı bir şekilde bakalım.

Firebase ile A/B Test Kurulumu

A/B Test kurulumuna geçmeden, bu yazıda kullanılacak bazı kavramların basit düzeyde açıklamalarını da yazmakta fayda var.

Firebase Nedir?
Firebase, Google tarafından sunulan ve mobil ve web uygulamalarının geliştirilmesi, iyileştirilmesi ve büyütülmesi için bir dizi araç ve hizmet sağlayan bir platformdur.

Remote Config Nedir?
Firebase Remote Config, uygulamanızın davranışını ve görünümünü, uygulama güncellemesine gerek kalmadan uzaktan yapılandırmanıza olanak tanıyan bir Firebase hizmetidir. Bunu daha önce tanımlanan bir parametrenin, backend tarafından yönetilmesi, yani bir toggle gibi düşünebilirsiniz.

Bu tanımlardan sonra Firebase Console üzerinden adım adım A/B testi kurulumuna başlayabiliriz.

1.Firebase Console’a Giriş Yapın
Öncelikle Firebase Console adresine gidin ve yetkilendirilmiş hesabınız ile giriş yapın.
*https://console.firebase.google.com/

2. Projeyi Seçin
Firebase Console’da, A/B testi yapmak istediğiniz projeyi seçin. Bu proje, daha önce uygulamanız için oluşturulmuş olmalıdır.

3. Remote Config’e Gidin
Remote Config sayfasında, “Add Parameter” (Parametre Ekle) butonuna tıklayın. Burada, A/B testinde kullanacağınız parametreleri tanımlamanız gerekecek.

Parameter Key (Parametre Anahtarı): Bu, uygulamanızın kodunda kullanılacak parametre adıdır. Bu anahtar sadece aşağıdaki değeri kod tarafında çağırmak için verilen değerdir.
Örneğin, kullanıcılarımızı uygulamamızın açılış ekranında iki farklı mesaj ile karşılamak istiyoruz. Kod tarafında mesaj değerinin dinamik olarak okunabilmesi için parametre anahtarını WelcomeMessage olarak tanımlayacağız.

Default Value (Varsayılan Değer): Parametrenin varsayılan değeri olarak tanımlamanız gerekiyor. Bu değerin verebileceği data tipini de aşağıdaki ekran görüntüsünden bakabilirsiniz. Bu verilen varsayılan değer daha sonradan değiştirebilir. Bu değer farklı bir koşul eklenmediği sürece bütün kullanıcıları uygulanacak değerdir.
Örneğin bizim karşılama mesajımız için varsayılan değerimiz “Uygulamaya hoş geldin!” olsun.

5. A/B Testi Oluşturun
Console’da sol taraftaki panel A/B Testing sekmesini tıklayın, açılan sayfada sağ tarafta bulunan Create Experiment butonuna tıklayın ve Remote Config değerini seçin.

6. Test Detaylarını Girin (Basics)
Experiment Name (Deney Adı)
: Deneyinizi tanımlayan bir ad verin. Örneğin, Welcome Message Test.

Description (Açıklama): Testin amacını ve içeriğini açıklayın. Örneğin, Farklı karşılama mesajlarının kullanıcı etkileşimi üzerindeki etkisini test ediyoruz.

7. Hedef Kitleyi Seçin (Targeting)
Target User
: Testinizin hangi platformlarda yapılması istediği seçin.

Exposure: Testinizin seçtiğiniz platform kullanıcıların ne kadarını dahil etmek istediğini seçin. Bizim örneğimizde bütün kullancıları teste dahil etmek istiyoruz, bu nedenle exposure’u %100'e çekiyoruz.

Activation event: Activation event, kullanıcıların A/B testine dahil edildikleri ve değişikliklerin uygulandığı spesifik zamanı belirtir. Bu event, testin etkinliğini ve sonuçlarını doğru bir şekilde ölçmek için kritiktir, çünkü kullanıcıların test koşullarını ilk kez deneyimledikleri noktayı tanımlar.

Firebase A/B testlerinde aktivasyon olayı, kullanıcıların test edilen varyant ile etkileşime geçtikleri anı kaydeden bir tetikleyici olarak görev yapar. Bu, yalnızca test koşullarını gerçekten deneyimleyen kullanıcıların sonuçlara dahil edilmesini sağlar. Böylece, kontrol grubu ile varyant grubu arasındaki karşılaştırmaların geçerliliği korunur ve test verilerinin bütünlüğü sağlanır.

Örneğin, uygulamanızın karşılama ekranındaki “Kayıt Ol” butonunun rengini değiştirmenin daha fazla kayıt oluşturup oluşturmadığını anlamak için bir A/B testi yapıyoruz. Bu senaryoda, “Kayıt Ol” butonunu gören kaç kullanıcının olduğunu “kayıt_ol_butonu_gosterildi” activation event’i ile anlayıp, ölçümleyebiliriz.

8. Hedef Belirleyin (Goal)
Goal, A/B testinin amacını belirleyen ve test edilen değişikliklerin performansını ölçen bir metriktir. Goal, kullanıcıların belirli bir eylemi gerçekleştirmesiyle ilişkilidir ve bu eylem testin başarısını değerlendirmek için kullanılır.

Örnek Hedefler:

  • Dönüşüm Oranı: Kullanıcıların belirli bir butona tıklaması veya bir ürünü satın alması.
  • Kullanıcı Etkileşimi: Kullanıcıların bir sayfada geçirdiği süre veya belirli bir özellik ile etkileşime girmesi.
  • Gelir: Kullanıcıların yaptığı harcamalar veya satın alımlar.
  • Olaylar: Belirli bir olayın tetiklenmesi, örneğin, bir formun doldurulması veya bir videonun izlenmesi.

Bizim örneğimiz için Goal şu şekilde olabilir; kullanıcının A/B’e dahil olduğu mesaja göre profiline tıklama oranı.

9. Değişkenler (Variants)
Variants, bir A/B testinde karşılaştırılacak farklı seçeneklerdir. Her varyant, kullanıcı deneyimini farklı bir şekilde etkileyen değişiklikleri içerir. Genellikle bir kontrol grubu (orijinal versiyon) ve bir veya daha fazla deney grubu (değişiklik içeren versiyonlar) vardır.

Örnek:

  • Kontrol Grubu (Baseline): Uygulamaya hoş geldin!
  • Deney Grubu (Variant A): Uygulamaya hoş geldin Dünyalı!

Varyantları belirlemek için sol tarafta bulunan parameter kısmından Firebase Remote Config’de tanımladığımız değeri seçip, Baseline için value alanına default değerimizi girebiliriz. Bizim örneğimiz için bu değer Uygulamaya hoş geldin!. Deney grubumuz yani Variant A için ise value alanına test etmek istediğimiz diğer değer olan Uygulamaya hoş geldin Dünyalı!. girebiliriz.

Daha önceki adımlarda Exposure değerini %100 olarak belirlemiş ve bu sayede A/B testimiz için tüm kullanıcılarımızı hedeflemiştik. Varyant dağılımı ayarında ise A/B testine dahil olan kullanıcıları, istediğimiz bir yüzdesel oranda kontrol ya da deney grubuna atamış oluyoruz. Bizim örneğimiz için bütün kullanıcılarımızın yarısına Baseline yazısı, diğer yarısına da Varyant A yazısı şeklinde ayarlamış oluyoruz.

10. Deneyi Başlatın
A/B testimizi oluşturacak değerleri girdikten sonra aşağıda bulunan Review butonuna basarak testimizin kapsamını inceleyebiliriz, arından açılan sayfada sağ tarafta bulunan Start Experiment tuşuna basarak A/B testimizi başlatabiliriz.

Ta-Da, Tebrikler! Artık Firebase Remote Config ile A/B Testi oluşturabilirsiniz.

--

--