ข้ามไปเนื้อหา

CRM และการซื้อซ้ำ

Cohort Analysis สำหรับร้านค้าออนไลน์: ติดตามการซื้อซ้ำตามเดือนที่ลูกค้าเริ่มซื้อครั้งแรก

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

Read in English
ภาพมุมสูงของสมุดกระดาษกราฟที่เปิดวางอยู่บนโต๊ะไม้ มีการระบายช่องสี่เหลี่ยมด้วยสีน้ำโทนฟ้าและเขียวเรียงเป็นลวดลายขั้นบันไดสามเหลี่ยม พร้อมไม้บรรทัดทองเหลือง ปากกา ถ้วยกาแฟดำ และใบไม้สีเขียวที่มุมซ้ายบน — ภาพประกอบบทความที่สร้างด้วย AI
ภาพประกอบบทความที่สร้างด้วย AI: มุมมองจากด้านบนของสมุดกระดาษกราฟที่เปิดอยู่ โดยหน้าขวามีช่องสี่เหลี่ยมที่ระบายด้วยสีน้ำเรียงเป็นลวดลายคล้ายขั้นบันได ไล่เฉดจากฟ้าอ่อนบริเวณล่างซ้ายไปสู่เขียวเข้มบริเวณบนขวา ส่วนหน้าซ้ายว่างเปล่า มีไม้บรรทัดทองเหลืองและปากกาวางอยู่ด้านขวาของสมุดบนโต๊ะไม้ ถ้วยเซรามิกใส่กาแฟดำอยู่มุมขวาบน และมองเห็นใบไม้สีเขียวกับผ้าสีเขียวพับอยู่ทางซ้าย

จุดเริ่มต้นที่เห็นภาพชัด

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

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

Cohort คืออะไร — และไม่ใช่อะไร

ในบริบทนี้ cohort คือกลุ่มลูกค้าทั้งหมดที่มีคำสั่งซื้อสำเร็จครั้งแรกอยู่ในเดือนปฏิทินเดียวกัน เดือนนั้นเรียกว่า Month 0 หรือเดือนเริ่มต้น ลูกค้าที่สั่งซื้อครั้งแรกในเดือนมกราคมและกลับมาซื้ออีกครั้งในเดือนมีนาคม ยังคงอยู่ใน January cohort — คำสั่งซื้อครั้งที่สองของเขาคือกิจกรรมที่ถูกสังเกตภายในประวัติของ cohort เดิม ไม่ใช่เหตุผลที่จะย้ายเขาไปอยู่ cohort อื่น เมื่อลูกค้าถูกจัดเข้า cohort แล้ว สมาชิกภาพนั้นจะไม่เปลี่ยนอีก

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

นิยามของคำว่า active: การซื้อซ้ำ ไม่ใช่การเข้าชม

สำหรับร้านค้าออนไลน์แบบไม่ใช่สมาชิกสมัครรายเดือน ลูกค้าจะนับว่า active ในเดือนสังเกตใดเดือนหนึ่งก็ต่อเมื่อเขามีการซื้อเพิ่มเติมอย่างน้อย 1 ครั้งในเดือนนั้น การเข้าเว็บไซต์ การเพิ่มสินค้าลง wishlist หรือการเปิดอีเมล ไม่นับ ความต่างนี้สำคัญเพราะมันยึด metric ไว้กับพฤติกรรมที่สร้างรายได้จริง ไม่ใช่การมีส่วนร่วมแบบเฉย ๆ หากภายหลังคุณตัดสินใจจะเปลี่ยนคำนิยาม เช่น ให้นับการแลกคะแนนสะสมด้วย คุณต้องสร้าง cohort ย้อนหลังทั้งหมดใหม่ภายใต้กติกาใหม่นั้นก่อน จึงค่อยนำมาเปรียบเทียบกัน

เดือนสังเกตจะถูกกำหนดแบบอ้างอิงเทียบกับเดือนเริ่มต้น ไม่ใช่อ้างอิงตามปฏิทิน Month 1 หมายถึงเดือนปฏิทินถัดจากเดือนเริ่มต้นทันที Month 2 หมายถึงสองเดือนหลังจากเริ่มต้น และต่อ ๆ ไป January cohort จะมี Month 1 เป็นกุมภาพันธ์ และ Month 2 เป็นมีนาคม ส่วน March cohort จะมี Month 1 เป็นเมษายน การนับแบบอ้างอิงสัมพัทธ์นี้เองที่ทำให้คุณนำ cohort หลายชุดมาเรียงซ้อนกันในตาราง และเทียบกันแบบด้านข้างในช่วงอายุเดียวกันของวงจรลูกค้าได้

