ดูภาพรวมเชิงแนวคิดของขอบเขตผู้ใช้และเซสชัน รวมถึงวิธีที่ 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 นาที ดูวิธีการได้ที่ ปรับระยะหมดเวลาของเซสชัน