วัดเซสชันและการมีส่วนร่วมของผู้ใช้

ดูภาพรวมเชิงแนวคิดของขอบเขตผู้ใช้และเซสชัน รวมถึงวิธีที่ Google Analytics กําหนดและจํากัดเซสชันอย่างเคร่งครัดตามการไม่มีกิจกรรมได้ที่มิติข้อมูลและเมตริก: เกี่ยวกับเซสชัน Analytics และคําแนะนําเกี่ยวกับขอบเขต ของมิติข้อมูลแหล่งที่มาของการเข้าชม

คู่มือนี้ครอบคลุมความท้าทายเฉพาะนักพัฒนาซอฟต์แวร์และแนวทางปฏิบัติแนะนำในการจัดการ การกำหนดค่าเซสชันและการติดตามแบบพาสซีฟ

จับคู่มิติข้อมูลระดับหน้ากับเมตริกเซสชัน

ความแตกต่างในการรายงานที่พบบ่อยที่สุดอย่างหนึ่งเกิดขึ้นเมื่อคุณจับคู่มิติข้อมูลระดับหน้าเว็บ (เช่น เส้นทางหน้าเว็บและคลาสหน้าจอ) กับเมตริกเซสชันระดับเซสชัน

คําจํากัดความของเซสชันและการดู

  • เซสชันจะนับระยะเวลาที่ไม่ซ้ำกันซึ่งมีการโหลดเส้นทางหน้าเว็บที่ระบุอย่างน้อย 1 ครั้ง

  • การดู (การดูหน้าเว็บ) จะนับจำนวนครั้งสะสมทั้งหมดที่มีการโหลดเส้นทางหน้าเว็บ

ตัวอย่าง

พิจารณาเซสชันเดียวที่มีเส้นทางการนำทางของผู้ใช้ต่อไปนี้ /home → /products → /home → ออก

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

เส้นทางหน้าเว็บ เซสชัน ยอดดู
/home 1 2
/products 1 1
ทั้งหมด (Google Analytics ที่กรองข้อมูลที่ซ้ำกัน) 1 3

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

กฎการปรับแต่ง

  • เซสชันที่มีเส้นทางหน้าเว็บหมายถึงเซสชันที่ไม่ซ้ำซึ่งเข้าชมเส้นทาง อย่างน้อย 1 ครั้ง
  • เซสชันที่มีหน้า Landing Page หมายถึงเซสชันที่ไม่ซ้ำกันซึ่งเริ่มต้นใน เส้นทาง หากต้องการดูการเข้าชมหน้า Landing Page ให้ใช้หน้า Landing Page + สตริงการค้นหา แทนเซสชันที่มีเส้นทางหน้าเว็บเสมอ
  • ยอดดูจะนับความถี่ในการโหลดทั้งหมดเสมอ

แนวทางปฏิบัติแนะนำสำหรับนักพัฒนาซอฟต์แวร์และนักวิเคราะห์

  • รักษาสโคปให้สอดคล้องกัน: อย่าใช้มิติข้อมูลการเข้าชมระดับผู้ใช้ (เช่น Channel Group เริ่มต้นของผู้ใช้ครั้งแรก) ร่วมกับเมตริกระดับเซสชัน (เช่น ระยะเวลาเซสชันโดยเฉลี่ย) หากเป้าหมายของคุณคือการทําความเข้าใจประสิทธิภาพของเซสชัน
  • ตรวจสอบ session_start ใน DebugView: ในระหว่างขั้นตอนการ QA และการยืนยัน ให้ใช้เครื่องมือแก้ไขข้อบกพร่องมาตรฐาน เช่น DebugView ของ Google Analytics เพื่อยืนยันว่า session_start ทํางานอย่างถูกต้องเมื่อเริ่มเซสชัน

แนวทางปฏิบัติแนะนำในการจัดการระยะหมดเวลาของเซสชัน

ระยะเวลาเริ่มต้นของเซสชัน Google Analytics คือ 30 นาที

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

เหตุใดการ Ping "Keep-Alive" ทั่วไปจึงเป็นแนวทางที่ไม่ดี

  • เมตริกหลักที่บิดเบือน: หากผู้ใช้ออกจากแท็บ แสดงว่าผู้ใช้ไม่ได้ใช้งานจริง หากคุณบังคับให้เซสชันเปิดอยู่ต่อไป จะทำให้เกิด "เซสชันซอมบี้" และทำให้ระยะเวลาเซสชันเฉลี่ยสูงขึ้นอย่างไม่ถูกต้อง ซึ่งจะบดบังจุดที่แท้จริงที่ผู้ใช้หมดความสนใจหรือออกจากเว็บไซต์
  • ผลกระทบต่อเซสชันที่มีส่วนร่วม: Google Analytics กําหนดเซสชันที่มีส่วนร่วมเป็นเซสชันที่นานกว่า 10 วินาที มีการดูหน้าเว็บอย่างน้อย 2 ครั้ง หรือทําให้เกิดเหตุการณ์สําคัญ (เดิมคือเหตุการณ์ Conversion) หากคุณ ตั้งใจเปิดเซสชันไว้ ระบบจะถือว่าเซสชันนั้นมีส่วนร่วม ซึ่งจะทำให้อัตราการมีส่วนร่วมสูงขึ้น
  • ข้อมูลบวมและค่าใช้จ่าย: หากคุณเรียกใช้เหตุการณ์ ping ว่างเปล่าในเบื้องหลังอย่างต่อเนื่อง จะทําให้เกิดสัญญาณรบกวนในจํานวนเหตุการณ์และเพิ่มค่าใช้จ่ายของคลังข้อมูล หากคุณส่งออกข้อมูล Google Analytics ไปยัง BigQuery