Month 0 (M0) คือค่าฐานตั้งต้นของ cohort: มันบันทึกขนาด cohort เดิม หรือลูกค้าทั้งหมดที่มีคำสั่งซื้อครั้งแรกเกิดขึ้นในเดือนนั้น ไม่ใช่ช่อง retention ของการซื้อซ้ำ เพราะตามคำนิยาม สมาชิกทุกคนของ cohort จะถูกนับอยู่ใน M0 เสมอ ดังนั้น M0 จึงเท่ากับ 100% ของ cohort ทุกครั้ง อัตรา retention ของเดือนถัดไป เช่น M1, M2 และต่อ ๆ ไป จะใช้วัดสัดส่วนของฐานตั้งต้นก้อนเดิมนี้ที่มีการสั่งซื้อเพิ่มเติมอย่างน้อย 1 ครั้ง

สูตรอัตรา retention พร้อมตัวอย่างคำนวณ

อัตรา retention ของแต่ละช่องในตาราง cohort คำนวณด้วยสูตรเดียว: นำจำนวนลูกค้าที่ active ในเดือนสังเกตนั้น หารด้วยขนาด cohort ตั้งต้น แล้วคูณ 100 เขียนเป็นสูตรได้ว่า Retention rate = (จำนวนลูกค้าที่ active ในเดือนสังเกต ÷ ขนาด cohort ตั้งต้น) × 100

เพื่อให้เห็นภาพชัด ลองสมมติว่า Bloom Naturals มีลูกค้า 200 คนที่สั่งซื้อครั้งแรกในเดือนมกราคม (January cohort) ในเดือนกุมภาพันธ์ — ซึ่งเป็น Month 1 ของ cohort นี้ — มีลูกค้า 60 คนจาก 200 คนดังกล่าวสั่งซื้อเพิ่มเติมอย่างน้อย 1 ครั้ง ในเดือนมีนาคม — Month 2 — มีลูกค้า 34 คนจาก 200 คนเดิมกลับมา การคำนวณ Month 1 คือ (60 ÷ 200) × 100 = 30.0% การคำนวณ Month 2 คือ (34 ÷ 200) × 100 = 17.0% สังเกตว่าตัวหารคงที่อยู่ที่ 200 ตลอด — มันคือขนาด cohort ตั้งต้นเสมอ ไม่ใช่จำนวนคนจากเดือนก่อนหน้า หากใช้จำนวนของเดือนก่อนหน้าแทน คุณจะได้ metric อีกแบบหนึ่งที่ตีความต่างออกไป ซึ่งเรียกว่า period-over-period rate และมันตอบคนละคำถาม

มีข้อมูลอย่างน้อย 2 ฟิลด์ที่จำเป็นต่อการสร้างแต่ละช่องให้ถูกต้อง: ตัวระบุลูกค้าแบบไม่ซ้ำกัน (unique customer identifier) เพื่อไม่ให้นับคนเดิมซ้ำสองถ้าเขาสั่งหลายออเดอร์ในเดือนเดียวกัน และวันที่สั่งซื้อ (order date) เพื่อให้คุณจัดแต่ละออเดอร์เข้าเดือนสังเกตที่ถูกต้องได้ นอกจากนี้ ตัวระบุคำสั่งซื้อแบบไม่ซ้ำกัน (unique order identifier) ก็มีประโยชน์เพิ่มเติมเมื่อไฟล์ส่งออกของคุณอาจมีแถวซ้ำ หรือเป็นข้อมูลระดับรายการสินค้าในออเดอร์เดียวกัน เพราะมันช่วยให้คุณยุบหลายแถวที่เป็นออเดอร์เดียวกันก่อนค่อยนับลูกค้าแบบไม่ซ้ำ หากละการลบข้อมูลซ้ำในระดับลูกค้า — เช่น ไปนับจำนวนแถวออเดอร์แทนที่จะนับจำนวนลูกค้าแบบไม่ซ้ำ — จำนวน active จะสูงเกินจริง และอาจทำให้อัตรา retention เกิน 100% ซึ่งเป็นสัญญาณชัดเจนว่าการคำนวณมีปัญหา

การสร้างตารางสาม cohort: มกราคม กุมภาพันธ์ มีนาคม

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

