สร้างการทดสอบการกำหนดค่าระยะไกลของ Firebase พร้อมการทดสอบ A/B

เมื่อใช้ Firebase Remote Config เพื่อติดตั้งการตั้งค่าสำหรับแอปพลิเคชัน ที่มีฐานผู้ใช้ที่ใช้งานอยู่ คุณจะต้องตรวจสอบว่าการตั้งค่าถูกต้อง คุณใช้ A/B Testing การทดสอบเพื่อพิจารณาสิ่งต่อไปนี้ได้ดีที่สุด

  • วิธีที่ดีที่สุดในการใช้ฟีเจอร์เพื่อเพิ่มประสิทธิภาพประสบการณ์ของผู้ใช้ บ่อยครั้งที่นักพัฒนาแอปไม่ทราบว่าผู้ใช้ไม่ชอบฟีเจอร์ใหม่หรือ ประสบการณ์ของผู้ใช้ที่อัปเดตแล้วจนกว่าคะแนนของแอปใน App Store จะลดลง A/B Testing จะช่วยวัดว่าผู้ใช้ชอบฟีเจอร์เวอร์ชันใหม่ หรือไม่ หรือชอบแอปในรูปแบบปัจจุบันมากกว่า นอกจากนี้ การเก็บผู้ใช้ส่วนใหญ่ไว้ในกลุ่มพื้นฐานจะช่วยให้ฐานผู้ใช้ส่วนใหญ่ ยังคงใช้แอปได้โดยไม่มีการเปลี่ยนแปลงใดๆ ในลักษณะการทำงานหรือรูปลักษณ์ของแอปจนกว่าการทดสอบจะสิ้นสุดลง
  • วิธีที่ดีที่สุดในการเพิ่มประสิทธิภาพประสบการณ์ของผู้ใช้เพื่อให้บรรลุเป้าหมายทางธุรกิจ บางครั้งคุณอาจใช้การเปลี่ยนแปลงผลิตภัณฑ์เพื่อเพิ่มเมตริก เช่น รายได้หรือการคงผู้ใช้ไว้ ให้ได้สูงสุด เมื่อใช้ A/B Testing คุณจะกำหนดวัตถุประสงค์ทางธุรกิจได้ และ Firebase จะทำการวิเคราะห์ทางสถิติเพื่อพิจารณาว่าตัวแปรทำได้ดีกว่า โฆษณาฐานสำหรับวัตถุประสงค์ที่เลือกหรือไม่

หากต้องการทดสอบ A/B กับฟีเจอร์ตัวแปรโดยใช้ค่าพื้นฐาน ให้ทำดังนี้

  1. สร้างการทดสอบ
  2. จัดการการทดสอบ

สร้างการทดสอบ

