สร้างการทดสอบการกำหนดค่าระยะไกลของ 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 และการมีส่วนร่วม > A/B Testing

  3. คลิกสร้างการทดสอบ แล้วเลือก Remote Config เมื่อระบบถามถึงบริการที่คุณต้องการทดสอบ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

เปิดตัวการทดสอบกับผู้ใช้ทุกคน

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

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

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

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

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

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

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

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

  1. ในส่วน DevOps & Engagement ของเมนูการนำทางในคอนโซล Firebase ให้คลิก 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 ของแอป

หมายเหตุ: โอเปอเรเตอร์การเปรียบเทียบตัวเลข (<, <=, =, !=, >, >=) รองรับเฉพาะเวอร์ชันเชิงความหมายที่เป็นตัวเลข (เช่น 1.2.3) โดยไม่รองรับคำต่อท้ายหรือขีดกลางของรุ่นทดลอง (เช่น -beta หรือ -rc) สำหรับสตริงเวอร์ชันที่มีคำต่อท้ายหรือขีดกลางที่ไม่ใช่ตัวเลข (เช่น 1.5-beta) ให้ใช้โอเปอเรเตอร์สตริงแทน (เช่น มีนิพจน์ทั่วไป, มี หรือตรงกันทุกประการ)

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

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

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

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

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

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

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

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

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

แพลตฟอร์ม == 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 ได้ นิพจน์ทั่วไปสามารถจับคู่สตริงเวอร์ชันเป้าหมายทั้งหมดหรือบางส่วนได้ นอกจากนี้ คุณยังใช้ Anchor ^ และ $ เพื่อจับคู่จุดเริ่มต้น จุดสิ้นสุด หรือสตริงเป้าหมายทั้งหมดได้ด้วย

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

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

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

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

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

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

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

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

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

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

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

  • Firebase SDK สำหรับ Google Analytics
  • SDK สำหรับแพลตฟอร์ม Apple v9.0.0 ขึ้นไปหรือ Android SDK v21.1.1 ขึ้นไป (Firebase BoM v30.3.0 ขึ้นไป) และ JavaScript SDK v12.8.0 ขึ้นไป

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

หมายเหตุ: เว็บแอปพลิเคชันไม่รองรับ 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 ที่ทริกเกอร์เมื่อมีการปิดการแจ้งเตือนที่ส่งโดย Notifications Composer (Android เท่านั้น)
notification_receive เหตุการณ์ Analytics ที่ทริกเกอร์เมื่อได้รับข้อความแจ้งเตือนที่ส่งโดย Notifications composer ขณะที่แอปอยู่เบื้องหลัง (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: รหัสพร็อพเพอร์ตี้ Google Analytics 9 หลัก คุณจะเห็นรหัสนี้ใน Google Analytics และจะปรากฏใน BigQuery ด้วยเมื่อคุณขยายชื่อโปรเจ็กต์เพื่อแสดงชื่อตารางเหตุการณ์ Google Analytics (project_name.analytics_000000000.events)
  • วันที่ทดสอบ: เพื่อสร้างการค้นหาที่รวดเร็วและมีประสิทธิภาพมากขึ้น แนวทางปฏิบัติแนะนำคือจำกัดการค้นหาไว้ที่พาร์ติชันตารางกิจกรรมรายวัน Google Analytics ที่มีข้อมูลการทดสอบ ซึ่งเป็นตารางที่ระบุด้วยคำต่อท้าย YYYYMMDD ดังนั้น หากการทดสอบทำงานตั้งแต่วันที่ 2 กุมภาพันธ์ 2026 ถึง 2 พฤษภาคม 2026 คุณจะต้องระบุ _TABLE_SUFFIX between '20260202' AND '20260502' ดูตัวอย่างได้ที่เลือกค่าของการทดสอบที่เฉพาะเจาะจง
  • ชื่อเหตุการณ์: โดยทั่วไปแล้ว ชื่อเหล่านี้จะสอดคล้องกับเมตริกเป้าหมายที่คุณกําหนดค่าไว้ในการทดสอบ เช่น กิจกรรม 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 รายการ (รวมถึงเส้นฐาน) ชื่อ "Winter welcome experiment" โดยจะแสดงชื่อการทดสอบที่ใช้งานอยู่ ชื่อตัวแปร เหตุการณ์ที่ไม่ซ้ำ และจำนวนเหตุการณ์สำหรับแต่ละเหตุการณ์ โปรดทราบว่า Query Builder ไม่ได้ระบุชื่อโปรเจ็กต์ในชื่อตาราง เนื่องจากจะเปิดภายในโปรเจ็กต์โดยตรง

  /*
    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 '20260202' AND '20260502')
    AND userProperty.key = 'firebase_exp_25'
  GROUP BY
    experimentVariant, eventName

หากต้องการดูตัวอย่างการค้นหาเพิ่มเติม ให้ไปที่สำรวจตัวอย่างการค้นหา

สำรวจตัวอย่างคำค้นหา

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

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

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

  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