กำหนดจุดตัดข้อมูลสมมติเดียวกันคือ เมื่อเริ่มวันที่ 15 เมษายน 2026 ตามเวลาประเทศไทย ช่อง M3 ของมกราคม M2 ของกุมภาพันธ์ และ M1 ของมีนาคม ล้วนหมายถึงเดือนเมษายน จึงยังสังเกตได้เพียงบางส่วนและต้องมีดอกจันทั้งสามช่อง ส่วน M1 และ M2 ของมกราคม กับ M1 ของกุมภาพันธ์ เป็นหน้าต่างเดือนกุมภาพันธ์หรือมีนาคมที่ปิดครบแล้ว เครื่องหมายขีดหมายถึงเดือนในอนาคตที่ยังไม่มีข้อมูลสังเกต ไม่ใช่ retention ศูนย์ ให้เปรียบเทียบเฉพาะเดือนอายุลูกค้าที่ตรงกันและปิดหน้าต่างเดือนปฏิทินครบแล้ว

Cohort (เดือนที่เริ่มเข้า)ขนาด cohort (M0)ลูกค้าที่ active ใน M1Retention % ใน M1ลูกค้าที่ active ใน M2Retention % ใน M2ลูกค้าที่ active ใน M3Retention % ใน M3
มกราคม (ข้อมูลสมมติ)2006030.0%3417.0%22 *11.0% *
กุมภาพันธ์ (ข้อมูลสมมติ)2406225.8%38 *15.8% *——
มีนาคม (ข้อมูลสมมติ)18041 *22.8% *————

การอ่านตาราง: ตัวเลขกำลังบอกอะไร และไม่ได้บอกอะไร

สำหรับ cohort มกราคม ค่า M1 ในกุมภาพันธ์เท่ากับ 30% และ M2 ในมีนาคมเท่ากับ 17% โดยทั้งคู่เป็นเดือนปฏิทินที่ปิดครบแล้ว ส่วน M3 ในเมษายนตอนนี้แสดง 11% แต่ยังเป็นข้อมูลบางส่วน ณ จุดตัด 15 เมษายน จึงใช้ยืนยันการลดลงต่อเนื่องอีกหนึ่งเดือนเต็มไม่ได้ ตัวเลขเหล่านี้สมมติเพื่อการสอน ไม่ใช่เกณฑ์อุตสาหกรรมหรือเหตุให้สรุปว่าลูกค้าหายไปถาวร และ M0 คือฐานสมาชิก 100% ไม่ใช่ผลการซื้อซ้ำ

อัตรา M1 ที่ครบช่วงและเปรียบเทียบกันได้ในที่นี้คือ 30.0% ของ cohort มกราคมในกุมภาพันธ์ กับ 25.8% ของ cohort กุมภาพันธ์ในมีนาคม ส่วน 22.8% ของ cohort มีนาคมมาจากเมษายนที่ยังไม่ครบ จึงต้องตัดออกจากการเปรียบเทียบนั้น ข้อมูลครบช่วงเพียงสองจุดยังไม่ยืนยันแนวโน้มต่อเนื่องหรือสาเหตุ เมื่อมีหน้าต่างที่ตรงกันปิดครบเพิ่มขึ้น จึงตรวจความต่างของช่องทางหาลูกค้า สินค้า และฤดูกาล แทนการระบุว่าความเปลี่ยนแปลงเกิดจากกิจกรรมอย่างใดอย่างหนึ่ง

เครื่องหมายขีดระบุหน้าต่างในอนาคตที่ยังไม่มีข้อมูลสังเกต ส่วนดอกจันระบุเมษายนที่ยังไม่ครบในช่อง M3 ของมกราคม M2 ของกุมภาพันธ์ และ M1 ของมีนาคม ค่าบางส่วนคือจำนวนที่ยังนับไม่ครบช่วง ไม่ใช่ผลทั้งเดือนหรือศูนย์ ต้องแสดงความต่างนี้ไว้เมื่อแชร์ตาราง และตัดช่องบางส่วนออกจากการเทียบกับเดือนที่ครบแล้ว

ปัญหา immature cohort: ทำไม cohort ที่เพิ่งเข้ามาใหม่จึงเปรียบเทียบกับ cohort เก่าอย่างยุติธรรมไม่ได้

ณ จุดตัด 15 เมษายนเดียวกัน cohort มกราคมมีช่วงซื้อซ้ำหลัง M0 ที่ครบแล้วสองช่วง คือ M1 ในกุมภาพันธ์และ M2 ในมีนาคม cohort กุมภาพันธ์มีหนึ่งช่วง คือ M1 ในมีนาคม ส่วน cohort มีนาคมยังไม่มีช่วงหลัง M0 ที่ครบ เพราะ M1 ในเมษายนยังเป็นบางส่วน เมษายนยังไม่ครบสำหรับทุก cohort ไม่ว่าจะอยู่ในคอลัมน์อายุลูกค้าใด cohort ที่เก่ากว่ามีเดือนอายุลูกค้าที่ปิดครบมากกว่า แต่ไม่ได้ทำให้ช่องเมษายนปัจจุบันของตนกลายเป็นข้อมูลครบเดือน

