A/B टेस्टिंग की मदद से, Firebase रिमोट कॉन्फ़िगरेशन के प्रयोग बनाना

जब आपको Firebase Remote Config का इस्तेमाल करके, ऐक्टिव उपयोगकर्ताओं वाले किसी ऐप्लिकेशन के लिए सेटिंग डिप्लॉय करनी हों, तो आपको यह पक्का करना होगा कि आपने इसे सही तरीके से किया हो. A/B Testing एक्सपेरिमेंट का इस्तेमाल करके, इन बातों का सबसे सही तरीके से पता लगाया जा सकता है:

  • उपयोगकर्ता अनुभव को ऑप्टिमाइज़ करने के लिए, किसी सुविधा को लागू करने का सबसे सही तरीका. अक्सर, ऐप्लिकेशन डेवलपर को तब तक यह पता नहीं चलता कि उनके उपयोगकर्ताओं को कोई नई सुविधा या अपडेट किया गया उपयोगकर्ता अनुभव पसंद नहीं है, जब तक कि ऐप्लिकेशन स्टोर में उनके ऐप्लिकेशन की रेटिंग कम नहीं हो जाती. A/B टेस्टिंग से यह पता लगाया जा सकता है कि आपके उपयोगकर्ताओं को सुविधाओं के नए वर्शन पसंद हैं या वे ऐप्लिकेशन के मौजूदा वर्शन को पसंद करते हैं. इसके अलावा, ज़्यादातर उपयोगकर्ताओं को बेसलाइन ग्रुप में रखने से यह पक्का किया जा सकता है कि आपका ज़्यादातर उपयोगकर्ता आधार, आपके ऐप्लिकेशन का इस्तेमाल जारी रख सके. साथ ही, जब तक एक्सपेरिमेंट पूरा नहीं हो जाता, तब तक ऐप्लिकेशन के व्यवहार या दिखने के तरीके में कोई बदलाव नहीं होगा.
  • कारोबार के लक्ष्य के लिए, उपयोगकर्ता अनुभव को ऑप्टिमाइज़ करने का सबसे अच्छा तरीका. कभी-कभी, रेवेन्यू या ग्राहकों को बनाए रखने जैसी मेट्रिक को ज़्यादा से ज़्यादा करने के लिए, प्रॉडक्ट में बदलाव किए जाते हैं. A/B टेस्टिंग की मदद से, कारोबार का लक्ष्य सेट किया जाता है. इसके बाद, Firebase आंकड़ों का विश्लेषण करता है. इससे यह पता चलता है कि चुने गए लक्ष्य के लिए, कोई वैरिएंट बेसलाइन से बेहतर परफ़ॉर्म कर रहा है या नहीं.

बेसलाइन के साथ सुविधा के वैरिएंट का A/B टेस्ट करने के लिए, यह तरीका अपनाएं:

  1. अपना एक्सपेरिमेंट बनाएं.
  2. टेस्ट डिवाइस पर अपने एक्सपेरिमेंट की पुष्टि करें.
  3. अपने एक्सपेरिमेंट मैनेज करें.

एक प्रयोग बनाएं