Remote Configการทดสอบช่วยให้คุณประเมินตัวแปรหลายรายการในRemote Configพารามิเตอร์อย่างน้อย 1 รายการ

  1. ตรวจสอบว่าได้เปิดใช้ Google Analytics ในโปรเจ็กต์แล้วเพื่อให้การทดสอบมีสิทธิ์เข้าถึงข้อมูล Analytics

    หากไม่ได้เปิดใช้ Google Analytics เมื่อสร้างโปรเจ็กต์ คุณสามารถเปิดใช้ได้ใน การตั้งค่า > แท็บการผสานรวม ของคอนโซล Firebase

  2. ในคอนโซล Firebase ให้ไปที่ DevOps & Engagement > A/B Testing

  3. คลิกสร้างการทดสอบ แล้วเลือก Remote Config เมื่อระบบแจ้งให้เลือกบริการที่ต้องการทดสอบ

  4. ในส่วนตัวแปร ให้เลือกเกณฑ์พื้นฐานและตัวแปรอย่างน้อย 1 รายการสําหรับ การทดสอบ คุณเพิ่มพารามิเตอร์ได้มากกว่า 1 รายการเพื่อใช้ในการทดสอบ คุณ สามารถทำขั้นตอนนี้ซ้ำเพื่อเพิ่มพารามิเตอร์หลายรายการในการทดสอบ

  5. (ไม่บังคับ) หากต้องการเพิ่มเวอร์ชันในการทดสอบมากกว่า 1 รายการ ให้คลิกเพิ่ม เวอร์ชันอื่น

  6. เปลี่ยนพารามิเตอร์อย่างน้อย 1 รายการสำหรับผลิตภัณฑ์ย่อยที่เฉพาะเจาะจง พารามิเตอร์ที่ไม่มีการเปลี่ยนแปลง จะเหมือนกันสำหรับผู้ใช้ที่ไม่ได้รวมอยู่ในการทดสอบ

  7. ขยายน้ำหนักของตัวแปรเพื่อดูหรือเปลี่ยนน้ำหนักของตัวแปรสำหรับการทดสอบ แต่ค่าเริ่มต้นจะกำหนดให้ตัวแปรต่างๆ มีน้ำหนักเท่ากัน โปรดทราบว่าน้ำหนักที่ต่างกันอาจทำให้ใช้เวลาการเก็บรวบรวมข้อมูลนานขึ้น และไม่สามารถปรับเปลี่ยนน้ำหนักได้หลังจากเริ่มการทดสอบแล้ว

  8. กำหนดเกณฑ์การกำหนดเป้าหมายสำหรับการทดสอบโดยใช้ Remote Config เงื่อนไขต่อไปนี้

    • ใช้เงื่อนไขที่มีอยู่ซ้ำ: หากเงื่อนไขที่มีอยู่ในเทมเพลต Remote Configตรงกับกลุ่มเป้าหมายอยู่แล้ว ให้เลือกเงื่อนไขนั้นจากรายการ

    • ยืนยันลำดับการประเมินเงื่อนไข: ตรวจสอบว่าเงื่อนไขในหน้าเงื่อนไขจัดเรียงตามลำดับความสำคัญที่ถูกต้อง เนื่องจาก Remote Config ประเมินเงื่อนไขตามลำดับจากบนลงล่าง เงื่อนไขอื่นๆ ที่มีลำดับความสำคัญสูงกว่าจึงอาจทำให้ผู้ใช้จำนวนมากไม่ เป็นไปตามเงื่อนไขที่เชื่อมโยงกับการทดสอบ

    • สร้างเงื่อนไขใหม่: หากไม่มีเงื่อนไขที่มีอยู่ตรงตามข้อกำหนด การกำหนดเป้าหมาย หรือหากต้องการทำซ้ำเงื่อนไขที่มีอยู่ (เช่น หากไม่ต้องการใช้เงื่อนไขที่พารามิเตอร์อื่นๆ ใช้อยู่แล้ว) ให้สร้างเงื่อนไขใหม่โดยเลือกแอปที่ใช้การทดสอบก่อน หากสร้างเงื่อนไขแยกต่างหากหรือเงื่อนไขที่ซ้ำกันสำหรับการทดสอบ ให้ตรวจสอบว่าเงื่อนไขใหม่มีความสำคัญสูงกว่าเงื่อนไขที่มีอยู่ ไม่เช่นนั้นผู้ใช้จะตรงกับเงื่อนไขที่มีอยู่ก่อน และจะไม่มีผู้ใช้เข้าสู่การทดสอบ

      จากนั้นคุณจะกำหนดเป้าหมายกลุ่มย่อยของผู้ใช้ที่เฉพาะเจาะจงได้โดยคลิก and และ เลือกตัวเลือกอย่างน้อย 1 รายการจากรายการต่อไปนี้

      • เวอร์ชัน: แอปของคุณเวอร์ชันเดียวหรือหลายเวอร์ชัน
      • หมายเลขบิลด์: หมายเลขบิลด์ (Apple) หรือรหัสเวอร์ชัน (Android) ของแอป
      • แพลตฟอร์ม: แพลตฟอร์มอย่างน้อย 1 แพลตฟอร์ม (iOS, Android หรือเว็บ) ที่จะกำหนดเป้าหมาย
      • ระบบปฏิบัติการ: กำหนดเป้าหมายผู้ใช้เว็บแอปตามระบบปฏิบัติการและเวอร์ชัน
      • เบราว์เซอร์: กำหนดเป้าหมายผู้ใช้เว็บแอปตามเว็บเบราว์เซอร์และ เวอร์ชันเบราว์เซอร์
      • หมวดหมู่อุปกรณ์: กำหนดเป้าหมายผู้ใช้เว็บแอปตามว่าอุปกรณ์เป็นอุปกรณ์เคลื่อนที่หรือไม่
      • ภาษา: ภาษาและภาษาท้องถิ่นอย่างน้อย 1 รายการที่ใช้เพื่อเลือก ผู้ใช้ที่อาจรวมอยู่ในการทดสอบ
      • ประเทศ/ภูมิภาค: ประเทศ/ภูมิภาคอย่างน้อย 1 แห่งสําหรับการเลือก ผู้ใช้ที่ควรเข้าร่วมในการทดสอบ
      • กลุ่มเป้าหมายผู้ใช้: Analytics กลุ่มเป้าหมายที่ใช้กำหนดเป้าหมายผู้ใช้ที่ อาจรวมอยู่ในการทดสอบ
      • พร็อพเพอร์ตี้ผู้ใช้: Analyticsพร็อพเพอร์ตี้ผู้ใช้อย่างน้อย 1 รายการสําหรับ การเลือกผู้ใช้ที่อาจรวมอยู่ในการทดสอบ
      • ผู้ใช้ในเปอร์เซ็นต์แบบสุ่ม: กำหนดเป้าหมายผู้ใช้ตามเปอร์เซ็นต์ที่เลือกแบบสุ่ม ภายในช่วงเปอร์เซ็นต์ไทล์ที่กำหนด
      • กลุ่มเป้าหมายที่นำเข้า: กำหนดเป้าหมายผู้ใช้ที่อยู่ในกลุ่มเป้าหมายที่กำหนดเองซึ่งนำเข้า และอัปโหลดไปยังโปรเจ็กต์
      • วันที่/เวลา: กำหนดเป้าหมายผู้ใช้ตามช่วงวันที่และเวลาที่ระบุ
      • การเปิดครั้งแรก: กำหนดเป้าหมายผู้ใช้ตามครั้งแรกที่ผู้ใช้เปิดแอปของคุณ
      • รหัสการติดตั้ง: กำหนดเป้าหมายอุปกรณ์ทดสอบหรืออินสแตนซ์ไคลเอ็นต์ที่เฉพาะเจาะจงโดยใช้รหัสการติดตั้ง Firebase (FID)
      • ผู้ใช้มีอยู่: กำหนดเป้าหมายผู้ใช้ทั้งหมดในแอปทั้งหมดในโปรเจ็กต์
      • สัญญาณที่กำหนดเอง: กำหนดเป้าหมายผู้ใช้ตามสัญญาณคีย์-ค่าฝั่งไคลเอ็นต์ที่กำหนดเอง ซึ่งส่งผ่านในขณะรันไทม์
  9. กำหนดการแสดงโฆษณา: ป้อนเปอร์เซ็นต์ของฐานผู้ใช้ของแอปที่ตรงกับเกณฑ์ที่ตั้งไว้ในส่วนผู้ใช้เป้าหมาย ซึ่งคุณต้องการแบ่งอย่างเท่าๆ กันระหว่างเกณฑ์พื้นฐานกับตัวแปรอย่างน้อย 1 รายการในการทดสอบ โดยสามารถเป็นเปอร์เซ็นต์ใดก็ได้ระหว่าง 0% ถึง 100% ระบบจะสุ่มกําหนดผู้ใช้ให้กับการทดสอบแต่ละรายการ รวมถึงการทดสอบที่ซ้ำกัน

  10. (ไม่บังคับ) ตั้งค่าเหตุการณ์การเปิดใช้งานเพื่อให้แน่ใจว่าระบบจะนับเฉพาะข้อมูลจากผู้ใช้ ที่เรียกใช้Analyticsเหตุการณ์บางอย่างเป็นครั้งแรกใน การทดสอบ โปรดทราบว่าผู้ใช้ทั้งหมดที่ตรงกับพารามิเตอร์การกำหนดเป้าหมายจะได้รับRemote Configค่าทดสอบ แต่เฉพาะผู้ใช้ที่ทริกเกอร์เหตุการณ์การเปิดใช้งานเท่านั้นที่จะรวมอยู่ในผลลัพธ์การทดสอบ

    เพื่อให้การทดสอบถูกต้อง โปรดตรวจสอบว่าเหตุการณ์ที่คุณเลือกเกิดขึ้นหลังจากที่แอปเปิดใช้งานค่าการกำหนดค่าที่ดึงมา นอกจากนี้ ยังใช้เหตุการณ์ต่อไปนี้ไม่ได้เนื่องจากเหตุการณ์เหล่านี้เกิดขึ้นก่อนที่ค่าที่ดึงมาจะเปิดใช้งานเสมอ

    • app_install
    • app_remove
    • app_update

    เหตุการณ์ Analytics ที่คุณเลือกเป็นเหตุการณ์การเปิดใช้งานต้องไม่ถูกใช้เป็นเมตริกหลัก (หรือเป็นเมตริกเพิ่มเติม) ในการทดสอบเดียวกัน การทำเช่นนี้จะทําให้เกิดข้อผิดพลาดในการตรวจสอบความถูกต้องในคอนโซล Firebase และป้องกันไม่ให้การทดสอบเปิดตัว

  11. สําหรับเป้าหมายของการทดสอบ ให้เลือกเมตริกหลักที่จะติดตาม และเพิ่มเมตริกอื่นๆ ที่ต้องการติดตามจากรายการ ซึ่งรวมถึงวัตถุประสงค์ในตัว (การซื้อ รายได้ การรักษาผู้ใช้ ผู้ใช้ที่ไม่พบข้อขัดข้อง ฯลฯ) Analytics เหตุการณ์ Conversion และเหตุการณ์อื่นๆ Analytics คลิกถัดไปเมื่อเสร็จสิ้น

  12. คลิกบันทึกเพื่อบันทึกการทดสอบ คุณต้องเผยแพร่เทมเพลตเพื่อ เริ่มการทดสอบ

คุณทำการทดสอบได้สูงสุด 300 รายการต่อโปรเจ็กต์ (รวมถึงการเปิดตัว) ซึ่งอาจประกอบด้วยการทดสอบและการเปิดตัวที่กำลังดำเนินการอยู่สูงสุด 24 รายการ โดยที่เหลือเป็นการทดสอบที่เสร็จสมบูรณ์แล้ว

จัดการการทดสอบ