ข้อผิดพลาดที่พบบ่อยคือการมองอัตรา retention ช่วงต้นของ cohort ล่าสุด แล้วสรุปว่ามันแข็งแรงกว่าหรืออ่อนกว่าของ cohort เก่า แม้ตัวเลขช่วงต้นของ cohort ใหม่จะดูดี คุณก็ยังไม่มีข้อมูล Month 3 หรือ Month 6 ดังนั้นการเปรียบเทียบแบบนั้นยังเร็วเกินไป นักวิจัยและนักวิเคราะห์บางคนเรียกสิ่งนี้ว่า censoring: หน้าต่างการสังเกตถูกตัดจบก่อนที่เรื่องราวของ cohort นั้นจะครบถ้วน แนวปฏิบัติที่ถูกต้องคือเปรียบเทียบ cohort เฉพาะในเดือนสังเกตที่ตรงกันและผ่านไปครบแล้วเท่านั้น — เช่น เปรียบเทียบอัตรา Month 1 ที่ครบแล้วของทุก cohort หรืออัตรา Month 3 ที่ครบแล้วของทุก cohort ช่วงเวลาที่ยังมาไม่ถึงควรปล่อยว่างไว้หรือทำเครื่องหมาย '—' ส่วนช่วงเวลาที่ผ่านไปเพียงบางส่วนควรถูกตัดออกจากการเปรียบเทียบ หรือแสดงพร้อมเครื่องหมายที่สื่อชัดว่าเป็นข้อมูลไม่ครบช่วงเวลา (เช่น ดอกจัน) เหมือนในตารางด้านบน

ลูกค้าที่ซื้อครั้งแรก 28 มกราคมเป็นสมาชิกเต็มคนของ cohort มกราคม แม้แคมเปญวันที่ 25 มกราคมดึงผู้ซื้อครั้งแรกปลายเดือนเข้ามา 80 ราย ทุกคนก็อยู่ในฐาน M0 ของมกราคม และ M1 ของพวกเขาคือกุมภาพันธ์ M0 วัดสมาชิก ดังนั้นการเหลือวันก่อนสิ้นมกราคมน้อยกว่าไม่ใช่เหตุให้ตัดออกหรือลดน้ำหนัก อย่างไรก็ตาม เดือนปฏิทินทำให้เวลาที่ผ่านไปนับจากการซื้อครั้งแรกต่างกัน หากคำถามคือซื้อซ้ำภายใน 30 วันพอดีหลังการซื้อครั้งแรกของแต่ละคน ต้องสร้างตัววัดแบบ rolling-day แยกต่างหาก และรอให้ทุกคนที่นำมาเทียบมีหน้าต่างครบ อย่าปนนิยามนั้นกับตารางเดือนปฏิทิน

อัตรา retention ใน Month 1 แบบสมมติตาม entry cohort (ตัวอย่างเพื่อการสอนของ Bloom Naturals)

ค่า M1 สมมติ: มกราคม 30.0% และกุมภาพันธ์ 25.8% เป็นหน้าต่างที่ครบแล้ว ส่วนมีนาคม 22.8% เป็นเมษายนที่ยังไม่ครบ ณ จุดตัด 15 เมษายน จึงตัดออกจากการเปรียบเทียบกับสองค่านั้น ข้อมูลครบช่วงสองจุดยังไม่ยืนยันแนวโน้มต่อเนื่องหรือสาเหตุ ตัวเลขสร้างขึ้นเพื่อการสอน ไม่ใช่ผลที่วัดได้จากร้านจริง

  1. 30 % ของ cohort ตั้งต้นที่กลับมาสั่งซื้อซ้ำใน Month 1cohort เดือนมกราคม

    ลูกค้าสมมติ 60 จาก 200 คนกลับมาใน Month 1 (หน้าต่างครบแล้ว)

  2. 25.8 % ของ cohort ตั้งต้นที่กลับมาสั่งซื้อซ้ำใน Month 1cohort เดือนกุมภาพันธ์

    ลูกค้าสมมติ 62 จาก 240 คนกลับมาใน Month 1 (หน้าต่างครบแล้ว)

  3. 22.8 % ของ cohort ตั้งต้นที่กลับมาสั่งซื้อซ้ำใน Month 1cohort เดือนมีนาคม

    ลูกค้าสมมติ 41 จาก 180 คนกลับมาใน Month 1 (หน้าต่างยังไม่ครบ — ควรตีความด้วยความระมัดระวัง)