Remote Config एक्सपेरिमेंट की मदद से, एक या उससे ज़्यादा Remote Config पैरामीटर पर कई वैरिएंट का आकलन किया जा सकता है.

  1. Firebase कंसोल में साइन इन करें और पुष्टि करें कि आपके प्रोजेक्ट में Google Analytics चालू है, ताकि एक्सपेरिमेंट को Analytics डेटा का ऐक्सेस मिल सके.

    अगर आपने प्रोजेक्ट बनाते समय Google Analytics चालू नहीं किया था, तो इसे इंटिग्रेशन टैब पर जाकर चालू किया जा सकता है. इस टैब को ऐक्सेस करने के लिए, Firebase कंसोल में > प्रोजेक्ट सेटिंग पर जाएं.

  2. Firebase कंसोल के नेविगेशन मेन्यू में मौजूद, उपयोगकर्ता गतिविधि सेक्शन में जाकर, A/B Testing पर क्लिक करें.

  3. एक्सपेरिमेंट बनाएं पर क्लिक करें. इसके बाद, जिस सेवा के लिए एक्सपेरिमेंट करना है उसके लिए, Remote Config चुनें.

  4. अपने एक्सपेरिमेंट के लिए नाम और जानकारी (ज़रूरी नहीं) डालें. इसके बाद, आगे बढ़ें पर क्लिक करें.

  5. टारगेटिंग फ़ील्ड में जानकारी भरें. इसके लिए, सबसे पहले वह ऐप्लिकेशन चुनें जो आपके एक्सपेरिमेंट का इस्तेमाल करता है. अपने एक्सपेरिमेंट में हिस्सा लेने के लिए, उपयोगकर्ताओं के सबसेट को भी टारगेट किया जा सकता है. इसके लिए, और पर क्लिक करें. इसके बाद, यहां दी गई सूची में से विकल्प चुनें:

    • वर्शन: आपके ऐप्लिकेशन का एक या उससे ज़्यादा वर्शन
    • बिल्ड नंबर: ऐप्लिकेशन का वर्शन कोड
    • भाषाएं: एक या एक से ज़्यादा भाषाएं और स्थान-भाषाएं, जिनका इस्तेमाल उन उपयोगकर्ताओं को चुनने के लिए किया जाता है जिन्हें एक्सपेरिमेंट में शामिल किया जा सकता है
    • देश/इलाका: एक या एक से ज़्यादा देश या इलाके, जहां रहने वाले उपयोगकर्ताओं को एक्सपेरिमेंट में शामिल करना है
    • उपयोगकर्ता ऑडियंस: Analytics ऐसी ऑडियंस जिनका इस्तेमाल उन उपयोगकर्ताओं को टारगेट करने के लिए किया जाता है जिन्हें एक्सपेरिमेंट में शामिल किया जा सकता है
    • उपयोगकर्ता प्रॉपर्टी: एक या उससे ज़्यादा Analytics उपयोगकर्ता प्रॉपर्टी. इनका इस्तेमाल उन उपयोगकर्ताओं को चुनने के लिए किया जाता है जिन्हें एक्सपेरिमेंट में शामिल किया जा सकता है
    • पहली बार ऐप्लिकेशन खोलना: उन उपयोगकर्ताओं को टारगेट करें जिन्होंने पहली बार आपका ऐप्लिकेशन खोला है

      पहली बार ऐप्लिकेशन खोलने के समय के हिसाब से उपयोगकर्ता को टारगेट करने की सुविधा, Android या iOS ऐप्लिकेशन चुनने के बाद उपलब्ध होती है. यह सुविधा, Remote Config SDK के इन वर्शन के साथ काम करती है: Apple प्लैटफ़ॉर्म SDK के 9.0.0 के बाद के वर्शन और Android SDK के 21.1.1 के बाद के वर्शन (Firebase BoM 30.3.0 के बाद के वर्शन).

      Analytics को क्लाइंट पर भी चालू किया गया हो. ऐसा पहली बार ऐप्लिकेशन खोलने के दौरान किया गया हो.

  6. टारगेट किए गए उपयोगकर्ताओं का प्रतिशत सेट करें:अपने ऐप्लिकेशन के उपयोगकर्ता आधार का वह प्रतिशत डालें जो टारगेट किए गए उपयोगकर्ताओं के लिए सेट की गई शर्तों को पूरा करता है. इस प्रतिशत को आपको अपने एक्सपेरिमेंट के बेसलाइन और एक या उससे ज़्यादा वैरिएंट के बीच बराबर बांटना है. यह 0.01% से 100% के बीच कोई भी प्रतिशत हो सकता है. उपयोगकर्ताओं को हर एक्सपेरिमेंट में रैंडम तरीके से असाइन किया जाता है. इसमें डुप्लीकेट किए गए एक्सपेरिमेंट भी शामिल हैं.

  7. अगर चाहें, तो ऐक्टिवेशन इवेंट सेट करें. इससे यह पक्का किया जा सकेगा कि आपके एक्सपेरिमेंट में सिर्फ़ उन उपयोगकर्ताओं का डेटा शामिल किया जाए जिन्होंने पहली बार कोई Analytics इवेंट ट्रिगर किया है. ध्यान दें कि टारगेटिंग के पैरामीटर से मेल खाने वाले सभी उपयोगकर्ताओं को Remote Config एक्सपेरिमेंट की वैल्यू मिलेंगी. हालांकि, एक्सपेरिमेंट के नतीजों में सिर्फ़ वे उपयोगकर्ता शामिल किए जाएंगे जो ऐक्टिवेशन इवेंट को ट्रिगर करते हैं.

    यह पक्का करने के लिए कि एक्सपेरिमेंट मान्य हो, यह ज़रूरी है कि आपने जिस इवेंट को चुना है वह आपके ऐप्लिकेशन में फ़ेच की गई कॉन्फ़िगरेशन वैल्यू चालू होने के बाद ट्रिगर हो. इसके अलावा, इन इवेंट का इस्तेमाल नहीं किया जा सकता, क्योंकि ये हमेशा फ़ेच की गई वैल्यू के चालू होने से पहले होते हैं:

    • app_install
    • app_remove
    • app_update
    • dynamic_link_first_open
  8. एक्सपेरिमेंट के लक्ष्यों के लिए, ट्रैक की जाने वाली मुख्य मेट्रिक चुनें. साथ ही, सूची से वे मेट्रिक जोड़ें जिन्हें आपको ट्रैक करना है. इनमें पहले से मौजूद ऑब्जेक्टिव शामिल हैं. जैसे, खरीदारी, रेवेन्यू, उपयोगकर्ता बनाए रखना, क्रैश-फ़्री उपयोगकर्ता वगैरह. Analytics कन्वर्ज़न इवेंट और अन्य Analytics इवेंट. पूरा हो जाने पर, आगे बढ़ें पर क्लिक करें.

  9. वैरिएंट सेक्शन में जाकर, एक्सपेरिमेंट के लिए कोई बेसलाइन और कम से कम एक वैरिएंट चुनें. चुनें या नया बनाएं सूची का इस्तेमाल करके, एक्सपेरिमेंट के लिए एक या उससे ज़्यादा पैरामीटर जोड़ें. ऐसा पैरामीटर बनाया जा सकता है जिसका इस्तेमाल Firebase कंसोल में पहले नहीं किया गया है. हालांकि, इसका असर तब ही होगा, जब यह आपके ऐप्लिकेशन में मौजूद हो. अपने एक्सपेरिमेंट में एक से ज़्यादा पैरामीटर जोड़ने के लिए, इस चरण को दोहराएं.

  10. (ज़रूरी नहीं) अपने एक्सपेरिमेंट में एक से ज़्यादा वैरिएंट जोड़ने के लिए, एक और वैरिएंट जोड़ें पर क्लिक करें.

  11. चुनिंदा वैरिएंट के लिए, एक या उससे ज़्यादा पैरामीटर बदलें. बदलाव न किए गए पैरामीटर, एक्सपेरिमेंट में शामिल न होने वाले उपयोगकर्ताओं के लिए एक जैसे होते हैं.

  12. वैरिएंट के ट्रैफ़िक को बड़ा करके, एक्सपेरिमेंट के लिए वैरिएंट का ट्रैफ़िक देखें या उसमें बदलाव करें. डिफ़ॉल्ट रूप से, हर वैरिएंट का वेट एक बराबर होता है. ध्यान दें कि वैरिएंट के वेट को घटाने या बढ़ाने से डेटा कलेक्शन में लगने वाला समय बढ़ सकता है और एक्सपेरिमेंट शुरू होने के बाद, वेट में बदलाव नहीं किया जा सकता.

  13. अपने एक्सपेरिमेंट को सेव करने के लिए, समीक्षा करें पर क्लिक करें.

हर प्रोजेक्ट में ज़्यादा से ज़्यादा 300 एक्सपेरिमेंट किए जा सकते हैं. इनमें से ज़्यादा से ज़्यादा 24 एक्सपेरिमेंट चालू हो सकते हैं. बाकी एक्सपेरिमेंट ड्राफ़्ट के तौर पर सेव किए जा सकते हैं या पूरे किए जा सकते हैं.

टेस्ट डिवाइस पर अपने एक्सपेरिमेंट की पुष्टि करना