เมื่อสร้างการทดสอบด้วย Remote Config คุณจะเริ่มการทดสอบ ตรวจสอบการทดสอบขณะที่ดำเนินการอยู่ และเพิ่มจำนวน ผู้ใช้ที่รวมอยู่ในการทดสอบที่ดำเนินการอยู่ได้

เมื่อการทดสอบเสร็จสิ้นแล้ว คุณสามารถจดบันทึกการตั้งค่าที่ใช้โดย ตัวแปรที่ได้ผลลัพธ์ดีที่สุด แล้วนำการตั้งค่าเหล่านั้นไปใช้กับผู้ใช้ทั้งหมด หรือคุณจะทำการทดสอบ อื่นก็ได้

แก้ไขการทดสอบ

  1. ในส่วน DevOps และการมีส่วนร่วมของเมนูการนำทางในFirebase Console ให้คลิก Remote Config
  2. คลิกแท็บการทดสอบ A/B
  3. คลิกกำลังทำงาน แล้วคลิกการทดสอบที่ต้องการแก้ไข
  4. คลิกเมนูบริบท () แล้วคลิก แก้ไขการทดสอบที่กําลังทํางาน
  5. หากต้องการตรวจสอบว่าแอปของคุณมีผู้ใช้ที่จะรวมไว้ในการทดสอบ ให้ขยายรายละเอียดและตรวจสอบว่ามีตัวเลขที่มากกว่า 0% ในส่วนการกำหนดเป้าหมายและการเผยแพร่ (เช่น ผู้ใช้ 1% ที่ตรงกับเกณฑ์)

ติดตามการทดสอบ

เมื่อการทดสอบทำงานไปสักระยะ คุณสามารถตรวจสอบความคืบหน้าและดูผลลัพธ์สำหรับผู้ใช้ที่เข้าร่วมการทดสอบจนถึงตอนนี้

  1. ในส่วน DevOps และการมีส่วนร่วมของเมนูการนำทางในFirebase Console ให้คลิก Remote Config
  2. คลิกแท็บการทดสอบ A/B
  3. คลิกกำลังทำงาน แล้วคลิกหรือค้นหาชื่อการทดสอบ ในหน้านี้ คุณจะดูสถิติต่างๆ ที่สังเกตได้และสถิติโดยประมาณ เกี่ยวกับการทดสอบที่กำลังดำเนินการ รวมถึงข้อมูลต่อไปนี้

    • % ส่วนต่างจากเกณฑ์พื้นฐาน: การวัดการปรับปรุงเมตริก สำหรับตัวแปรที่กำหนดเมื่อเทียบกับเกณฑ์พื้นฐาน คำนวณโดยการเปรียบเทียบ ช่วงค่าของตัวแปรกับช่วงค่าของเกณฑ์พื้นฐาน
    • ความน่าจะเป็นที่จะสูงกว่าเกณฑ์พื้นฐาน: ความน่าจะเป็นโดยประมาณที่ตัวแปรหนึ่งๆ จะมีประสิทธิภาพสูงกว่าเกณฑ์พื้นฐานสำหรับเมตริกที่เลือก
    • observed_metricต่อผู้ใช้: อิงตามผลการทดสอบ นี่คือช่วงที่คาดการณ์ไว้ซึ่งค่าเมตริกจะอยู่ในช่วงนี้เมื่อเวลาผ่านไป
    • ทั้งหมด observed_metric: มูลค่าสะสมที่สังเกตได้สำหรับ พื้นฐานหรือตัวแปร ระบบจะใช้ค่านี้เพื่อวัดประสิทธิภาพของตัวแปรการทดสอบแต่ละรายการ และใช้ในการคำนวณการปรับปรุง ช่วงค่า ความน่าจะเป็นที่จะสูงกว่าเกณฑ์พื้นฐาน และความน่าจะเป็นที่จะเป็นตัวแปรที่ดีที่สุด คอลัมน์นี้อาจมีป้ายกำกับว่า "ระยะเวลาต่อผู้ใช้" "รายได้ต่อผู้ใช้" "อัตราการรักษาผู้ใช้" หรือ "อัตรา Conversion" ทั้งนี้ขึ้นอยู่กับเมตริกที่วัด
  4. หลังจากทำการทดสอบไประยะหนึ่ง (14 วันสำหรับ Remote Config) ข้อมูลในหน้านี้จะระบุว่าตัวแปรใดเป็น "ผู้นำ" (หากมี) การวัดผลบางอย่าง มาพร้อมกับแผนภูมิแท่งที่แสดงข้อมูลใน รูปแบบภาพ

เปิดตัวการทดสอบต่อผู้ใช้ทั้งหมด

หลังจากทำการทดสอบจนได้ "ผู้นำ" หรือตัวแปรที่ได้ผลดีที่สุดสำหรับเมตริกเป้าหมายแล้ว คุณสามารถเผยแพร่การทดสอบแก่ผู้ใช้ทั้ง 100% ได้ ซึ่งจะช่วยให้เลือกตัวแปรเพื่อเผยแพร่ไปยังผู้ใช้ทั้งหมดในอนาคตได้ แม้การทดสอบจะไม่สามารถระบุผู้ชนะที่ชัดเจนได้ แต่คุณก็ยังเลือกที่จะเผยแพร่ตัวแปรให้ผู้ใช้ทั้งหมดเห็นได้

  1. ในส่วน DevOps และการมีส่วนร่วมของเมนูการนำทางในFirebase Console ให้คลิก Remote Config
  2. คลิกแท็บการทดสอบ A/B
  3. คลิกเสร็จสมบูรณ์หรือกำลังทำงาน คลิกการทดสอบที่ต้องการ เผยแพร่ต่อผู้ใช้ทั้งหมด คลิกเมนูบริบท () เปิดตัวเวอร์ชันทดแทน
  4. เปิดตัวการทดสอบต่อผู้ใช้ทั้งหมดโดยทำดังนี้
    • สําหรับการทดสอบ Remote Config ให้เลือกตัวแปรเพื่อกําหนดค่าพารามิเตอร์ Remote Config ที่จะอัปเดต เกณฑ์การกำหนดเป้าหมายที่ระบุไว้ตอนสร้างการทดสอบจะเพิ่มไว้เป็นเงื่อนไขใหม่ในเทมเพลต เพื่อให้การเริ่มใช้ตัวแปรมีผลกับผู้ใช้ที่การทดสอบนี้กำหนดเป้าหมายไว้เท่านั้น หลังจากคลิกตรวจสอบในการกำหนดค่าระยะไกล เพื่อตรวจสอบการเปลี่ยนแปลงแล้ว ให้คลิกเผยแพร่การเปลี่ยนแปลงเพื่อดำเนินการ เปิดตัวให้เสร็จสิ้น

ขยายการทดสอบ

หากพบว่าการทดสอบไม่ได้ดึงดูดผู้ใช้มากพอสำหรับ A/B Testing ในการประกาศผู้นำ คุณสามารถเพิ่มการกระจายการทดสอบเพื่อเข้าถึง ฐานผู้ใช้ของแอปในเปอร์เซ็นต์ที่มากขึ้นได้

  1. ในส่วน DevOps และการมีส่วนร่วมของเมนูการนำทางในFirebase Console ให้คลิก Remote Config
  2. คลิกแท็บการทดสอบ A/B
  3. เลือกการทดสอบที่กำลังทำงานซึ่งคุณต้องการแก้ไข
  4. ในภาพรวมการทดสอบ ให้คลิกเมนูตามบริบท () แล้วคลิกแก้ไขการทดสอบที่กําลังทํางาน
  5. กล่องโต้ตอบการกำหนดเป้าหมายจะแสดงตัวเลือกในการเพิ่มเปอร์เซ็นต์ของ ผู้ใช้ที่อยู่ในการทดสอบที่ใช้งานอยู่ เลือกตัวเลขที่มากกว่า เปอร์เซ็นต์ปัจจุบัน แล้วคลิกเผยแพร่ ระบบจะพุชการทดสอบ ไปยังเปอร์เซ็นต์ของผู้ใช้ที่คุณระบุ