ค่าเฉลี่ยแบบ blended เทียบกับอัตราแบบ cohort: ทำไมความต่างนี้จึงสำคัญ

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

สัดส่วนลูกค้าซื้อซ้ำทั้งร้านที่ 18% เป็นเพียงสมมติฐานประกอบอีกกรณีหนึ่ง ไม่ใช่ค่าที่คำนวณจากตาราง cohort นี้ การนำเปอร์เซ็นต์ลูกค้าที่ active ของแต่ละ cohort รายเดือนมาเฉลี่ยตรง ๆ ไม่สามารถสร้างสัดส่วนนั้นได้ ต้องกำหนดช่วงรายงานและนับลูกค้าที่ซื้อซ้ำแบบไม่ซ้ำจากข้อมูลต้นทาง ตัวเลขรวมอาจผสมลูกค้าที่มีอายุและช่องทางหามาต่างกัน ให้ใช้มุมมอง cohort ตรวจช่วงที่ตรงกันและปิดครบแล้ว ตัวเลขรวมอย่างเดียวหรือ cohort ล่าสุดที่ยังไม่ครบช่วงต่างก็ไม่ยืนยันว่า retention กำลังถดถอย

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

อ้างอิง: Shopify: การวิเคราะห์ Cohort Retention — วิธีลด Churn

อีก 3 มุมมอง cohort นอกเหนือจากเดือนที่ซื้อครั้งแรก

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

Acquisition-channel cohorts คือการจัดกลุ่มลูกค้าตามแหล่งที่มาของออเดอร์แรก เช่น organic search, โฆษณา LINE, แคมเปญ TikTok, การส่งต่อจาก marketplace หรือ QR code จากออฟไลน์ การเปรียบเทียบ cohort “TikTok Ads — January” กับ “Organic Search — January” ที่เดือนสังเกตเดียวกัน จะช่วยให้เห็นว่าลูกค้าที่มาจากโซเชียลมีเดียกลับมาซื้อซ้ำในอัตราใกล้เคียงกับลูกค้าที่มาจากการค้นหาหรือไม่ หากกลุ่ม TikTok ลดลงแรงหลัง Month 1 ขณะที่กลุ่ม organic ยังรักษาอัตราที่พอใช้ได้ไปถึง Month 3 นั่นเป็นหลักฐานบ่งชี้ — แต่ยังไม่ใช่ข้อพิสูจน์ — ว่าช่องทางนั้นอาจดึงดูดผู้ซื้อที่ไวต่อโปรโมชันมากกว่าผู้ซื้อที่ภักดีต่อสินค้า คำว่า “หลักฐานบ่งชี้” ถูกใช้โดยตั้งใจ เพราะรูปแบบเดียวกันนี้อาจสะท้อนความต่างของสินค้าที่โปรโมตในแต่ละช่องทาง ระดับราคา หรือกลุ่มประชากรของผู้ชมได้เช่นกัน จึงยังต้องตรวจสอบเพิ่มก่อนจะปรับงบประมาณ

Behavioral cohorts คือการจัดกลุ่มลูกค้าตามพฤติกรรมเฉพาะที่เกิดขึ้น เช่น สมัคร loyalty program, ใช้ลิงก์แนะนำเพื่อน หรือกรอกลงทะเบียนสินค้า ตัวอย่างสมมติ: หาก Bloom Naturals พบว่าลูกค้าที่สแกน QR code บนสินค้าเพื่อลงทะเบียนการซื้อ มีอัตราการกลับมาซื้อใน Month 2 เท่ากับ 28% เทียบกับ 17% สำหรับลูกค้าที่ไม่ได้ลงทะเบียน ความแตกต่างนี้ก็น่าตรวจสอบต่อ อย่างไรก็ตาม ต้องแยกให้ชัดระหว่างความสัมพันธ์ที่สังเกตได้กับผลเชิงเหตุและผล ลูกค้าที่ตั้งใจลงทะเบียนอาจมีความสนใจต่อแบรนด์มากกว่าค่าเฉลี่ยอยู่แล้ว การลงทะเบียนอาจไม่ได้เป็นสาเหตุของ retention ที่สูงขึ้น แต่ทั้งสองอย่างอาจเกิดจากคุณลักษณะพื้นฐานเดียวกัน การพิสูจน์เหตุและผลต้องใช้การทดลองที่ควบคุมตัวแปร