Firebase के हर इंस्टॉलेशन के लिए, उससे जुड़ा इंस्टॉलेशन ऑथराइज़ेशन टोकन वापस पाया जा सकता है. इस टोकन का इस्तेमाल करके, अपने ऐप्लिकेशन के साथ इंस्टॉल किए गए टेस्ट डिवाइस पर, एक्सपेरिमेंट के अलग-अलग वर्शन की जांच की जा सकती है. टेस्ट डिवाइस पर एक्सपेरिमेंट की पुष्टि करने के लिए, यह तरीका अपनाएं:

  1. इंस्टॉल करने के लिए पुष्टि करने वाला टोकन इस तरह पाएं:

    Swift

    do {
      let result = try await Installations.installations()
        .authTokenForcingRefresh(true)
      print("Installation auth token: \(result.authToken)")
    } catch {
      print("Error fetching token: \(error)")
    }

    Objective-C

    [[FIRInstallations installations] authTokenForcingRefresh:true
                                                   completion:^(FIRInstallationsAuthTokenResult *result, NSError *error) {
      if (error != nil) {
        NSLog(@"Error fetching Installation token %@", error);
        return;
      }
      NSLog(@"Installation auth token: %@", [result authToken]);
    }];

    Java

    FirebaseInstallations.getInstance().getToken(/* forceRefresh */true)
            .addOnCompleteListener(new OnCompleteListener<InstallationTokenResult>() {
        @Override
        public void onComplete(@NonNull Task<InstallationTokenResult> task) {
            if (task.isSuccessful() && task.getResult() != null) {
                Log.d("Installations", "Installation auth token: " + task.getResult().getToken());
            } else {
                Log.e("Installations", "Unable to get Installation auth token");
            }
        }
    });

    Kotlin

    val forceRefresh = true
    FirebaseInstallations.getInstance().getToken(forceRefresh)
        .addOnCompleteListener { task ->
            if (task.isSuccessful) {
                Log.d("Installations", "Installation auth token: " + task.result?.token)
            } else {
                Log.e("Installations", "Unable to get Installation auth token")
            }
        }

    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.Installations.FirebaseInstallations.DefaultInstance.GetTokenAsync(forceRefresh: true).ContinueWith(
      task => {
        if (!(task.IsCanceled || task.IsFaulted) && task.IsCompleted) {
          UnityEngine.Debug.Log(System.String.Format("Installations token {0}", task.Result));
        }
      });
  2. Firebase कंसोल के नेविगेशन बार में, A/B टेस्टिंग पर क्लिक करें.
  3. ड्राफ़्ट पर क्लिक करें. रिमोट कॉन्फ़िगरेशन एक्सपेरिमेंट के लिए, चल रहा है पर क्लिक करें. अपने एक्सपेरिमेंट पर कर्सर घुमाएं. इसके बाद, कॉन्टेक्स्ट मेन्यू () पर क्लिक करें. फिर, टेस्ट डिवाइस मैनेज करें पर क्लिक करें.
  4. टेस्ट डिवाइस के लिए, इंस्टॉलेशन का पुष्टि करने वाला टोकन डालें. इसके बाद, एक्सपेरिमेंट का वह वैरिएंट चुनें जिसे उस टेस्ट डिवाइस पर भेजना है.
  5. ऐप्लिकेशन चलाएं और पुष्टि करें कि चुने गए वैरिएंट को टेस्ट डिवाइस पर दिखाया जा रहा है.

Firebase इंस्टॉलेशन के बारे में ज़्यादा जानने के लिए, Firebase इंस्टॉलेशन मैनेज करें लेख पढ़ें.

एक्सपेरिमेंट मैनेज करना

Remote Config, सूचना कंपोज़र या Firebase In-App Messaging का इस्तेमाल करके एक्सपेरिमेंट बनाया जा सकता है. इसके बाद, एक्सपेरिमेंट की पुष्टि करके उसे शुरू किया जा सकता है. एक्सपेरिमेंट के चालू रहने के दौरान, उसे मॉनिटर किया जा सकता है. साथ ही, चालू एक्सपेरिमेंट में शामिल उपयोगकर्ताओं की संख्या बढ़ाई जा सकती है.

एक्सपेरिमेंट पूरा होने के बाद, सबसे अच्छा परफ़ॉर्म करने वाले वैरिएंट में इस्तेमाल की गई सेटिंग नोट की जा सकती हैं. इसके बाद, उन सेटिंग को सभी उपयोगकर्ताओं के लिए रोल आउट किया जा सकता है. इसके अलावा, कोई दूसरा एक्सपेरिमेंट भी चलाया जा सकता है.

एक प्रयोग शुरू करें

  1. Firebase कंसोल के नेविगेशन मेन्यू में मौजूद, उपयोगकर्ता गतिविधि सेक्शन में जाकर, A/B Testing पर क्लिक करें.
  2. ड्राफ़्ट पर क्लिक करें. इसके बाद, अपने एक्सपेरिमेंट के टाइटल पर क्लिक करें.
  3. यह पुष्टि करने के लिए कि आपके ऐप्लिकेशन के उपयोगकर्ताओं को एक्सपेरिमेंट में शामिल किया जाएगा, ड्राफ़्ट की जानकारी को बड़ा करें. इसके बाद, टारगेटिंग और डिस्ट्रिब्यूशन सेक्शन में, 0% से ज़्यादा संख्या देखें. उदाहरण के लिए, ज़रूरी शर्तें पूरी करने वाले 1% उपयोगकर्ता.
  4. अपने एक्सपेरिमेंट में बदलाव करने के लिए, बदलाव करें पर क्लिक करें.
  5. अपना एक्सपेरिमेंट शुरू करने के लिए, एक्सपेरिमेंट शुरू करें पर क्लिक करें. हर प्रोजेक्ट के लिए एक साथ, ज़्यादा से ज़्यादा 24 एक्सपेरिमेंट चलाए जा सकते हैं.

किसी एक्सपेरिमेंट को मॉनिटर करना