ทำซ้ำการทดสอบ

  1. ในส่วน DevOps และการมีส่วนร่วมของเมนูการนำทางในFirebase Console ให้คลิก Remote Config
  2. คลิกแท็บการทดสอบ A/B
  3. เลือกการทดสอบที่กำลังทำงานหรือเสร็จสมบูรณ์แล้วซึ่งคุณต้องการหยุด
  4. คลิกเสร็จสมบูรณ์หรือกำลังทำงาน วางเมาส์เหนือการทดสอบ คลิกเมนูบริบท () แล้ว คลิกทำซ้ำการทดสอบหรือหยุดการทดสอบ

หยุดการทดสอบ

  1. ในส่วน DevOps และการมีส่วนร่วมของเมนูการนำทางในFirebase Console ให้คลิก Remote Config
  2. คลิกแท็บการทดสอบ A/B
  3. เลือกการทดสอบที่กำลังทำงานหรือเสร็จสมบูรณ์แล้วซึ่งคุณต้องการหยุด
  4. คลิกเสร็จสมบูรณ์หรือกําลังทํางาน วางเมาส์เหนือการทดสอบ คลิกเมนูบริบท () แล้ว คลิกหยุดการทดสอบ

การระบุไคลเอ็นต์เว็บและการทดสอบที่คงอยู่

เมื่อผู้ใช้เปิดเว็บแอปพลิเคชันโดยใช้ Firebase A/B Testing ในเบราว์เซอร์เป็นครั้งแรก ระบบจะสร้างรหัสการติดตั้ง Firebase ที่ไม่ซ้ำกัน (FID) FID นี้จะจัดเก็บไว้ใน IndexedDB ของเบราว์เซอร์อย่างถาวรเพื่อระบุอินสแตนซ์ของแอป ในเซสชันต่างๆ

Firebase A/B Testing ใช้ FID เพื่อกําหนดผู้ใช้ให้กับตัวแปรการทดสอบ และ Google Analytics ใช้ FID เพื่อการรวบรวมเหตุการณ์เพื่อวัดและวิเคราะห์พฤติกรรมของผู้ใช้ภายในแต่ละตัวแปร

เนื่องจาก FID จะจัดเก็บไว้ใน IndexedDB Firebase A/B Testing จะถือว่าผู้ใช้เป็นผู้ใช้ใหม่หากเข้าถึงแอปจาก เบราว์เซอร์อื่นหรือในหน้าต่างที่ไม่ระบุตัวตน หรือหากล้าง IndexedDB ของเบราว์เซอร์ ซึ่งหมายความว่าระบบอาจรวมผู้ใช้ไว้ในกลุ่มทดสอบต่างๆ เมื่อใช้เบราว์เซอร์หรือเซสชันการท่องเว็บที่แตกต่างกัน

การกำหนดเป้าหมายตามผู้ใช้

คุณกำหนดเป้าหมายผู้ใช้ที่จะรวมไว้ในการทดสอบได้โดยใช้เกณฑ์การกำหนดเป้าหมายผู้ใช้ต่อไปนี้

คอนโซล Firebase รองรับกฎประเภทต่อไปนี้ ฟีเจอร์ที่เทียบเท่ากันมีอยู่ใน Remote Config REST API ตามที่ระบุไว้ในการอ้างอิงนิพจน์แบบมีเงื่อนไข

ประเภทของกฎ ผู้ประกอบธุรกิจ ค่า หมายเหตุ
แอป == เลือกจากรายการรหัสแอปสำหรับแอปที่เชื่อมโยงกับโปรเจ็กต์ Firebase เมื่อเพิ่มแอปไปยัง Firebase คุณจะป้อนรหัสชุดหรือชื่อแพ็กเกจ Android ที่กำหนดแอตทริบิวต์ซึ่งแสดงเป็นรหัสแอปในRemote Configกฎ

ใช้แอตทริบิวต์นี้ดังนี้
  • สําหรับแพลตฟอร์ม Apple: ใช้ CFBundleIdentifier ของแอป คุณจะพบรหัสชุดซอฟต์แวร์ในแท็บทั่วไปของเป้าหมายหลักของแอปใน Xcode
  • สำหรับ Android: ใช้ applicationId ของแอป คุณดู applicationId ได้ในไฟล์ build.gradle(.kts) ระดับแอป
เวอร์ชันของแอป สำหรับค่าสตริง:
ตรงกันทุกประการ
มี
ไม่มี
มีนิพจน์ทั่วไป

สำหรับค่าตัวเลข:
<, <=, =, !=, >, >=

ระบุเวอร์ชันของแอปที่จะกำหนดเป้าหมาย

ก่อนใช้กฎนี้ คุณต้องใช้กฎรหัสแอปเพื่อเลือกแอป Android/Apple ที่เชื่อมโยงกับโปรเจ็กต์ Firebase

สำหรับแพลตฟอร์ม Apple: ใช้ CFBundleShortVersionString ของแอป

หมายเหตุ: ตรวจสอบว่าแอป Apple ของคุณใช้ Firebase Apple Platforms SDK เวอร์ชัน 6.24.0 ขึ้นไป เนื่องจากระบบจะไม่ส่ง CFBundleShortVersionString ใน เวอร์ชันก่อนหน้า (ดูหมายเหตุประจำรุ่น)

สำหรับ Android: ใช้ versionName ของแอป

การเปรียบเทียบสตริงสำหรับกฎนี้จะคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ เมื่อใช้โอเปอเรเตอร์ตรงทุกประการกับ มี ไม่มี หรือมีนิพจน์ทั่วไป คุณจะเลือกค่าได้หลายค่า

เมื่อใช้โอเปอเรเตอร์มีนิพจน์ทั่วไป คุณจะสร้างนิพจน์ทั่วไปในรูปแบบ RE2 ได้ นิพจน์ทั่วไปจับคู่สตริงเวอร์ชันเป้าหมายทั้งหมดหรือบางส่วนได้ นอกจากนี้ คุณยังใช้เครื่องหมายยึด ^ และ $ เพื่อจับคู่ จุดเริ่มต้น จุดสิ้นสุด หรือทั้งหมดของสตริงเป้าหมายได้ด้วย

หมายเลขบิลด์ สำหรับค่าสตริง:
ตรงกันทุกประการ
มี
ไม่มี
นิพจน์ทั่วไป

สำหรับค่าตัวเลข:
=, ≠, >, ≥, <, ≤

ระบุบิลด์ของแอปที่จะกำหนดเป้าหมาย

ก่อนใช้กฎนี้ คุณต้องใช้กฎรหัสแอปเพื่อเลือกแอป Apple หรือ แอป Android ที่เชื่อมโยงกับโปรเจ็กต์ Firebase