Product cohorts คือการจัดกลุ่มลูกค้าตามหมวดสินค้าชิ้นแรกที่ซื้อ ร้านสกินแคร์อาจเปรียบเทียบลูกค้าที่ซื้อคลีนเซอร์เป็นชิ้นแรกกับลูกค้าที่ซื้อเซรั่มเป็นชิ้นแรก หากกลุ่มที่เริ่มจากคลีนเซอร์กลับมาซื้อซ้ำสูงกว่าทุกเดือนสังเกต นั่นบ่งชี้ว่าคลีนเซอร์อาจสร้างพฤติกรรมการใช้ต่อเนื่องได้ดีกว่า หรือเปิดโอกาสให้ cross-sell ได้เป็นธรรมชาติมากกว่า Insight จาก product cohort สามารถนำไปใช้กับการตัดสินใจด้านการจัดสินค้าได้ เช่น ให้สินค้าเริ่มต้นที่เปลี่ยนเป็นลูกค้าได้ดีที่สุดโดดเด่นมากขึ้นในครีเอทีฟสำหรับการหาลูกค้าใหม่แบบ paid acquisition

อ้างอิง: Shopify: การวิเคราะห์ Cohort Retention — วิธีลด Churn

การประเมิน churn ของ cohort สำหรับร้านที่ไม่ได้ขายแบบสมัครสมาชิก

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

ตัวอย่างนโยบายหนึ่งเริ่มจากช่วงห่างเฉลี่ยระหว่างออเดอร์แรกกับออเดอร์ที่สองของลูกค้าที่สังเกตว่าซื้ออย่างน้อยสองครั้ง ค่านี้อธิบายผู้ซื้อซ้ำที่พบ ไม่ใช่ความน่าจะเป็นกลับมาซื้อของลูกค้าทุกคนที่ผ่านการสอบเทียบแล้ว หากเฉลี่ย 45 วัน ร้านอาจเลือก 90 วัน หรือ 2 × 45 เป็นเกณฑ์นำมาทบทวน สำหรับสัดส่วนระดับ cohort ที่ไม่ซื้อซ้ำภายใน 90 วัน ให้นับสมาชิกเดิมแบบไม่ซ้ำที่ไม่มีออเดอร์ที่สองเข้าเกณฑ์ในหน้าต่าง 90 วันรายบุคคล รายงานเมื่อทุกหน้าต่างที่นำมาเทียบครบแล้ว หรือระบุว่าเป็นข้อมูลบางส่วน นี่เป็นกติกาความเงียบที่เลือกใช้ ไม่ใช่ข้อพิสูจน์ว่าหายไปถาวรหรือต้องมีการแทรกแซง และต่างจากช่องเดือนปฏิทินข้างต้น

มีจุดอ้างอิงที่เผยแพร่ไว้หนึ่งแหล่งจากบทความเรื่อง churn ของ Shopify ซึ่งยกตัวอย่างสถานการณ์ DTC ด้านสกินแคร์ และชี้ว่าค่า cohort churn ราว 75% พบได้บ่อยในธุรกิจที่ลูกค้ามักซื้อครั้งเดียว เช่น สกินแคร์หรือแบรนด์แฟชั่นทั่วไป ตัวเลขนี้ไม่ใช่ benchmark ทั่วไปสำหรับอีคอมเมิร์ซแบบ non-subscription ทุกประเภท แยกอีกแหล่งหนึ่ง คู่มือด้าน retention สำหรับลูกค้าองค์กรของ Shopify อ้างงานศึกษาลูกค้า DTC มากกว่า 156,000 ราย และระบุว่าอัตราการซื้อซ้ำแตกต่างกันมากตามหมวดสินค้า: สินค้าใช้แล้วหมดมีได้ถึง 22–44%, แฟชั่นมักอยู่ราว 10–17%, และสินค้าคงทนกับของใช้ในบ้านอยู่ในช่วง 7–18% ตัวเลขเหล่านี้ควรใช้เป็นเพียงแนวทางคร่าว ๆ เท่านั้น และมาจากชุดข้อมูล DTC ที่อาจไม่สะท้อนสภาพตลาดไทย สัดส่วนหมวดสินค้า พลวัตของแพลตฟอร์ม หรือระดับราคา ใช้ประวัติออเดอร์จริงของร้านคุณเพื่อคำนวณช่วงเวลาและเกณฑ์ของตัวเอง แทนการยึดตัวเลขเผยแพร่เป็นค่าเริ่มต้น

อ้างอิง: Shopify: Churn Rate ในอีคอมเมิร์ซ — วิธีคำนวณและลดมัน · Shopify Enterprise: กลยุทธ์รักษาลูกค้าอีคอมเมิร์ซ (2026)

วิธีสร้างตาราง cohort แรกของคุณในทางปฏิบัติ

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

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