जब कोई एक्सपेरिमेंट कुछ समय तक चल जाता है, तब उसकी प्रोग्रेस देखी जा सकती है. साथ ही, यह भी देखा जा सकता है कि एक्सपेरिमेंट में अब तक हिस्सा लेने वाले लोगों के लिए, नतीजे कैसे दिख रहे हैं.

  1. Firebase कंसोल के नेविगेशन मेन्यू में मौजूद, उपयोगकर्ता गतिविधि सेक्शन में जाकर, A/B Testing पर क्लिक करें.
  2. चल रहा है पर क्लिक करें. इसके बाद, अपने एक्सपेरिमेंट के टाइटल पर क्लिक करें या उसे खोजें. इस पेज पर, आपको अपने चालू एक्सपेरिमेंट के बारे में अलग-अलग तरह के आंकड़े दिख सकते हैं. इनमें ये शामिल हैं:

    • बेसलाइन से% अंतर: यह किसी मेट्रिक में हुए सुधार का मेज़रमेंट है. यह मेज़रमेंट, किसी वैरिएंट की तुलना में बेसलाइन के लिए किया जाता है. इसकी गणना, वैरिएंट की वैल्यू रेंज की तुलना बेसलाइन की वैल्यू रेंज से करके की जाती है.
    • बुनियादी लाइन को पीछे छोड़ने की संभावना: यह अनुमानित संभावना है कि कोई वैरिएंट, चुनी गई मेट्रिक के लिए बुनियादी लाइन को पीछे छोड़ देगा.
    • observed_metric हर उपयोगकर्ता के हिसाब से: एक्सपेरिमेंट के नतीजों के आधार पर, यह अनुमानित रेंज है. इसमें समय के साथ मेट्रिक की वैल्यू शामिल होगी.
    • कुल observed_metric: यह बेसलाइन या वैरिएंट के लिए, देखी गई कुल वैल्यू है. इस वैल्यू का इस्तेमाल यह मेज़र करने के लिए किया जाता है कि एक्सपेरिमेंट का हर वैरिएंट कैसा परफ़ॉर्म कर रहा है. साथ ही, इसका इस्तेमाल बेहतर परफ़ॉर्मेंस, वैल्यू रेंज, बेसलाइन से बेहतर परफ़ॉर्म करने की संभावना, और सबसे अच्छा वैरिएंट होने की संभावना का हिसाब लगाने के लिए किया जाता है. मेजर की जा रही मेट्रिक के आधार पर, इस कॉलम को "हर उपयोगकर्ता के लिए अवधि," "हर उपयोगकर्ता के लिए रेवेन्यू," "उपयोगकर्ता बनाए रखने की दर" या "कन्वर्ज़न रेट" के तौर पर लेबल किया जा सकता है.
  3. एक्सपेरिमेंट के कुछ समय (FCM और In-App Messaging के लिए कम से कम सात दिन या Remote Config के लिए 14 दिन) तक चलने के बाद, इस पेज पर मौजूद डेटा से पता चलता है कि कौनसे वैरिएंट ने सबसे अच्छा परफ़ॉर्म किया है. कुछ मेज़रमेंट के साथ एक बार चार्ट भी दिया जाता है. यह चार्ट, डेटा को विज़ुअल फ़ॉर्मैट में दिखाता है.

सभी उपयोगकर्ताओं के लिए एक्सपेरिमेंट रोल आउट करना

जब एक्सपेरिमेंट को इतना समय हो जाए कि आपको लक्ष्य से जुड़ी मेट्रिक के लिए सबसे सही या "लीडर" वैरिएंट मिल जाए, तब उसे अपने सभी उपयोगकर्ताओं को दिखाया जा सकता है. इससे, आने वाले समय में सभी उपयोगकर्ताओं के लिए पब्लिश करने के लिए कोई वैरिएंट चुना जा सकता है. अगर आपके एक्सपेरिमेंट में किसी वैरिएंट की परफ़ॉर्मेंस सबसे अच्छी नहीं रही है, तब भी आपके पास सभी उपयोगकर्ताओं के लिए कोई वैरिएंट रिलीज़ करने का विकल्प होता है.

  1. Firebase कंसोल के नेविगेशन मेन्यू में मौजूद, उपयोगकर्ता गतिविधि सेक्शन में जाकर, A/B Testing पर क्लिक करें.
  2. पूरा हो गया या चल रहा है पर क्लिक करें. इसके बाद, उस एक्सपेरिमेंट पर क्लिक करें जिसे आपको सभी उपयोगकर्ताओं के लिए रिलीज़ करना है. इसके बाद, कॉन्टेक्स्ट मेन्यू () वेरिएंट रोल आउट करें पर क्लिक करें.
  3. इनमें से कोई एक तरीका अपनाकर, अपने एक्सपेरिमेंट को सभी उपयोगकर्ताओं के लिए रोल आउट करें:

    • सूचना कंपोज़र का इस्तेमाल करने वाले एक्सपेरिमेंट के लिए, लॉन्च करने के लिए मैसेज डायलॉग का इस्तेमाल करें. इससे, टारगेट किए गए उन बाकी उपयोगकर्ताओं को मैसेज भेजा जा सकेगा जो एक्सपेरिमेंट का हिस्सा नहीं थे.
    • Remote Config एक्सपेरिमेंट के लिए, कोई वैरिएंट चुनें. इससे यह तय किया जा सकेगा कि Remote Config पैरामीटर की किन वैल्यू को अपडेट करना है. एक्सपेरिमेंट बनाते समय तय की गई टारगेटिंग की शर्तें, आपके टेंप्लेट में नई शर्त के तौर पर जोड़ दी जाती हैं. इससे यह पक्का होता है कि रोलआउट का असर सिर्फ़ उन उपयोगकर्ताओं पर पड़े जिन्हें एक्सपेरिमेंट के लिए टारगेट किया गया है. बदलावों की समीक्षा करने के लिए, Remote Config में समीक्षा करें पर क्लिक करने के बाद, रोलआउट पूरा करने के लिए बदलाव पब्लिश करें पर क्लिक करें.
    • In-App Messaging एक्सपेरिमेंट के लिए, डायलॉग का इस्तेमाल करके यह तय करें कि किस वैरिएंट को स्टैंडअलोन In-App Messaging कैंपेन के तौर पर रोल आउट करना है. इसे चुनने के बाद, आपको FIAM की कंपोज़ स्क्रीन पर रीडायरेक्ट कर दिया जाता है. यहां आपको पब्लिश करने से पहले, कोई भी बदलाव करने का विकल्प मिलता है.

एक्सपेरिमेंट को बड़ा करना

अगर आपको लगता है कि किसी एक्सपेरिमेंट में, A/B Testing के लिए ज़रूरी संख्या में उपयोगकर्ता शामिल नहीं हो रहे हैं, तो एक्सपेरिमेंट को ज़्यादा से ज़्यादा लोगों तक पहुंचाया जा सकता है. इससे, ऐप्लिकेशन इस्तेमाल करने वाले ज़्यादा से ज़्यादा लोगों को एक्सपेरिमेंट दिखाया जा सकेगा.

  1. Firebase कंसोल के नेविगेशन मेन्यू में मौजूद, उपयोगकर्ता गतिविधि सेक्शन में जाकर, A/B Testing पर क्लिक करें.
  2. वह एक्सपेरिमेंट चुनें जिसमें आपको बदलाव करना है.
  3. एक्सपेरिमेंट की खास जानकारी में, कॉन्टेक्स्ट मेन्यू () पर क्लिक करें. इसके बाद, चल रहे एक्सपेरिमेंट में बदलाव करें पर क्लिक करें.
  4. टारगेटिंग डायलॉग में, एक्सपेरिमेंट में शामिल उपयोगकर्ताओं का प्रतिशत बढ़ाने का विकल्प दिखता है. मौजूदा प्रतिशत से ज़्यादा कोई संख्या चुनें और पब्लिश करें पर क्लिक करें. एक्सपेरिमेंट को, आपके तय किए गए प्रतिशत के हिसाब से उपयोगकर्ताओं के लिए रोल आउट किया जाएगा.