ตัวดำเนินการนี้ใช้ได้กับแอป Apple และ Android เท่านั้น ซึ่งสอดคล้องกับ CFBundleVersion ของแอปสำหรับ Apple และ versionCode สำหรับ Android การเปรียบเทียบสตริงสำหรับกฎนี้จะคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่

เมื่อใช้โอเปอเรเตอร์ตรงทุกประการกับ มี ไม่มี หรือมีนิพจน์ทั่วไป คุณจะเลือกค่าได้หลายค่า

เมื่อใช้โอเปอเรเตอร์มีนิพจน์ทั่วไป คุณจะสร้างนิพจน์ทั่วไปในรูปแบบ RE2 ได้ นิพจน์ทั่วไปจับคู่สตริงเวอร์ชันเป้าหมายทั้งหมดหรือบางส่วนได้ นอกจากนี้ คุณยังใช้เครื่องหมายยึด ^ และ $ เพื่อจับคู่ จุดเริ่มต้น จุดสิ้นสุด หรือทั้งสตริงเป้าหมายได้ด้วย

แพลตฟอร์ม == iOS
Android
เว็บ
 
ระบบปฏิบัติการ ==

ระบุระบบปฏิบัติการที่จะกำหนดเป้าหมาย

ก่อนใช้กฎนี้ คุณต้องใช้กฎรหัสแอปเพื่อเลือกเว็บแอปที่เชื่อมโยงกับโปรเจ็กต์ Firebase

กฎนี้จะประเมินเป็น true สำหรับอินสแตนซ์เว็บแอปที่กำหนด หากระบบปฏิบัติการและเวอร์ชันตรงกับค่าเป้าหมายในรายการที่ระบุ
เบราว์เซอร์ ==

ระบุเบราว์เซอร์ที่จะกำหนดเป้าหมาย

ก่อนใช้กฎนี้ คุณต้องใช้กฎรหัสแอปเพื่อเลือกเว็บแอปที่เชื่อมโยงกับโปรเจ็กต์ Firebase

กฎนี้จะประเมินเป็น true สำหรับอินสแตนซ์ของเว็บแอปที่กำหนด หากเบราว์เซอร์และเวอร์ชันตรงกับค่าเป้าหมายในรายการที่ระบุ
หมวดหมู่ของอุปกรณ์ เท่ากับ ไม่เท่ากับ อุปกรณ์เคลื่อนที่ กฎนี้จะประเมินว่าอุปกรณ์ที่เข้าถึงเว็บแอปของคุณเป็นอุปกรณ์เคลื่อนที่หรือ ไม่ใช่ (เดสก์ท็อปหรือคอนโซล) ประเภทกฎนี้ใช้ได้กับเว็บแอปเท่านั้น
ภาษา อยู่ใน เลือกภาษาอย่างน้อย 1 ภาษา กฎนี้จะประเมินเป็น true สำหรับอินสแตนซ์แอปที่กำหนด หากอินสแตนซ์แอปนั้นติดตั้งในอุปกรณ์ที่ใช้ภาษาใดภาษาหนึ่งที่ระบุไว้
ประเทศ/ภูมิภาค อยู่ใน เลือกภูมิภาคหรือประเทศอย่างน้อย 1 รายการ กฎนี้จะประเมินเป็น true สำหรับอินสแตนซ์แอปที่กำหนด หากอินสแตนซ์อยู่ในภูมิภาคหรือประเทศใดก็ตามที่ระบุไว้ รหัสประเทศของอุปกรณ์ จะกำหนดโดยใช้ที่อยู่ IP ของอุปกรณ์ในคำขอหรือรหัสประเทศ ที่กำหนดโดย Firebase Analytics (หากแชร์ข้อมูล Analytics กับ Firebase)
กลุ่มเป้าหมายที่เป็นผู้ใช้ รวมอย่างน้อย 1 รายการ เลือกอย่างน้อย 1 รายการจากรายการกลุ่มเป้าหมาย Google Analytics ที่คุณตั้งค่าไว้สำหรับโปรเจ็กต์

กฎนี้กำหนดให้ต้องมีกฎรหัสแอปเพื่อเลือกแอปที่เชื่อมโยงกับโปรเจ็กต์ Firebase

หมายเหตุ: เนื่องจากAnalyticsกลุ่มเป้าหมายจํานวนมากกําหนดโดยเหตุการณ์หรือ พร็อพเพอร์ตี้ผู้ใช้ ซึ่งอาจอิงตามการกระทําของผู้ใช้แอป กฎผู้ใช้ในกลุ่มเป้าหมายอาจใช้เวลาสักครู่จึงจะมีผลสําหรับอินสแตนซ์แอปที่กําหนด ซึ่งหมายความว่าแม้ว่าในทางเทคนิคแล้วผู้ใช้จะมีคุณสมบัติเป็นกลุ่มเป้าหมาย แต่หาก Analytics ยังไม่ได้เพิ่มผู้ใช้ลงในกลุ่มเป้าหมายเมื่อ fetchAndActivate() ทำงาน ผู้ใช้จะไม่ตรงกับเงื่อนไข

พร็อพเพอร์ตี้ผู้ใช้ สำหรับค่าสตริง:
มี
ไม่มี
ตรงกันทุกประการ
มีนิพจน์ทั่วไป

สำหรับค่าตัวเลข:
=, ≠, >, ≥, <, ≤

หมายเหตุ: ในไคลเอ็นต์ คุณจะตั้งค่าสตริงสำหรับพร็อพเพอร์ตี้ผู้ใช้ได้เท่านั้น สําหรับเงื่อนไขที่ใช้ตัวดำเนินการที่เป็นตัวเลข Remote Config จะแปลงค่าของพร็อพเพอร์ตี้ผู้ใช้ที่เกี่ยวข้อง เป็นจํานวนเต็ม/ทศนิยม
เลือกจากรายการGoogle Analyticsพร็อพเพอร์ตี้ผู้ใช้ ที่มีอยู่ ดูวิธีใช้พร็อพเพอร์ตี้ผู้ใช้เพื่อปรับแต่งแอปสำหรับ กลุ่มฐานผู้ใช้ที่เฉพาะเจาะจงมากได้ที่ Remote Configและพร็อพเพอร์ตี้ผู้ใช้

ดูข้อมูลเพิ่มเติมเกี่ยวกับพร็อพเพอร์ตี้ผู้ใช้ได้ในคำแนะนำต่อไปนี้

เมื่อใช้โอเปอเรเตอร์ตรงทั้งหมด มี ไม่มี หรือมีนิพจน์ทั่วไป คุณจะเลือกค่าได้หลายค่า

เมื่อใช้โอเปอเรเตอร์มีนิพจน์ทั่วไป คุณจะสร้างนิพจน์ทั่วไปในรูปแบบ RE2 ได้ นิพจน์ทั่วไปจับคู่สตริงเวอร์ชันเป้าหมายทั้งหมดหรือบางส่วนได้ นอกจากนี้ คุณยังใช้เครื่องหมายยึด ^ และ $ เพื่อจับคู่ จุดเริ่มต้น จุดสิ้นสุด หรือทั้งสตริงเป้าหมายได้ด้วย