ขั้นตอนที่สอง: สำหรับตัวระบุลูกค้าแต่ละราย ให้หา earliest order date หรือวันที่สั่งซื้อที่เก่าที่สุด วันที่นี้จะเป็นตัวกำหนด cohort ของลูกค้าคนนั้น จัดลูกค้าทุกคนที่มีออเดอร์แรกอยู่ในเดือนปฏิทินเดียวกันให้อยู่ cohort เดียวกัน

ขั้นตอนที่สาม: ในแต่ละเดือนปฏิทินถัดไป ให้นับว่ามีตัวระบุลูกค้าแบบไม่ซ้ำกันกี่รายจากแต่ละ cohort ที่มีการสั่งซื้ออย่างน้อยหนึ่งครั้ง อย่านับจำนวนแถวออเดอร์ ให้นับจำนวนลูกค้าที่ไม่ซ้ำกัน ลูกค้าหนึ่งคนที่สั่งสามออเดอร์ในเดือนกุมภาพันธ์ จะมีค่า contribution ต่อ active count ของเดือนกุมภาพันธ์เท่ากับ 1 ไม่ใช่ 3

ขั้นตอนที่สี่: นำ active count ของแต่ละช่องหารด้วยขนาด cohort เดิม แล้วคูณด้วย 100 ใส่ผลลัพธ์ลงในตารางที่มีแถวเป็น cohort และคอลัมน์เป็นเดือนสังเกต (M0, M1, M2, ...) เว้นช่องว่างไว้ — หรือใส่เครื่องหมาย “—” — สำหรับเดือนสังเกตที่ยังไปไม่ถึง สำหรับเดือนสังเกตที่ผ่านไปเพียงบางส่วน ให้ตัดออกจากการเปรียบเทียบข้าม cohort หรือทำเครื่องหมายให้ชัดว่าเป็นข้อมูลไม่ครบช่วงเวลา

ขั้นตอนที่ห้า: ตรวจสอบผลรวมของคุณแบบ sanity check ค่า M0 บันทึกขนาด cohort ตั้งต้นและเป็นฐาน 100% สำหรับการคำนวณ retention ของเดือนถัด ๆ ไป หากช่องใดเกิน 100% แปลว่าคุณน่าจะนับลูกค้าซ้ำ หรือใช้ตัวระบุผิด หากช่องใดแสดง 0% ในเดือนต้น ๆ ทั้งที่คาดว่าจะมีกิจกรรมบางส่วน ก็ควรตรวจสอบว่าเกิดข้อผิดพลาดจากการกรองข้อมูลหรือไม่

ข้อจำกัด ความผิดพลาดที่พบบ่อย และวิธีรับมือเมื่อข้อมูลไม่เรียบร้อย

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

ออเดอร์ที่ถูกยกเลิกและคืนเงินควรถูกตัดออกจากการคำนวณ cohort หรืออย่างน้อยต้องถูกปฏิบัติอย่างสม่ำเสมอ หากออเดอร์เดียวของลูกค้าใน Month 2 ถูกคืนเงินเต็มจำนวนในภายหลัง การนับออเดอร์นั้นเป็น “active” จะทำให้ retention สูงเกินจริง กำหนดกติกาการนับให้ชัดก่อนเริ่มคำนวณ เช่น “นับเฉพาะออเดอร์ที่มีสถานะ delivered หรือ completed ที่ยืนยันแล้ว”

ขนาด cohort แตกต่างกันไปในแต่ละเดือน และบางครั้งต่างกันมาก ร้านที่ทำแคมเปญใหญ่ในเดือนหนึ่งอาจมี cohort ใหญ่กว่ารอบข้างถึงสามเท่า อัตรา retention จาก cohort ใหญ่มีเสถียรภาพทางสถิติมากกว่า cohort เล็ก — อัตรา 30% ของ cohort ขนาด 10 คน (3 คน) มีความไม่แน่นอนมากกว่าอัตรา 30% ของ cohort ขนาด 500 คน (150 คน) อย่างมาก เมื่อขนาด cohort ต่างกันอย่างมีนัยสำคัญ ควรระวังการสรุปผลแรง ๆ จากกลุ่มเล็ก

สุดท้าย อย่าตัดสินใจจากข้อมูลของเดือนเดียวแบบแยกขาดจากบริบท อัตรา retention ของ Month 1 ที่ดูสูงผิดปกติ อาจเกิดจากแคมเปญช่วงกลางเดือนที่ดึงการซื้อซ้ำให้เกิดเร็วขึ้น ไม่ใช่การปรับตัวดีขึ้นของ loyalty อย่างแท้จริง การมองข้ามหลาย cohort ติดต่อกันก่อนสรุปว่ามีบางอย่างเปลี่ยนไปอย่างเป็นระบบเป็นแนวปฏิบัติการวิเคราะห์ที่ดี โดยจำนวน cohort ที่ควรใช้ขึ้นอยู่กับขนาด cohort ตามปกติของร้าน ฤดูกาลของธุรกิจ และขนาดของความเปลี่ยนแปลงที่เห็น