किसी एक्सपेरिमेंट को डुप्लीकेट करना या उसे रोकना

  1. Firebase कंसोल के नेविगेशन मेन्यू में मौजूद, उपयोगकर्ता गतिविधि सेक्शन में जाकर, A/B Testing पर क्लिक करें.
  2. पूरे हो चुके या चल रहे हैं पर क्लिक करें. इसके बाद, अपने एक्सपेरिमेंट पर पॉइंटर घुमाएं, कॉन्टेक्स्ट मेन्यू () पर क्लिक करें, और फिर एक्सपेरिमेंट डुप्लीकेट करें या एक्सपेरिमेंट रोकें पर क्लिक करें.

उपयोगकर्ता को टारगेट करना

उपयोगकर्ता को टारगेट करने से जुड़ी इन शर्तों का इस्तेमाल करके, उन उपयोगकर्ताओं को टारगेट किया जा सकता है जिन्हें आपको अपने एक्सपेरिमेंट में शामिल करना है.

टारगेटिंग का मानदंड ऑपरेटर    वैल्यू ध्यान दें
वर्शन शामिल है,
शामिल नहीं है,
पूरी तरह से मैच करता है,
रेगुलर एक्सप्रेशन शामिल है
ऐप्लिकेशन के एक या उससे ज़्यादा वर्शन के लिए वैल्यू डालें. इन वर्शन को आपको एक्सपेरिमेंट में शामिल करना है.

शामिल है, शामिल नहीं है या पूरी तरह से मेल खाता है ऑपरेटर में से किसी का भी इस्तेमाल करते समय, कॉमा लगाकर अलग की गई वैल्यू की सूची दी जा सकती है.

contains regex ऑपरेटर का इस्तेमाल करते समय, RE2 फ़ॉर्मैट में रेगुलर एक्सप्रेशन बनाए जा सकते हैं. आपका रेगुलर एक्सप्रेशन, टारगेट वर्शन स्ट्रिंग के सभी या कुछ हिस्से से मैच कर सकता है. टारगेट स्ट्रिंग की शुरुआत, आखिर या पूरे हिस्से से मेल खाने के लिए, ^ और $ ऐंकर का इस्तेमाल भी किया जा सकता है.

उपयोगकर्ता ऑडियंस
इनमें से सभी शामिल हैं,
इनमें से कम से कम एक शामिल है,
इनमें से सभी शामिल नहीं हैं,
इनमें से कम से कम एक शामिल नहीं है
उन उपयोगकर्ताओं को टारगेट करने के लिए एक या उससे ज़्यादा Analytics ऑडियंस चुनें जिन्हें आपके एक्सपेरिमेंट में शामिल किया जा सकता है. Google Analytics ऑडियंस को टारगेट करने वाले कुछ एक्सपेरिमेंट के लिए, डेटा इकट्ठा होने में कुछ दिन लग सकते हैं. ऐसा इसलिए, क्योंकि इन पर Analytics डेटा प्रोसेसिंग में लगने वाला समय लागू होता है. आपको यह देरी नए उपयोगकर्ताओं के साथ देखने को मिल सकती है. आम तौर पर, इन उपयोगकर्ताओं को ऑडियंस की ज़रूरी शर्तें पूरी करने वाली ऑडियंस में शामिल होने के 24 से 48 घंटे बाद शामिल किया जाता है. इसके अलावा, यह देरी हाल ही में बनाई गई ऑडियंस के साथ भी देखने को मिल सकती है.

Remote Config के लिए इसका मतलब है कि अगर कोई उपयोगकर्ता तकनीकी तौर पर किसी ऑडियंस के लिए ज़रूरी शर्तें पूरी करता है, तो भी उसे एक्सपेरिमेंट में शामिल नहीं किया जाएगा. ऐसा तब होगा, जब `fetchAndActivate()` के एक्ज़ीक्यूट होने पर Analytics ने उपयोगकर्ता को ऑडियंस में नहीं जोड़ा होगा.

उपयोगकर्ता प्रॉपर्टी टेक्स्ट के लिए:
शामिल है,
शामिल नहीं है,
पूरी तरह से मेल खाता है,
रेगुलर एक्सप्रेशन शामिल है

संख्याओं के लिए:
<, ≤, =, ≥, >
Analytics उपयोगकर्ता प्रॉपर्टी का इस्तेमाल, उन उपयोगकर्ताओं को चुनने के लिए किया जाता है जिन्हें किसी एक्सपेरिमेंट में शामिल किया जा सकता है. इसमें उपयोगकर्ता प्रॉपर्टी की वैल्यू चुनने के लिए कई विकल्प होते हैं.

क्लाइंट पर, उपयोगकर्ता प्रॉपर्टी के लिए सिर्फ़ स्ट्रिंग वैल्यू सेट की जा सकती हैं. जिन शर्तों में संख्या वाले ऑपरेटर इस्तेमाल किए जाते हैं उनके लिए, Remote Config सेवा, उपयोगकर्ता प्रॉपर्टी की वैल्यू को पूर्णांक/फ़्लोट में बदल देती है.
contains regex ऑपरेटर का इस्तेमाल करते समय, RE2 फ़ॉर्मैट में रेगुलर एक्सप्रेशन बनाए जा सकते हैं. आपका रेगुलर एक्सप्रेशन, टारगेट वर्शन स्ट्रिंग के सभी या कुछ हिस्से से मैच कर सकता है. टारगेट स्ट्रिंग की शुरुआत, आखिर या पूरे हिस्से से मेल खाने के लिए, ^ और $ ऐंकर का इस्तेमाल भी किया जा सकता है.
देश/क्षेत्र लागू नहीं एक या उससे ज़्यादा देशों या इलाकों का इस्तेमाल करके, उन उपयोगकर्ताओं को चुना जाता है जिन्हें एक्सपेरिमेंट में शामिल किया जा सकता है.  
भाषाएं लागू नहीं एक या उससे ज़्यादा भाषाओं और स्थान-भाषाओं का इस्तेमाल करके, उन उपयोगकर्ताओं को चुना जाता है जिन्हें एक्सपेरिमेंट में शामिल किया जा सकता है.  
फ़र्स्ट ओपन रिपोर्ट पहले
बाद में

