หากต้องการดูภาพรวมเชิงแนวคิดของขอบเขตผู้ใช้และเซสชัน รวมถึงวิธีที่ 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 + สตริงการค้นหา แทนเซสชันที่มีเส้นทางหน้าเว็บ เสมอ
- การดู จะนับความถี่ในการโหลดทั้งหมดเสมอ
แนวทางปฏิบัติแนะนำสำหรับนักพัฒนาแอปและนักวิเคราะห์
- รักษาขอบเขตให้สอดคล้องกัน: อย่ารวมมิติข้อมูลการเข้าชมที่กำหนดขอบเขตระดับผู้ใช้ (เช่น กลุ่มแชแนลเริ่มต้นของผู้ใช้ครั้งแรก) กับเมตริกที่กำหนดขอบเขตระดับเซสชัน (เช่น ระยะเวลาเซสชันเฉลี่ย) หากเป้าหมายของคุณคือการทำความเข้าใจ ประสิทธิภาพของเซสชัน
- ตรวจสอบ
session_startใน DebugView: ในระหว่างขั้นตอนการประกันคุณภาพและการตรวจสอบ ให้ใช้เครื่องมือแก้ไขข้อบกพร่องมาตรฐาน เช่น Google Analytics DebugView เพื่อ ยืนยันว่าsession_startทำงานอย่างถูกต้องเมื่อมีการเริ่มต้นเซสชัน
แนวทางปฏิบัติแนะนำในการจัดการระยะหมดเวลาของเซสชัน
ระยะเวลาเริ่มต้นของเซสชัน Google Analytics คือ 30 นาที
เราไม่แนะนำให้ติดตั้งใช้งานโค้ดที่กำหนดเองเพื่อ "Ping" 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 พื้นหลังจะต้องหยุด
ตัวอย่างโค้ด: Ping เหตุการณ์ที่รับรู้การมองเห็น
รูปแบบ JavaScript ต่อไปนี้แสดงวิธีติดตามการมีส่วนร่วมแบบพาสซีฟและพิจารณาการมองเห็นแท็บ ปรับช่วงเวลาการติดตามและค่าพารามิเตอร์ (เช่น 5 นาทีหรือ 300,000 มิลลิวินาที) ตามกรณีการใช้งานเฉพาะ เช่น ระยะเวลาทั่วไปของวิดีโอหรือบทความแบบยาว
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 นาที ดูวิธีการได้ที่ ปรับระยะหมดเวลาของเซสชัน