หมายเหตุ: พร็อพเพอร์ตี้ผู้ใช้ที่รวบรวมโดยอัตโนมัติ จะใช้ไม่ได้เมื่อสร้างเงื่อนไข Remote Config
ผู้ใช้ในเปอร์เซ็นต์แบบสุ่ม แถบเลื่อน (ในคอนโซล Firebase REST API ใช้ตัวดำเนินการ <=, > และ between 0-100

ใช้ช่องนี้เพื่อใช้การเปลี่ยนแปลงกับตัวอย่างแบบสุ่มของอินสแตนซ์แอป (โดยมีขนาดตัวอย่างเล็กเพียง 0.0001%) โดยใช้แถบเลื่อนเพื่อแบ่งกลุ่มผู้ใช้ที่สับเปลี่ยนแบบสุ่ม (อินสแตนซ์แอป) ออกเป็นกลุ่ม

ระบบจะแมปอินสแตนซ์ของแอปแต่ละรายการกับจำนวนเต็มหรือเศษส่วนแบบสุ่มอย่างต่อเนื่องตามค่าเริ่มต้นที่กำหนดไว้ในโปรเจ็กต์นั้น

กฎจะใช้คีย์เริ่มต้น (แสดงเป็นแก้ไข Seed ในคอนโซล Firebase) เว้นแต่คุณจะ แก้ไขค่า Seed คุณสามารถเปลี่ยนกฎกลับไปใช้คีย์เริ่มต้นได้โดยล้างช่องSeed

หากต้องการจัดการอินสแตนซ์แอปเดียวกันอย่างสม่ำเสมอภายในช่วงเปอร์เซ็นต์ที่กำหนด ให้ใช้ค่า Seed เดียวกันในเงื่อนไขต่างๆ หรือเลือกกลุ่มอินสแตนซ์แอปที่กำหนดใหม่แบบสุ่มสำหรับช่วงเปอร์เซ็นต์ที่กำหนดโดยการระบุ Seed ใหม่

ตัวอย่างเช่น หากต้องการสร้างเงื่อนไขที่เกี่ยวข้อง 2 รายการซึ่งแต่ละรายการใช้กับผู้ใช้แอป 5% ที่ไม่ทับซ้อนกัน คุณสามารถกำหนดค่าเงื่อนไขหนึ่งให้ตรงกับเปอร์เซ็นต์ระหว่าง 0% ถึง 5% และกำหนดค่า อีกเงื่อนไขหนึ่งให้ตรงกับช่วงระหว่าง 5% ถึง 10% หากต้องการอนุญาตให้ผู้ใช้บางรายปรากฏแบบสุ่มในทั้ง 2 กลุ่ม ให้ใช้ค่าเริ่มต้นที่แตกต่างกันสำหรับกฎภายในแต่ละเงื่อนไข

กลุ่มที่นำเข้า อยู่ใน เลือกกลุ่มที่นำเข้าอย่างน้อย 1 กลุ่ม กฎนี้กำหนดให้ตั้งค่ากลุ่มที่นำเข้าที่กำหนดเอง
วันที่/เวลา ก่อน หลัง วันที่และเวลาที่ระบุ ไม่ว่าจะเป็นในเขตเวลาของอุปกรณ์หรือเขตเวลาที่ระบุ เช่น "(GMT+11) เวลาซิดนีย์" เปรียบเทียบเวลาปัจจุบันกับเวลาที่อุปกรณ์ดึงข้อมูล
การเปิดครั้งแรก ก่อน หลัง

กำหนดเป้าหมายผู้ใช้ตามครั้งแรกที่ผู้ใช้เปิดแอปของคุณ

  • เลือกผู้ใช้ใหม่เพื่อกำหนดเป้าหมายผู้ใช้ที่เปิดแอปเป็นครั้งแรกหลังจากวันที่และเวลาในอนาคตที่ระบุ
  • เลือกช่วงเวลาเพื่อกำหนดเป้าหมายผู้ใช้ที่เปิดแอปเป็นครั้งแรกภายในช่วงเวลาก่อนหรือหลังวันที่และเวลาที่คุณระบุ รวมเงื่อนไขก่อนและหลังเพื่อกำหนดเป้าหมายผู้ใช้ภายในช่วงเวลาที่เฉพาะเจาะจง

การกำหนดเป้าหมายผู้ใช้ตามการเปิดครั้งแรกจะพร้อมใช้งานหลังจากที่คุณเลือกแอป Android, iOS หรือเว็บแอป

ต้องใช้ SDK ต่อไปนี้

  • Firebase SDK สำหรับ Google Analytics
  • SDK ของแพลตฟอร์ม Apple เวอร์ชัน 9.0.0 ขึ้นไปหรือ Android SDK เวอร์ชัน 21.1.1 ขึ้นไป (Firebase BoM v30.3.0 ขึ้นไป) และ JavaScript SDK เวอร์ชัน 12.8.0 ขึ้นไป

Analytics ต้องเปิดใช้ในไคลเอ็นต์ระหว่างเหตุการณ์การเปิดครั้งแรกด้วย

รหัสการติดตั้ง อยู่ใน ระบุรหัสการติดตั้งอย่างน้อย 1 รหัส (สูงสุด 50 รหัส) เพื่อกำหนดเป้าหมาย กฎนี้จะประเมินเป็น true สำหรับการติดตั้งที่กำหนด หากรหัสของการติดตั้งนั้นอยู่ในรายการค่าที่คั่นด้วยคอมมา

ดูวิธีรับรหัสการติดตั้งได้ที่ เรียกข้อมูลตัวระบุไคลเอ็นต์
มีผู้ใช้ (ไม่มีโอเปอเรเตอร์) กำหนดเป้าหมายเป็นผู้ใช้ทั้งหมดของแอปทั้งหมดภายในโปรเจ็กต์ปัจจุบัน

ใช้กฎเงื่อนไขนี้เพื่อจับคู่ผู้ใช้ทั้งหมดภายในโปรเจ็กต์ ไม่ว่าจะเป็นแอปหรือแพลตฟอร์มใดก็ตาม

สัญญาณที่กำหนดเอง สำหรับค่าสตริง
มี
ไม่มี
ตรงกันทุกประการ
มีนิพจน์ทั่วไป

สำหรับค่าตัวเลข
=, ≠, >, ≥, <, ≤

สำหรับค่าเวอร์ชัน
=, ≠, >, ≥, <, ≤

การเปรียบเทียบสตริงสำหรับกฎนี้จะคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ เมื่อใช้โอเปอเรเตอร์ตรงกันทั้งหมด มี ไม่มี หรือมีนิพจน์ทั่วไป คุณจะเลือกค่าได้หลายค่า เมื่อใช้โอเปอเรเตอร์นิพจน์ทั่วไป "มี" คุณจะสร้างนิพจน์ทั่วไปในรูปแบบ RE2 ได้ นิพจน์ทั่วไปจับคู่สตริงเวอร์ชันเป้าหมายทั้งหมดหรือบางส่วนได้ นอกจากนี้ คุณยังใช้เครื่องหมาย ^ และ $ เพื่อจับคู่จุดเริ่มต้น จุดสิ้นสุด หรือทั้งสตริงเป้าหมายได้ด้วย

ระบบรองรับประเภทข้อมูลต่อไปนี้สำหรับสภาพแวดล้อมของไคลเอ็นต์
  • iOS: int, double
  • Android: int, long, double
  • เว็บ: ตัวเลข

ตัวเลขที่แสดงหมายเลขเวอร์ชันที่จะจับคู่ (เช่น 2.1.0)

ดูข้อมูลเพิ่มเติมเกี่ยวกับเงื่อนไขของสัญญาณที่กำหนดเองและนิพจน์แบบมีเงื่อนไขที่จะใช้ได้ที่เงื่อนไขของสัญญาณที่กำหนดเองและองค์ประกอบที่ใช้สร้างเงื่อนไข

เมตริก A/B Testing รายการ

เมื่อสร้างการทดสอบ คุณจะเลือกเมตริกหลักหรือเมตริกเป้าหมายที่จะใช้ในการระบุตัวแปรที่ได้ผลดีที่สุด นอกจากนี้ คุณควรติดตามเมตริกอื่นๆ เพื่อช่วยให้เข้าใจประสิทธิภาพของแต่ละตัวแปรของการทดสอบได้ดียิ่งขึ้น และติดตามแนวโน้มที่สำคัญซึ่งอาจแตกต่างกันในแต่ละตัวแปร เช่น การคงผู้ใช้ไว้ ความเสถียรของแอป และรายได้จากการซื้อในแอป คุณติดตามเมตริกที่ไม่ใช่เป้าหมายได้สูงสุด 5 รายการ ในการทดสอบ

ตัวอย่างเช่น สมมติว่าคุณใช้ Remote Config เพื่อเปิดตัวโฟลว์เกม 2 แบบที่แตกต่างกันในแอป และต้องการเพิ่มประสิทธิภาพสำหรับการซื้อในแอปและรายได้จากโฆษณา แต่คุณก็ต้องการติดตามความเสถียรและการคงผู้ใช้ไว้ของแต่ละเวอร์ชันด้วย ในกรณีนี้ คุณอาจเลือกรายได้รวมโดยประมาณเป็นเมตริกเป้าหมาย เนื่องจากรวมรายได้จากการซื้อในแอปและรายได้จากโฆษณาไว้ด้วย จากนั้นสำหรับเมตริกอื่นๆ ที่จะติดตาม คุณอาจเพิ่มข้อมูลต่อไปนี้

  • หากต้องการติดตามการคงผู้ใช้ไว้รายวันและรายสัปดาห์ ให้เพิ่มการคงผู้ใช้ไว้ (2-3 วัน) และการคงผู้ใช้ไว้ (4-7 วัน)
  • หากต้องการเปรียบเทียบความเสถียรระหว่างโฟลว์เกม 2 รายการ ให้เพิ่มผู้ใช้ที่ไม่พบข้อขัดข้อง
  • หากต้องการดูมุมมองที่ละเอียดยิ่งขึ้นของรายได้แต่ละประเภท ให้เพิ่มรายได้จากการซื้อและรายได้จากโฆษณาโดยประมาณ

ตารางต่อไปนี้แสดงรายละเอียดเกี่ยวกับวิธีคำนวณเมตริกเป้าหมายและเมตริกอื่นๆ

เมตริกเป้าหมาย

เมตริก คำอธิบาย
ผู้ใช้ที่ไม่พบข้อขัดข้อง เปอร์เซ็นต์ของผู้ใช้ที่ไม่พบข้อผิดพลาดในแอปซึ่ง Firebase Crashlytics SDK ตรวจพบระหว่างการทดสอบ

หมายเหตุ: แอปพลิเคชันบนเว็บไม่รองรับ Firebase Crashlytics

รายได้จากโฆษณาโดยประมาณ รายได้จากโฆษณาโดยประมาณ
รายได้ทั้งหมดโดยประมาณ มูลค่ารวมสำหรับการซื้อและรายได้จากโฆษณาโดยประมาณ
รายได้จากการซื้อ มูลค่ารวมสําหรับเหตุการณ์ purchase และ in_app_purchase ทั้งหมด
การรักษาผู้ใช้ (1 วัน) จำนวนผู้ใช้ที่กลับมายังแอปของคุณในแต่ละวัน
การเก็บรักษา (2-3 วัน) จำนวนผู้ใช้ที่กลับมายังแอปของคุณภายใน 2-3 วัน
การเก็บรักษา (4-7 วัน) จำนวนผู้ใช้ที่กลับมาใช้แอปของคุณภายใน 4-7 วัน
การเก็บรักษา (8-14 วัน) จำนวนผู้ใช้ที่กลับมายังแอปของคุณภายใน 8-14 วัน
การรักษาผู้ใช้ (15 วันขึ้นไป) จำนวนผู้ใช้ที่กลับมายังแอปของคุณหลังจากที่ใช้ครั้งล่าสุดไปแล้ว 15 วันขึ้นไป
first_open Analytics เหตุการณ์ที่ทริกเกอร์เมื่อผู้ใช้เปิดแอปเป็นครั้งแรกหลังจาก ติดตั้งหรือติดตั้งอีกครั้ง ใช้เป็นส่วนหนึ่งของ Conversion Funnel

เมตริกอื่นๆ

เมตริก คำอธิบาย
notification_dismiss Analytics เหตุการณ์ที่ทริกเกอร์เมื่อมีการปิดการแจ้งเตือนที่ส่งโดย เครื่องมือแต่งการแจ้งเตือน (Android เท่านั้น)
notification_receive Analytics เหตุการณ์ที่ทริกเกอร์เมื่อได้รับการแจ้งเตือนที่ส่งโดย เครื่องมือแต่งการแจ้งเตือนในขณะที่แอปอยู่เบื้องหลัง (Android เท่านั้น)
os_update Analytics เหตุการณ์ที่ติดตามเมื่อระบบปฏิบัติการของอุปกรณ์อัปเดตเป็นเวอร์ชันใหม่ ดูข้อมูลเพิ่มเติมได้ที่เหตุการณ์ที่รวบรวมโดยอัตโนมัติ

แอปพลิเคชันบนเว็บไม่รองรับเมตริกนี้

screen_view Analytics เหตุการณ์ที่ติดตามหน้าจอที่ดูภายในแอป ดูข้อมูลเพิ่มเติมได้ที่ติดตามการดูหน้าจอ
session_start Analytics เหตุการณ์ที่นับเซสชันของผู้ใช้ในแอป ดูข้อมูลเพิ่มเติมได้ที่เหตุการณ์ที่รวบรวมโดยอัตโนมัติ

การส่งออกข้อมูล BigQuery

นอกเหนือจากการดูA/B Testingข้อมูลการทดสอบในคอนโซล Firebaseแล้ว คุณยังตรวจสอบและวิเคราะห์ข้อมูลการทดสอบใน BigQueryได้ด้วย แม้ว่า A/B Testing จะไม่มีตาราง BigQuery แยกต่างหาก แต่ระบบจะจัดเก็บการเป็นสมาชิกการทดสอบและตัวแปรไว้ในเหตุการณ์ Google Analytics ทุกรายการภายในตารางเหตุการณ์ Analytics

พร็อพเพอร์ตี้ผู้ใช้ที่มีข้อมูลการทดสอบจะมีรูปแบบ userProperty.key like "firebase_exp_%" หรือ userProperty.key = "firebase_exp_01" โดยที่ 01 คือรหัสการทดสอบ และ userProperty.value.string_value มีดัชนี (อิงตาม 0) ของ ตัวแปรการทดสอบ

คุณใช้พร็อพเพอร์ตี้ผู้ใช้ในการทดสอบเหล่านี้เพื่อดึงข้อมูลการทดสอบได้ ซึ่งจะช่วยให้คุณสามารถแบ่งผลการทดสอบได้หลายวิธีและตรวจสอบผลลัพธ์ของ A/B Testing ได้อย่างอิสระ

หากต้องการเริ่มต้นใช้งาน ให้ทำตามขั้นตอนต่อไปนี้ตามที่อธิบายไว้ในคู่มือนี้

  1. เปิดใช้การส่งออก BigQuery สำหรับ Google Analytics ในคอนโซล Firebase
  2. เข้าถึงข้อมูล A/B Testing โดยใช้ BigQuery
  3. สำรวจตัวอย่างการค้นหา

เปิดใช้BigQueryการส่งออกสำหรับ Google Analytics ในคอนโซล Firebase

หากใช้แพ็กเกจ Spark คุณจะใช้BigQueryแซนด์บ็อกซ์เพื่อ เข้าถึง BigQuery ได้โดยไม่มีค่าใช้จ่าย โดยขึ้นอยู่กับ ขีดจำกัดของแซนด์บ็อกซ์ ดูข้อมูลเพิ่มเติมได้ที่ การกำหนดราคาและBigQueryแซนด์บ็อกซ์

ก่อนอื่น ให้ตรวจสอบว่าคุณส่งออกAnalyticsข้อมูลไปยัง BigQuery

  1. ในFirebase คอนโซล ให้ไปที่ การตั้งค่า > แท็บการผสานรวม

  2. ในการ์ด BigQuery ให้คลิกจัดการและตรวจสอบว่าโปรเจ็กต์ ส่งออกข้อมูล Analytics ไปยัง BigQuery

    หากการ์ดระบุว่าลิงก์ แสดงว่าคุณต้องตั้งค่าการส่งออก (ไปยัง ขั้นตอนถัดไป)

  3. หากต้องการตั้งค่าการส่งออก ให้ทำดังนี้

    1. อ่านเกี่ยวกับการลิงก์ Firebase กับ BigQuery แล้วคลิกถัดไป

    2. ในส่วนกำหนดค่าการผสานรวม ให้เปิดใช้ Google Analytics

    3. เลือกภูมิภาคและเลือกการตั้งค่าการส่งออก

    4. คลิกลิงก์ไปยัง BigQuery

ตารางอาจพร้อมใช้งานภายใน 1 วัน ทั้งนี้ขึ้นอยู่กับวิธีที่คุณเลือกส่งออกข้อมูล ดูข้อมูลเพิ่มเติมเกี่ยวกับการส่งออกข้อมูลโปรเจ็กต์ไปยัง BigQueryได้ที่ ส่งออกข้อมูลโปรเจ็กต์ไปยัง BigQuery

เข้าถึงข้อมูล A/B Testing ใน BigQuery

ก่อนที่จะค้นหาข้อมูลสำหรับการทดสอบที่เฉพาะเจาะจง คุณจะต้องได้รับข้อมูลต่อไปนี้บางส่วนหรือทั้งหมดเพื่อใช้ในการค้นหา

  • รหัสการทดสอบ: คุณดูรหัสนี้ได้จาก URL ของหน้าภาพรวมการทดสอบ เช่น หาก URL มีลักษณะดังนี้ https://console.firebase.google.com/project/my_firebase_project/config/experiment/results/25, รหัสการทดสอบคือ 25
  • รหัสพร็อพเพอร์ตี้ Google Analytics: นี่คือรหัสพร็อพเพอร์ตี้ 9 หลัก Google Analytics คุณจะดูข้อมูลนี้ได้ใน Google Analytics และจะปรากฏใน BigQuery ด้วยเมื่อคุณขยาย ชื่อโปรเจ็กต์เพื่อแสดงชื่อตารางเหตุการณ์ Google Analytics (project_name.analytics_000000000.events)
  • วันที่ทดสอบ: เพื่อสร้างคําค้นหาที่รวดเร็วและมีประสิทธิภาพมากขึ้น แนวทางปฏิบัติแนะนําคือการจํากัดคําค้นหาไว้ที่พาร์ติชันตารางเหตุการณ์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. เลือกโปรเจ็กต์ แล้วเลือกสร้างการค้นหา SQL
  3. เพิ่มคำค้นหา ดูตัวอย่างการค้นหาที่จะเรียกใช้ได้ที่ สำรวจตัวอย่างการค้นหา
  4. คลิกเรียกใช้

ค้นหาข้อมูลการทดสอบการค้นหาโดยใช้การค้นหาที่สร้างขึ้นโดยอัตโนมัติของคอนโซล Firebase

หากใช้แพ็กเกจ Blaze หน้าภาพรวมการทดสอบจะมี ตัวอย่างคําค้นหาที่แสดงชื่อการทดสอบ รูปแบบ ชื่อเหตุการณ์ และ จํานวนเหตุการณ์สําหรับการทดสอบที่คุณกําลังดู

วิธีรับและเรียกใช้การค้นหาที่สร้างขึ้นโดยอัตโนมัติ

  1. ในFirebaseคอนโซล ให้ไปที่ DevOps และการมีส่วนร่วม > การทดสอบ A/B
  2. เลือกA/B Testingการทดสอบที่ต้องการค้นหาเพื่อเปิด ภาพรวมการทดสอบ
  3. จากเมนูตัวเลือก ในส่วนการผสานรวม BigQuery ให้เลือก ค้นหาข้อมูลการทดสอบ ซึ่งจะเปิดโปรเจ็กต์ในBigQuery ภายในคอนโซล Google Cloudคอนโซลและแสดงการค้นหาพื้นฐานที่คุณใช้ เพื่อค้นหาข้อมูลการทดสอบได้

ตัวอย่างต่อไปนี้แสดงคําค้นหาที่สร้างขึ้นสําหรับการทดสอบที่มีตัวแปร 3 รายการ (รวมถึงเกณฑ์พื้นฐาน) ชื่อ "การทดสอบต้อนรับฤดูหนาว" โดยจะแสดงชื่อการทดสอบที่ใช้งานอยู่ ชื่อตัวแปร เหตุการณ์ที่ไม่ซ้ำ และ จํานวนเหตุการณ์สําหรับแต่ละเหตุการณ์ โปรดทราบว่าเครื่องมือสร้างคําค้นหาไม่ได้ระบุ ชื่อโปรเจ็กต์ในชื่อตาราง เนื่องจากจะเปิดภายในโปรเจ็กต์โดยตรง

  /*
    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ข้อมูลการทดสอบจากGoogle Analyticsตารางเหตุการณ์ได้

ดึงค่าเบี่ยงเบนมาตรฐานของการซื้อและการทดสอบจากการทดสอบทั้งหมด

คุณสามารถใช้ข้อมูลผลการทดสอบเพื่อยืนยันFirebase A/B Testingผลลัพธ์ได้โดยอิสระ BigQueryคำสั่ง SQL ต่อไปนี้จะดึงข้อมูลตัวแปร การทดสอบ จำนวนผู้ใช้ที่ไม่ซ้ำในแต่ละตัวแปร และผลรวมของรายได้ทั้งหมด จากเหตุการณ์ in_app_purchase และ ecommerce_purchase รวมถึงค่าเบี่ยงเบนมาตรฐาน สำหรับการทดสอบทั้งหมดภายในช่วงเวลาที่ระบุเป็นวันที่_TABLE_SUFFIXเริ่มต้น และวันที่สิ้นสุด คุณใช้ข้อมูลที่ได้จากการค้นหานี้กับเครื่องมือสร้างนัยสำคัญทางสถิติสำหรับการทดสอบ t แบบหางเดียวเพื่อยืนยันว่าผลลัพธ์ที่ 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