पहली बार ऐप्लिकेशन खोलने वाले उपयोगकर्ताओं को टारगेट करना:

  • नए उपयोगकर्ता को चुनें, ताकि उन उपयोगकर्ताओं को टारगेट किया जा सके जिन्होंने आने वाले समय में तय की गई तारीख और समय के बाद पहली बार आपका ऐप्लिकेशन खोला है.
  • समयसीमा चुनें. इससे उन उपयोगकर्ताओं को टारगेट किया जा सकेगा जिन्होंने आपकी तय की गई तारीख और समय से पहले या बाद में, पहली बार आपका ऐप्लिकेशन खोला. किसी तय समयावधि में उपयोगकर्ताओं को टारगेट करने के लिए, पहले और बाद में की शर्तों को एक साथ इस्तेमाल करें.

पहली बार ऐप्लिकेशन खोलने वाले उपयोगकर्ताओं को टारगेट करने की सुविधा, Android या iOS ऐप्लिकेशन चुनने के बाद उपलब्ध होती है. फ़िलहाल, यह सुविधा Remote Config SDK के इन वर्शन के साथ काम करती है: Apple प्लैटफ़ॉर्म SDK v9.0.0+ और Android SDK v21.1.1+ (Firebase BoM v30.3.0+).

Analytics को पहली बार ऐप्लिकेशन खोलने के इवेंट के दौरान, क्लाइंट पर भी चालू किया गया हो.

A/B Testing मेट्रिक

एक्सपेरिमेंट बनाते समय, आपको एक प्राइमरी या लक्ष्य मेट्रिक चुननी होती है. इसका इस्तेमाल, सबसे अच्छा परफ़ॉर्म करने वाले वैरिएंट का पता लगाने के लिए किया जाता है. आपको अन्य मेट्रिक भी ट्रैक करनी चाहिए, ताकि आपको हर एक्सपेरिमेंट वर्शन की परफ़ॉर्मेंस को बेहतर ढंग से समझने में मदद मिल सके. साथ ही, उन अहम रुझानों को ट्रैक किया जा सके जो हर वर्शन के लिए अलग-अलग हो सकते हैं. जैसे, उपयोगकर्ता को बनाए रखना, ऐप्लिकेशन की स्थिरता, और इन-ऐप खरीदारी से मिलने वाला रेवेन्यू. अपने एक्सपेरिमेंट में, ज़्यादा से ज़्यादा पांच नॉन-गोल मेट्रिक ट्रैक की जा सकती हैं.

उदाहरण के लिए, मान लें कि आपको अपने ऐप्लिकेशन में दो अलग-अलग गेम फ़्लो लॉन्च करने के लिए Remote Config का इस्तेमाल करना है. साथ ही, आपको इन-ऐप्लिकेशन खरीदारी और विज्ञापन से मिलने वाले रेवेन्यू के लिए ऑप्टिमाइज़ करना है. हालांकि, आपको हर वैरिएंट की स्थिरता और उपयोगकर्ता को बनाए रखने की दर को भी ट्रैक करना है. इस मामले में, अनुमानित कुल रेवेन्यू को अपनी लक्ष्य मेट्रिक के तौर पर चुना जा सकता है. ऐसा इसलिए, क्योंकि इसमें इन-ऐप्लिकेशन खरीदारी से मिलने वाला रेवेन्यू और विज्ञापन से मिलने वाला रेवेन्यू शामिल होता है. इसके बाद, ट्रैक करने के लिए अन्य मेट्रिक में, ये मेट्रिक जोड़ी जा सकती हैं:

  • उपयोगकर्ता को रोज़ाना और हफ़्ते के हिसाब से बनाए रखने की दर को ट्रैक करने के लिए, उपयोगकर्ता को बनाए रखने की दर (दो से तीन दिन) और उपयोगकर्ता को बनाए रखने की दर (चार से सात दिन) को जोड़ें.
  • गेम के दो फ़्लो के बीच स्थिरता की तुलना करने के लिए, क्रैश न होने की समस्या का सामना न करने वाले उपयोगकर्ता जोड़ें.
  • हर तरह के रेवेन्यू के बारे में ज़्यादा जानकारी पाने के लिए, खरीदारी से मिला रेवेन्यू और विज्ञापन से मिला अनुमानित रेवेन्यू जोड़ें.

यहां दी गई टेबल में, लक्ष्य की मेट्रिक और अन्य मेट्रिक के कैलकुलेट होने के तरीके के बारे में जानकारी दी गई है.

लक्ष्य मेट्रिक

मेट्रिक ब्यौरा
वे उपयोगकर्ता जिनके ऐप बंद नहीं हुए उन उपयोगकर्ताओं का प्रतिशत जिन्हें आपके ऐप्लिकेशन में ऐसी गड़बड़ियों का सामना नहीं करना पड़ा जिन्हें एक्सपेरिमेंट के दौरान Firebase Crashlytics एसडीके ने पता लगाया था.
विज्ञापन से मिलने वाला अनुमानित रेवेन्यू विज्ञापन से होने वाली अनुमानित आय.
अनुमानित कुल रेवेन्यू खरीदारी और विज्ञापन से मिले अनुमानित रेवेन्यू की कुल वैल्यू.
खरीदारी से हुई आय सभी purchase और in_app_purchase इवेंट की कुल वैल्यू.
रिटेंशन (एक दिन) ऐसे लोगों की संख्या जो हर दिन आपके ऐप्लिकेशन पर वापस आते हैं.
रिटेंशन (दो से तीन दिन) ऐसे लोगों की संख्या जो दो से तीन दिनों के अंदर आपके ऐप्लिकेशन पर वापस आते हैं.
रिटेंशन (चार से सात दिन) ऐसे उपयोगकर्ताओं की संख्या जो चार से सात दिनों के अंदर आपके ऐप्लिकेशन पर वापस आते हैं.
रिटेंशन (8 से 14 दिन) ऐसे लोगों की संख्या जिन्होंने 8 से 14 दिनों के अंदर आपका ऐप्लिकेशन फिर से खोला.
रिटेंशन (15 दिन से ज़्यादा) ऐसे उपयोगकर्ताओं की संख्या जो आपके ऐप्लिकेशन का इस्तेमाल करने के 15 या उससे ज़्यादा दिनों बाद, फिर से उसका इस्तेमाल करते हैं.
first_open यह एक Analytics इवेंट है. यह तब ट्रिगर होता है, जब कोई उपयोगकर्ता ऐप्लिकेशन को इंस्टॉल या फिर से इंस्टॉल करने के बाद, पहली बार खोलता है. इसका इस्तेमाल कन्वर्ज़न फ़नल के हिस्से के तौर पर किया जाता है.