กรณีที่ควรติดตามการมีส่วนร่วมแบบพาสซีฟ (และวิธีดำเนินการ)

มีสถานการณ์ที่ถูกต้องตามกฎหมายซึ่งผู้ใช้มีส่วนร่วมกับเนื้อหาอย่างแข็งขัน แต่ไม่ได้ทริกเกอร์เหตุการณ์การโต้ตอบมาตรฐานของ Google Analytics (เช่น การคลิกหรือการเปลี่ยนแปลงหน้าเว็บ) ในกรณีเหล่านี้ ให้บันทึกเหตุการณ์ความคืบหน้าที่ผู้ใช้เริ่มดำเนินการที่มีความหมายแทนการ Ping แบบ Keep-Alive ทั่วไป

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

หากผู้ใช้ย่อหน้าต่างเบราว์เซอร์หรือเปลี่ยนแท็บ ระบบจะต้องหยุดการ Ping ที่ทำงานอยู่เบื้องหลัง

ตัวอย่างโค้ด: การแจ้งเหตุการณ์ที่รับรู้การมองเห็น

รูปแบบ JavaScript ต่อไปนี้แสดงวิธีติดตามการมีส่วนร่วมแบบพาสซีฟ และพิจารณาระดับการมองเห็นแท็บ ปรับช่วงเวลาการติดตามและค่าพารามิเตอร์ (เช่น 5 นาทีหรือ 300,000 มิลลิวินาที) ตาม Use Case ที่เฉพาะเจาะจง เช่น ระยะเวลาทั่วไปของวิดีโอหรือบทความแบบยาว

const TRACKING_INTERVAL_MILLIS = 5 * 60 * 1000;

let engagementInterval;

function startEngagementTracking() {
  // Prevent duplicate intervals if tab becomes visible
  if (engagementInterval) return;

  engagementInterval = setInterval(() => {
    gtag('event', 'passive_engagement', {
      'engagement_time_msec': TRACKING_INTERVAL_MILLIS
    });
  }, TRACKING_INTERVAL_MILLIS);
}

function stopEngagementTracking() {
  if (engagementInterval) {
    clearInterval(engagementInterval);
    engagementInterval = null;
  }
}

// Start tracking initially if the page is visible
if (!document.hidden) {
  startEngagementTracking();
}

// Stop tracking when tab is hidden, resume when visible
document.addEventListener('visibilitychange', () => {
  if (document.hidden) {
    stopEngagementTracking();
  } else {
    startEngagementTracking();
  }
});

การวัดผลที่ปรับปรุงแล้วของ Google Analytics เทียบกับการติดตามที่กําหนดเอง

ฟีเจอร์ การวัดที่ปรับปรุงแล้วของ Google Analytics จะจัดการ สถานการณ์การติดตามแบบพาสซีฟบางอย่างโดยอัตโนมัติทันทีที่ใช้งาน แม้ว่าจะมีข้อจํากัด ที่เฉพาะเจาะจงก็ตาม

ประเภทการโต้ตอบ จัดการโดยการวัดที่ปรับปรุงแล้วใช่ไหม ข้อกำหนด / รายการการทำงาน
การฝังวิดีโอ YouTube มี ทริกเกอร์เหตุการณ์ video_start, video_complete และ video_progress โดยอัตโนมัติที่ 10%, 25%, 50% และ 75% (ต้องเปิดใช้การรองรับ JS API)
วิดีโอที่ไม่ใช่ของ YouTube (HTML5, Vimeo) ไม่ ต้องมีการติดตั้งใช้งานที่กำหนดเอง เริ่มเหตุการณ์โดยอัตโนมัติโดยใช้ gtag.js หรือจัดการทริกเกอร์โดยใช้ Google Tag Manager (GTM)
การเลื่อนหน้าเว็บมาตรฐาน บางส่วน เรียกใช้scrollเหตุการณ์เมื่อผู้ใช้เลื่อนถึง 90% ของหน้าเว็บเท่านั้น
ความคืบหน้าในการอ่านแบบเพิ่มขึ้น ไม่ ปิดใช้การติดตามการเลื่อนของ Google Analytics ตามค่าเริ่มต้น และใช้เกณฑ์การเลื่อนที่กำหนดเอง (เช่น 25%, 50%, 75%) โดยใช้โปรแกรมหรือใน GTM

ทางเลือกที่ง่ายที่สุด: ปรับขีดจํากัดระยะหมดเวลาของเซสชัน Google Analytics

หากเว็บไซต์ของคุณเน้นเนื้อหารูปแบบยาว หลักสูตรวิดีโอ หรือการใช้งานแอปอย่างต่อเนื่องโดยธรรมชาติ คุณไม่จำเป็นต้องแทรกการแฮ็กสคริปต์ที่กำหนดเอง คุณสามารถ ปรับเกณฑ์เริ่มต้น 30 นาทีภายในอินเทอร์เฟซ Google Analytics ได้สูงสุด 7 ชั่วโมง 55 นาที ดูวิธีการได้ที่ ปรับระยะหมดเวลาของเซสชัน