ทำไมยอด Purchase ใน Snapchat Ads Manager ไม่เท่ากับยอดขายที่บัญชีจริง

สรุปสั้น ๆ
Purchase Event บน Snapchat ต้องมีอย่างน้อย Value และ Currency ที่ถูกต้อง พร้อม Customer Data ที่ผ่านการ hash ตามรูปแบบที่แพลตฟอร์มรองรับ เพื่อให้จับคู่กับผู้ใช้ได้แม่นขึ้น ความต่างระหว่างยอดใน Ads Manager กับยอดขายจริงมักเกิดจาก Lag เวลา การนับซ้ำ หรือ Order ที่ยังไม่ได้ตัดยอดคืนสินค้าออก ไม่ใช่แค่เรื่องตั้งค่าโค้ดผิด
เจ้าของร้านหลายคนเจอสถานการณ์คล้ายกัน เปิด Snapchat Ads Manager ตอนสิ้นเดือนเห็นยอด Purchase อยู่ที่ตัวเลขหนึ่ง แต่พอไปเปิดรายงานยอดขายจากระบบหลังบ้านหรือบัญชีธนาคารกลับเห็นอีกตัวเลขหนึ่งที่ไม่ตรงกันเลย บางเดือนใน Ads Manager สูงกว่า บางเดือนต่ำกว่า จนเริ่มไม่แน่ใจว่าจะเชื่อตัวเลขไหนดี
ปัญหานี้ไม่ได้เกิดจากแพลตฟอร์มโกหกหรือระบบบัญชีผิดพลาด แต่เกิดจากธรรมชาติของการวัดผลที่มาจากคนละจุดกัน Ads Manager นับจากเหตุการณ์ Purchase ที่ pixel หรือ CAPI ส่งเข้าไปตามเวลาที่มันถูกส่ง ในขณะที่ยอดขายจริงในบัญชีนับจากเงินที่เข้าจริงตามรอบบัญชี ซึ่งมีเรื่อง Time Zone การคืนสินค้า และการยกเลิกออร์เดอร์เข้ามาเกี่ยวข้องด้วย
บทความนี้จะไล่ให้เห็นทีละจุดว่า Purchase Event ที่ส่งไปหา Snapchat ควรมีข้อมูลอะไรบ้างถึงจะสมบูรณ์ ทำไมยอดถึงคลาดเคลื่อนได้แม้ตั้งค่าถูกต้อง และธุรกิจที่ปิดการขายผ่าน LINE ควรวางระบบตรงจุดไหนเป็นพิเศษ
Purchase Event คืออะไร และทำไมต้องส่งให้ตรงจุด
Purchase Event คือเหตุการณ์ที่บอก Snapchat ว่ามีการซื้อขายเกิดขึ้นจริง เป็นหนึ่งใน Macro Conversion ที่มีความสำคัญสูงสุดในบรรดา Event ทั้งหมด เพราะเป็นจุดที่เชื่อมโยงเงินที่จ่ายไปกับค่าโฆษณาเข้ากับรายได้ที่ธุรกิจได้กลับมาโดยตรง ต่างจาก Event ต้นทางอย่าง View Content หรือ Add to Cart ที่บอกเพียงความสนใจ แต่ยังไม่ยืนยันว่าจะมีเงินเข้าจริง
การส่ง Purchase Event ให้ตรงจุดหมายถึงการส่งในเวลาที่ใกล้เคียงกับเหตุการณ์จริงมากที่สุด ไม่ใช่ส่งล่าช้าเป็นวันหรือเป็นสัปดาห์โดยไม่มีเหตุผล เพราะยิ่งส่งล่าช้า ระบบของ Snapchat ก็ยิ่งจับคู่ Event นั้นกับ Click หรือ Session ต้นทางได้ยากขึ้น และอาจทำให้ Conversion นั้นตกไปอยู่นอกช่วง Attribution Window ที่แพลตฟอร์มกำหนดไว้
Value และ Currency ต้องระบุแบบไหนถึงจะถูกต้อง
สองฟิลด์ที่มักถูกมองข้ามหรือใส่ผิดบ่อยที่สุดคือ Value กับ Currency ถ้าใส่ Value เป็นราคาสินค้าก่อนหักส่วนลด ทั้งที่ลูกค้าจ่ายจริงหลังหักโปรโมชันไปแล้ว ตัวเลขที่ Snapchat ใช้คำนวณ ROAS จะสูงเกินจริงทันที เพราะระบบไม่รู้ว่ามีส่วนลดเกิดขึ้น มันเชื่อค่าที่ธุรกิจส่งไปเท่านั้น
ส่วน Currency ก็สำคัญไม่แพ้กัน ถ้าธุรกิจขายในไทยแต่ระบบตั้งค่า Currency ผิดเป็นสกุลเงินอื่นโดยไม่ตั้งใจ ตัวเลข Value ที่ส่งไปจะถูกตีความผิดทันที เช่นตัวเลขหลักพันบาทอาจถูกนับเป็นหลักพันดอลลาร์ ทำให้ ROAS ที่คำนวณออกมาผิดเพี้ยนไปไกลจากความเป็นจริงมาก ควรตรวจสอบว่า Currency ที่ตั้งไว้ในระบบตรงกับสกุลเงินที่ลูกค้าจ่ายจริงเสมอ
อีกจุดที่ควรระวังคือกรณีสินค้าหลายรายการในออร์เดอร์เดียว บางระบบส่ง Value เป็นราคาสินค้าชิ้นแรกชิ้นเดียวแทนที่จะเป็นยอดรวมทั้งออร์เดอร์ ทำให้ Value ต่ำกว่าความเป็นจริงอย่างเป็นระบบ ควรตรวจสอบโค้ดหรือการตั้งค่าให้แน่ใจว่า Value ที่ส่งคือยอดรวมสุทธิของออร์เดอร์นั้นจริง ๆ
ข้อมูลลูกค้าที่ควรแนบไปกับ Purchase Event
นอกจาก Value และ Currency แล้ว Purchase Event ควรแนบข้อมูลลูกค้าบางส่วนไปด้วย เพื่อช่วยให้ Snapchat จับคู่เหตุการณ์กับผู้ใช้ที่คลิกแอดได้แม่นขึ้น ข้อมูลเหล่านี้ต้องผ่านการ hash ตามรูปแบบที่แพลตฟอร์มรองรับก่อนส่งเสมอ ไม่ใช่ส่งข้อมูลดิบออกไปตรง ๆ:
- อีเมลหรือเบอร์โทรที่ผ่านการ hash ตามมาตรฐานที่ Snapchat กำหนด ไม่ใช่ข้อมูลดิบที่อ่านได้ตรง
- Click ID ที่เก็บไว้ตั้งแต่ตอนลูกค้าคลิกแอด ใช้เป็นตัวช่วยจับคู่เหตุการณ์กับ Session ต้นทาง
- Order ID ที่ไม่ซ้ำกันในแต่ละคำสั่งซื้อ ใช้เป็น Deduplication Key ป้องกันการส่งซ้ำ
- Event Time ที่ตรงกับเวลาที่เหตุการณ์เกิดขึ้นจริง ไม่ใช่เวลาที่ระบบประมวลผลเสร็จซึ่งอาจล่าช้ากว่า
สาเหตุที่ยอดใน Ads Manager ไม่ตรงกับยอดขายจริง
แม้ตั้งค่าทุกอย่างถูกต้องตามหลักการแล้ว ก็ยังมีเหตุผลตามธรรมชาติหลายข้อที่ทำให้ตัวเลขสองฝั่งไม่มีวันตรงกันเป๊ะ ตารางนี้สรุปสาเหตุที่พบบ่อยและวิธีมองแต่ละกรณี:
| สาเหตุ | ผลต่อยอด Ads Manager | สิ่งที่ควรทำ |
|---|---|---|
| Time Zone ไม่ตรงกัน | ยอดของวันคาบเกี่ยวกันสองวัน | ตั้ง Time Zone ในระบบให้ตรงกับรอบบัญชี |
| ยังไม่หัก Refund/Cancel | ยอด Ads Manager สูงกว่ายอดสุทธิจริง | แยกดู Gross กับ Net Revenue เสมอ |
| Order นับซ้ำจากหลายช่องทาง | ยอดสูงเกินจริง | ใช้ Order ID เดียวกันเป็น Deduplication Key |
| Conversion Lag สูง | ยอดของเดือนปัจจุบันดูต่ำ แล้วขยับขึ้นทีหลัง | รอดูตัวเลขย้อนหลังก่อนสรุปด่วน |
| Match Rate ไม่ถึง 100% | บาง Order ไม่ถูกจับคู่กับ Click | ยอมรับว่ามีขีดจำกัดตามธรรมชาติของแพลตฟอร์ม |
กันนับ Purchase ซ้ำเมื่อมีหลายช่องทางส่งข้อมูลเข้ามา
ธุรกิจที่ใช้ทั้ง Pixel และ CAPI ส่ง Purchase Event พร้อมกัน หรือมีหลายระบบที่อาจส่ง Event เดียวกันซ้ำ เช่น ระบบเว็บไซต์กับระบบแอดมินที่ยืนยันออร์เดอร์แยกกัน ต้องมีกลไกป้องกันการนับซ้ำที่ชัดเจน ไม่เช่นนั้นยอด Purchase ใน Ads Manager จะสูงเกินจริงอย่างเป็นระบบโดยไม่มีใครสังเกตเห็น
หัวใจของการกันซ้ำคือการใช้ Order ID หรือ Transaction ID ที่ไม่ซ้ำกันในแต่ละคำสั่งซื้อเป็น Deduplication Key แล้วส่งค่าเดียวกันนี้ไปพร้อมกับทุก Event ที่เกี่ยวข้องกับออร์เดอร์นั้น ไม่ว่าจะส่งผ่าน Pixel หรือ CAPI ก็ตาม เพื่อให้ Snapchat จับคู่และนับเป็นเหตุการณ์เดียวได้ถูกต้อง
Conversion Lag และ Time Zone ทำให้ตัวเลขดูสับสนได้ยังไง
Conversion Lag คือระยะเวลาระหว่างตอนที่ลูกค้าคลิกแอดกับตอนที่เกิด Purchase จริง ธุรกิจที่ขายสินค้าราคาสูงหรือใช้เวลาตัดสินใจนาน มักมี Lag ยาวกว่าธุรกิจที่ขายสินค้าราคาถูกซึ่งตัดสินใจเร็ว การเปิดดูรายงานเร็วเกินไปก่อนที่ Lag จะหมดรอบ อาจทำให้เห็นตัวเลขต่ำกว่าความเป็นจริง แล้วขยับขึ้นทีหลังเมื่อ Purchase ที่ Lag นานทยอยเข้ามา
ส่วน Time Zone เป็นเรื่องเทคนิคที่ดูเล็กแต่ส่งผลใหญ่ ถ้าระบบส่ง Event Time โดยใช้ Time Zone ของเซิร์ฟเวอร์ที่ต่างจาก Time Zone ที่ธุรกิจใช้ปิดรอบบัญชี ยอดของวันสุดท้ายในเดือนอาจถูกนับไปอยู่ในเดือนถัดไป หรือยอดของวันแรกในเดือนอาจถูกนับย้อนไปอยู่ในเดือนก่อนหน้า ทำให้ยอดรายเดือนดูคลาดเคลื่อนทั้งที่จริง ๆ เป็นแค่ปัญหาการตั้งค่าเวลา
ธุรกิจที่ปิดการขายในแชท LINE ควรกำหนด Purchase Event ตอนไหน
สำหรับธุรกิจที่ลูกค้าคลิกแอด Snapchat แล้วเข้าไปคุยต่อใน LINE ก่อนจะโอนเงินปิดการขาย จุดที่ควรถือว่าเป็น Purchase ไม่ใช่ตอนที่ลูกค้าทักเข้ามา และไม่ใช่ตอนที่แอดมินเสนอราคา แต่ควรเป็นตอนที่ยืนยันได้แล้วว่ามีการชำระเงินจริงเกิดขึ้น เพราะถ้าถือ Event ก่อนหน้านั้นเป็น Purchase จะทำให้ Value ที่ส่งไปไม่สะท้อนรายได้จริง
ความท้าทายคือช่วงเวลาจาก Add Friend ถึง Chat ถึง Order ถึงการโอนเงินจริง อาจกินเวลาหลายชั่วโมงหรือหลายวัน และเกิดขึ้นในระบบแชทที่ Snapchat มองไม่เห็น ธุรกิจจึงต้องมีระบบที่คอยเก็บ Identifier ตั้งแต่คลิกแอด ผูกกับ Lead ที่ทักเข้า LINE แล้วอัปเดตสถานะเป็น Purchase เมื่อแอดมินยืนยันเงินเข้าจริง ก่อนจะส่งข้อมูลนี้กลับไปหา Snapchat ผ่าน CAPI
อีกจุดที่มักถูกมองข้ามคือการยืนยันเงินเข้าจริงในธุรกิจที่รับชำระผ่านการโอนแล้วส่งสลิปเข้ามาในแชท แอดมินต้องตรวจสลิปให้แน่ใจก่อนว่าเงินเข้าจริงและไม่ใช่สลิปปลอมหรือสลิปเก่าที่ถูกใช้ซ้ำ ก่อนจะอัปเดตสถานะเป็น Purchase ในระบบหลังบ้าน เพราะถ้าอัปเดตสถานะเร็วเกินไปโดยยังไม่ได้ตรวจสอบ อาจส่ง Purchase Event ที่มี Value ไปหา Snapchat ทั้งที่เงินยังไม่เข้าจริง ซึ่งทำให้ตัวเลขในรายงานคลาดเคลื่อนจากความเป็นจริงมากกว่าการไม่ส่งข้อมูลเลยเสียอีก
ขั้นตอนตรวจสอบก่อนเชื่อตัวเลข Purchase ในรายงาน
ก่อนจะเอาตัวเลข Purchase ไปใช้ตัดสินใจเพิ่มหรือลดงบโฆษณา ควรผ่านการตรวจสอบเบื้องต้นเหล่านี้ก่อน เพื่อให้มั่นใจว่าตัวเลขที่เห็นสะท้อนความจริงในระดับที่เชื่อถือได้:
- เปิดเครื่องมือตรวจสอบ Event ของ Snapchat ดูว่า Purchase Event ยิงพร้อม Value และ Currency ที่ถูกต้องหรือไม่
- สุ่มตรวจ Order สักสิบรายการ เทียบ Value ที่ส่งไปกับยอดที่ลูกค้าจ่ายจริงในระบบบัญชี
- ตรวจว่า Order ID ที่ใช้เป็น Deduplication Key ไม่ซ้ำกันข้าม Order และไม่มี Order ไหนถูกส่งสองครั้ง
- รอให้พ้นช่วง Conversion Lag ตามธรรมชาติของธุรกิจก่อนสรุปตัวเลขของเดือนนั้นแบบเต็มรูปแบบ
- เทียบยอดสุทธิหลังหัก Refund และ Cancel แล้ว ไม่ใช่ยอด Gross ที่ยังไม่หักอะไรเลย
สรุป
ความต่างระหว่างยอด Purchase ใน Snapchat Ads Manager กับยอดขายจริง ไม่ได้แปลว่าระบบใดระบบหนึ่งผิดเสมอไป ส่วนใหญ่เป็นผลจาก Time Zone, Conversion Lag, การนับซ้ำ หรือการยังไม่หัก Refund ออก ซึ่งล้วนเป็นเรื่องที่ตรวจสอบและอธิบายได้ถ้ารู้จุดที่ต้องดู
การส่ง Purchase Event ให้มี Value, Currency, Order ID และข้อมูลลูกค้าที่ hash ถูกต้องครบถ้วน คือพื้นฐานที่ทำให้ตัวเลขในรายงานมีความหมาย ส่วนธุรกิจที่ปิดการขายผ่าน LINE ต้องให้ความสำคัญเป็นพิเศษกับการเชื่อมข้อมูลจากคลิกแอดจนถึงการยืนยันเงินเข้าจริงในระบบหลังบ้าน
- Purchase Event ต้องมี Value, Currency, Order ID และ Event Time ที่ถูกต้องครบถ้วน
- ยอดใน Ads Manager กับยอดขายจริงต่างกันได้จาก Time Zone, Refund, และ Conversion Lag ตามธรรมชาติ
- ใช้ Order ID เป็น Deduplication Key เพื่อกันการนับซ้ำเมื่อส่งข้อมูลจากหลายช่องทาง
- ธุรกิจที่ปิดการขายผ่าน LINE ควรถือ Purchase เมื่อยืนยันเงินเข้าจริงแล้วเท่านั้น ไม่ใช่ตอนลูกค้าเพียงสนใจ
คำถามที่พบบ่อย
ควรถือว่า Order เกิด Purchase ตอนไหน ตอนลูกค้ากดยืนยัน หรือตอนเงินเข้าจริง
ควรถือเป็น Purchase เมื่อยืนยันได้แล้วว่ามีการชำระเงินจริงเกิดขึ้น ไม่ใช่แค่ตอนลูกค้ากดยืนยันความสนใจ เพราะถ้าถือเร็วเกินไป Value ที่ส่งไปอาจไม่สะท้อนรายได้จริงหากลูกค้าเปลี่ยนใจภายหลัง
ทำไมยอด Purchase เดือนล่าสุดดูต่ำผิดปกติ แล้วค่อยขยับขึ้นทีหลัง
ส่วนใหญ่เกิดจาก Conversion Lag ที่ Purchase บางส่วนยังไม่เกิดขึ้นตอนดูรายงานครั้งแรก ควรรอให้พ้นช่วง Lag ตามธรรมชาติของธุรกิจก่อนสรุปตัวเลขแบบเต็มรูปแบบ
ต้องหัก Refund ออกจากยอด Purchase เองไหม หรือ Snapchat หักให้อัตโนมัติ
ขึ้นอยู่กับว่ามีการส่ง Event ยกเลิกหรือคืนเงินกลับไปหา Snapchat หรือไม่ ถ้าไม่มีการส่งข้อมูลส่วนนี้ ยอดใน Ads Manager จะยังคงนับ Order เดิมไว้ ควรตรวจสอบและหักลบเองในรายงานสรุปภายในด้วย
ธุรกิจที่ปิดการขายผ่าน LINE ควรส่ง Purchase Event ผ่าน Pixel หรือ CAPI
ควรใช้ CAPI เป็นหลัก เพราะเหตุการณ์ปิดการขายเกิดขึ้นในระบบหลังบ้านหลังจากลูกค้าออกจากเว็บไซต์ไปแล้ว ซึ่ง Pixel ไม่สามารถมองเห็นเหตุการณ์นี้ได้
Value ที่ส่งไปควรเป็นราคาก่อนหรือหลังหักส่วนลด
ควรเป็นยอดสุทธิที่ลูกค้าจ่ายจริงหลังหักส่วนลดแล้ว เพราะถ้าใช้ราคาก่อนหักส่วนลด ตัวเลข ROAS ที่คำนวณได้จะสูงเกินความเป็นจริง
ทำไมบาง Order ถึงไม่ถูกจับคู่กับ Click ของแอดเลย
อาจเกิดจากหลายสาเหตุ เช่น ลูกค้าคลิกจากอุปกรณ์หนึ่งแต่ซื้อจากอีกอุปกรณ์ ข้อมูลลูกค้าที่ส่งไปไม่เพียงพอให้จับคู่ หรือ Match Rate ตามธรรมชาติของแพลตฟอร์มที่ไม่มีทางถึง 100% เสมอไป
อ่านต่อแบบเจาะลึก
รู้ว่าโฆษณาเข้า LINE ทำยอดขายจริงแค่ไหน
linli ติดตามลูกค้าตั้งแต่คลิกโฆษณา กดเพิ่มเพื่อน ทักแชท จนปิดการขาย พร้อมส่ง Conversion กลับแพลตฟอร์มโฆษณา เริ่มฟรี 14 วัน
ทดลองใช้ฟรี 14 วันบทความที่เกี่ยวข้อง

จำนวนแชทเข้ามาเพิ่มทุกเดือน แต่ยอดขายจริงกลับไม่ขยับตาม

ตั้ง Event Lead Conversion บน Snapchat ให้ตรงกับงาน Lead Gen จริง