दूसरे मेट्रिक

मेट्रिक ब्यौरा
notification_dismiss यह एक Analytics इवेंट है. यह तब ट्रिगर होता है, जब सूचना कंपोज़र से भेजी गई सूचना को खारिज कर दिया जाता है. यह सिर्फ़ Android के लिए है.
notification_receive यह एक Analytics इवेंट है. यह तब ट्रिगर होता है, जब ऐप्लिकेशन के बैकग्राउंड में चालू होने पर, सूचना कंपोज़र से भेजी गई सूचना मिलती है. यह सिर्फ़ Android के लिए है.
os_update यह एक Analytics इवेंट है. इससे यह पता चलता है कि डिवाइस का ऑपरेटिंग सिस्टम कब नए वर्शन पर अपडेट किया गया. ज़्यादा जानने के लिए, अपने-आप इकट्ठा होने वाले इवेंट देखें.
screen_view यह एक Analytics इवेंट है, जो आपके ऐप्लिकेशन में देखी गई स्क्रीन को ट्रैक करता है. ज़्यादा जानने के लिए, स्क्रीन व्यू ट्रैक करना लेख पढ़ें.
session_start यह Analytics इवेंट, आपके ऐप्लिकेशन में उपयोगकर्ता के सेशन की गिनती करता है. ज़्यादा जानने के लिए, अपने-आप इकट्ठा होने वाले इवेंट देखें.

BigQuery में डेटा एक्सपोर्ट करना

Firebase कंसोल में A/B Testing एक्सपेरिमेंट का डेटा देखने के अलावा, BigQuery में एक्सपेरिमेंट के डेटा की जांच और विश्लेषण किया जा सकता है. A/B Testing में BigQuery टेबल अलग से नहीं होती है. एक्सपेरिमेंट और वैरिएंट की मेंबरशिप, Analytics इवेंट टेबल में मौजूद हर Google Analytics इवेंट पर सेव की जाती हैं.

एक्सपेरिमेंट की जानकारी देने वाली उपयोगकर्ता प्रॉपर्टी, इस फ़ॉर्म में होती हैं: userProperty.key like "firebase_exp_%" या userProperty.key = "firebase_exp_01". इनमें 01, एक्सपेरिमेंट आईडी होता है और userProperty.value.string_value में एक्सपेरिमेंट के वैरिएंट का इंडेक्स (शून्य से शुरू होने वाला) होता है.

एक्सपेरिमेंट के डेटा को एक्सट्रैक्ट करने के लिए, एक्सपेरिमेंट से जुड़ी इन उपयोगकर्ता प्रॉपर्टी का इस्तेमाल किया जा सकता है. इससे आपको एक्सपेरिमेंट के नतीजों को कई अलग-अलग तरीकों से बांटने और A/B Testing के नतीजों की पुष्टि अलग से करने की सुविधा मिलती है.

शुरू करने के लिए, इस गाइड में बताए गए तरीके से ये काम करें:

  1. Firebase कंसोल में, Google Analytics के लिए BigQuery एक्सपोर्ट करने की सुविधा चालू करना
  2. BigQuery का इस्तेमाल करके A/B Testing का डेटा ऐक्सेस करना
  3. क्वेरी के उदाहरण देखें

Firebase कंसोल में, Google Analytics के लिए BigQuery एक्सपोर्ट करने की सुविधा चालू करें

अगर आपने Spark प्लान लिया है, तो BigQuery सैंडबॉक्स का इस्तेमाल करके, बिना किसी शुल्क के BigQuery को ऐक्सेस किया जा सकता है. हालांकि, ऐसा सैंडबॉक्स की सीमाओं के तहत किया जा सकता है. ज़्यादा जानकारी के लिए, कीमत और BigQuery सैंडबॉक्स देखें.

सबसे पहले, पक्का करें कि Analytics का डेटा BigQuery में एक्सपोर्ट किया जा रहा हो:

  1. इंटिग्रेशन टैब खोलें. इसे ऐक्सेस करने के लिए, Firebase कंसोल में जाकर > प्रोजेक्ट सेटिंग पर जाएं.
  2. अगर BigQuery का इस्तेमाल पहले से ही Firebase की अन्य सेवाओं के साथ किया जा रहा है, तो मैनेज करें पर क्लिक करें. अगर आपको ऐसा नहीं करना है, तो जोड़ें पर क्लिक करें.
  3. Firebase को BigQuery से लिंक करने के बारे में जानकारी पढ़ें. इसके बाद, आगे बढ़ें पर क्लिक करें.
  4. इंटिग्रेशन कॉन्फ़िगर करें सेक्शन में जाकर, Google Analytics टॉगल चालू करें.
  5. कोई क्षेत्र चुनें और एक्सपोर्ट सेटिंग चुनें.

  6. BigQuery से लिंक करें पर क्लिक करें.

डेटा एक्सपोर्ट करने के तरीके के आधार पर, टेबल उपलब्ध होने में एक दिन लग सकता है. प्रोजेक्ट का डेटा BigQuery में एक्सपोर्ट करने के बारे में ज़्यादा जानने के लिए, प्रोजेक्ट का डेटा BigQuery में एक्सपोर्ट करना लेख पढ़ें.

BigQuery में A/B Testing का डेटा ऐक्सेस करना