เปลี่ยน insight จาก cohort ให้เป็นการลงมือทำ: จับจังหวะ winback และมองหาจุดติดขัด

ค่า M1 ต่ำหมายถึงสมาชิกเดิมจำนวนน้อยที่มีออเดอร์ซ้ำเข้าเกณฑ์ในเดือนปฏิทินถัดไป ไม่ได้หมายความว่าพวกเขาไม่เคยซื้อซ้ำ เพราะบางคนอาจซื้อเพิ่มใน M0 หรือกลับมาใน M2 ใช้เดือนที่ตรงกันและครบแล้วเพื่อตั้งคำถามที่จะตรวจต่อ จากนั้นดูจังหวะซื้อรายบุคคล หากผู้ซื้อซ้ำที่พบมีช่วงห่างเฉลี่ย 45 วัน ร้านอาจทดลองการเตือนที่ได้รับอนุญาตราววันที่ 35–40 เป็นตัวอย่างนโยบาย แต่วันเหล่านั้นไม่ใช่เวลาติดต่อที่เหมาะที่สุดซึ่งตารางเดือนปฏิทินพิสูจน์แล้ว

รูปแบบของการติดต่อขึ้นอยู่กับสิ่งที่คุณรู้เกี่ยวกับลูกค้าคนนั้น หากลูกค้าซื้อคลีนเซอร์ และโดยทั่วไปสินค้านั้นมักใช้หมดในหกสัปดาห์ การเตือนให้ซื้อเติมในเวลาที่เหมาะสมย่อมดูเป็นธรรมชาติและมีประโยชน์ แต่ถ้าลูกค้าซื้อสินค้าที่มักซื้อครั้งเดียว การเสนอขายสินค้าใช้ร่วมกันที่เป็นของสิ้นเปลืองจะเหมาะกว่าการเตือนให้ซื้อเติมซ้ำ Cohort analysis จะช่วยชี้จังหวะเวลา ส่วนข้อมูลสินค้าและประวัติการซื้อจะช่วยกำหนดข้อความที่ควรสื่อ โปรดทราบว่า CasperBrain รองรับการวิเคราะห์ retention และการส่งออก CSV ที่ได้รับอนุญาตตามสิทธิ์ของผู้ใช้เพื่อใช้วางแผน — ส่วนการลงมือสื่อสารจริง ไม่ว่าจะเป็นการโทรหรือการส่งข้อความ เป็นอีกขั้นตอนหนึ่งที่ทีมของคุณหรือเครื่องมือสำหรับการปฏิบัติการโดยเฉพาะเป็นผู้จัดการ

ตาราง cohort ยังช่วยให้คุณมองเห็นจุดติดขัดได้ก่อนที่ปัญหาจะสะสม หาก cohort หนึ่งเคยอยู่ที่ 20% ในเดือน 1 แต่จู่ ๆ เหลือเพียง 8% ในเดือน 2 ขณะที่ cohort เก่ากว่าเคยอยู่ที่ 14–16% ในช่วงเดียวกัน แปลว่ามีบางอย่างเปลี่ยนไประหว่างเดือน 1 กับเดือน 2 สำหรับลูกค้ากลุ่มนั้น ความเป็นไปได้อาจรวมถึงปัญหาคุณภาพสินค้าที่กระทบล็อตใดล็อตหนึ่ง ความล่าช้าในการจัดส่งในช่วงเวลาหนึ่ง หรือการเปลี่ยนราคาที่ทำให้ลูกค้ารับรู้ความคุ้มค่าน้อยลง การสืบหาสาเหตุขณะที่ cohort ยังมีอายุไม่มาก จะเปิดโอกาสให้คุณกู้ลูกค้ากลุ่มนี้กลับมาได้ดีที่สุด ก่อนที่พวกเขาจะตัดสินใจถาวรว่าจะไม่กลับมาอีก

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

อ้างอิง: Shopify: การวิเคราะห์ Cohort Retention — วิธีลด Churn

แหล่งข้อมูลและวิธีจัดทำ

ตัวอย่างในบทความเป็นข้อมูลสมมติ ไม่มีข้อมูลลูกค้าจริง บทความจัดทำโดยทีม CasperBrain โดยใช้ AI ช่วยร่าง ตรวจข้อเท็จจริงและภาษาก่อนเผยแพร่