किसी एक्सपेरिमेंट के डेटा के लिए क्वेरी करने से पहले, आपको अपनी क्वेरी में इस्तेमाल करने के लिए इनमें से कुछ या सभी चीज़ें चाहिए होंगी:

  • एक्सपेरिमेंट आईडी: इसे एक्सपेरिमेंट की खास जानकारी पेज के यूआरएल से पाया जा सकता है. उदाहरण के लिए, अगर आपका यूआरएल https://console.firebase.google.com/project/my_firebase_project/config/experiment/results/25 जैसा दिखता है, तो एक्सपेरिमेंट आईडी 25 है.
  • Google Analytics प्रॉपर्टी आईडी: यह आपका नौ अंकों वाला Google Analytics प्रॉपर्टी आईडी है. यह आपको Google Analytics में दिखेगा. साथ ही, जब अपने प्रोजेक्ट के नाम को बड़ा करके Google Analytics इवेंट टेबल (project_name.analytics_000000000.events) का नाम दिखाया जाता है, तब यह BigQuery में भी दिखता है.
  • एक्सपेरिमेंट की तारीख: क्वेरी को तेज़ी से और ज़्यादा असरदार तरीके से कंपोज़ करने के लिए, यह सबसे सही तरीका है कि आप अपनी क्वेरी को Google Analytics रोज़ाना इवेंट टेबल के उन पार्टीशन तक सीमित रखें जिनमें आपके एक्सपेरिमेंट का डेटा शामिल है. ये वे टेबल होती हैं जिनके नाम के आखिर में YYYYMMDD सफ़िक्स होता है. इसलिए, अगर आपका एक्सपेरिमेंट 2 फ़रवरी, 2024 से 2 मई, 2024 तक चला, तो आपको _TABLE_SUFFIX between '20240202' AND '20240502' तय करना होगा. उदाहरण के लिए, किसी एक्सपेरिमेंट की वैल्यू चुनना लेख पढ़ें.
  • इवेंट के नाम: आम तौर पर, ये आपकी उन लक्ष्य मेट्रिक से मेल खाते हैं जिन्हें आपने एक्सपेरिमेंट में कॉन्फ़िगर किया है. उदाहरण के लिए, in_app_purchase इवेंट, ad_impression या user_retention इवेंट.
पर जाएं

क्वेरी जनरेट करने के लिए ज़रूरी जानकारी इकट्ठा करने के बाद:

  1. Google Cloud कंसोल में BigQuery खोलें.
  2. अपना प्रोजेक्ट चुनें. इसके बाद, एसक्यूएल क्वेरी बनाएं चुनें.
  3. अपनी क्वेरी जोड़ें. क्वेरी के उदाहरण देखने के लिए, क्वेरी के उदाहरण देखें पर जाएं.
  4. Run पर क्लिक करें.
पढ़ें.

Firebase कंसोल की अपने-आप जनरेट हुई क्वेरी का इस्तेमाल करके, एक्सपेरिमेंट के डेटा को क्वेरी करना

अगर Blaze प्लान का इस्तेमाल किया जा रहा है, तो एक्सपेरिमेंट की खास जानकारी पेज पर एक सैंपल क्वेरी दी जाती है. इससे आपको एक्सपेरिमेंट का नाम, वैरिएंट, इवेंट के नाम, और देखे जा रहे एक्सपेरिमेंट के लिए इवेंट की संख्या मिलती है.

अपने-आप जनरेट हुई क्वेरी को पाने और चलाने के लिए:

  1. Firebase कंसोल में, A/B Testing खोलें. इसके बाद, वह A/B Testing एक्सपेरिमेंट चुनें जिसके बारे में आपको क्वेरी करनी है. इससे एक्सपेरिमेंट की खास जानकारी खुल जाएगी.
  2. विकल्प मेन्यू में, BigQuery इंटिग्रेशन के नीचे, क्वेरी एक्सपेरिमेंट डेटा चुनें. इससे आपका प्रोजेक्ट, BigQuery Google Cloud कंसोल में खुल जाता है. साथ ही, आपको एक बुनियादी क्वेरी मिलती है, जिसका इस्तेमाल करके अपने एक्सपेरिमेंट के डेटा के बारे में क्वेरी की जा सकती है.

यहां दिए गए उदाहरण में, "सर्दियों का स्वागत करने वाला एक्सपेरिमेंट" नाम के एक्सपेरिमेंट के लिए जनरेट की गई क्वेरी दिखाई गई है. इसमें तीन वैरिएंट (बेसलिन भी शामिल है) हैं. यह हर इवेंट के लिए, चालू एक्सपेरिमेंट का नाम, वैरिएंट का नाम, यूनीक इवेंट, और इवेंट की संख्या दिखाता है. ध्यान दें कि क्वेरी बिल्डर, टेबल के नाम में आपके प्रोजेक्ट का नाम नहीं दिखाता है, क्योंकि यह सीधे आपके प्रोजेक्ट में खुलता है.

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

क्वेरी के अन्य उदाहरणों के लिए, क्वेरी के उदाहरण एक्सप्लोर करें पर जाएं.

क्वेरी के उदाहरण एक्सप्लोर करना

यहां दिए गए सेक्शन में, ऐसी क्वेरी के उदाहरण दिए गए हैं जिनका इस्तेमाल करके, A/B Testing इवेंट टेबल से A/B Testing एक्सपेरिमेंट का डेटा निकाला जा सकता है.Google Analytics

सभी एक्सपेरिमेंट से, खरीदारी और एक्सपेरिमेंट के स्टैंडर्ड डेविएशन की वैल्यू निकालना

एक्सपेरिमेंट के नतीजों के डेटा का इस्तेमाल करके, Firebase A/B Testing नतीजों की पुष्टि की जा सकती है. यहां दिया गया BigQuery SQL स्टेटमेंट, एक्सपेरिमेंट के वैरिएंट, हर वैरिएंट में यूनीक उपयोगकर्ताओं की संख्या, in_app_purchase और ecommerce_purchase इवेंट से मिले कुल रेवेन्यू का योग, और _TABLE_SUFFIX के तौर पर तय की गई शुरू और खत्म होने की तारीख के बीच के समय में हुए सभी एक्सपेरिमेंट के लिए स्टैंडर्ड डेविएशन निकालता है. इस क्वेरी से मिले डेटा का इस्तेमाल, एक-टेल वाले टी-टेस्ट के लिए सांख्यिकीय महत्व जनरेटर के साथ किया जा सकता है. इससे यह पुष्टि की जा सकती है कि Firebase से मिले नतीजे, आपके विश्लेषण से मेल खाते हैं.

A/B Testing, अनुमान का हिसाब कैसे लगाता है, इस बारे में ज़्यादा जानने के लिए, टेस्ट के नतीजों को समझना लेख पढ़ें.

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

किसी एक्सपेरिमेंट की वैल्यू चुनना

यहां दी गई उदाहरण क्वेरी में, BigQuery में किसी खास एक्सपेरिमेंट के लिए डेटा पाने का तरीका बताया गया है. इस सैंपल क्वेरी से, एक्सपेरिमेंट का नाम, वैरिएंट के नाम (इसमें बेसलाइन भी शामिल है), इवेंट के नाम, और इवेंट की संख्या मिलती है.

  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