ตัวเลขใน Looker Studio บวกไม่ตรงเพราะต่อข้อมูลหลายชุดผิดวิธี
สรุปสั้น ๆ
ตัวเลขใน Looker Studio บานเมื่อเชื่อมข้อมูลด้วยคีย์ที่ฝั่งใดฝั่งหนึ่งมีหลายแถวต่อค่าเดียว ค่าของอีกฝั่งจะถูกนับซ้ำเท่าจำนวนแถวที่จับคู่ แก้ได้โดยรวมแต่ละแหล่งให้เหลือหนึ่งแถวต่อคีย์ก่อนเชื่อม แล้วคำนวณอัตราส่วนจากผลรวมหลังเชื่อม
เช้าวันจันทร์ ผู้จัดการแอดเปิด Ads Manager เห็นค่าโฆษณาเมื่อวานของแคมเปญหนึ่ง 2,000 บาท แต่พอเปิดแดชบอร์ด Looker Studio ที่เชื่อมยอดขายจาก LINE ไว้ ช่องเดียวกันขึ้น 8,000 บาท ออเดอร์เมื่อวานมี 4 รายการ ไม่มีใครแก้ตัวเลขอะไร และ tag ก็ไม่ได้พัง
ตัวการอยู่ที่ขั้นตอนเชื่อมข้อมูลสองชุดเข้าด้วยกัน และเป็นเรื่องที่เกิดซ้ำในแดชบอร์ดที่ทำเองหลายอัน ตัวเลขที่ผิดคือตัวเลขที่ดูสมเหตุสมผลมากพอจะไม่มีใครสงสัย จนกระทั่งลูกค้านำไปเทียบกับใบแจ้งหนี้ของ Meta
หน้าตาของตัวเลขที่บานจากการ blend
ตารางข้อมูลฝั่งโฆษณามีหนึ่งแถวต่อวันต่อแคมเปญ ค่าโฆษณา 2,000 บาท ตารางฝั่งออเดอร์ LINE มีหนึ่งแถวต่อออเดอร์ ในวันเดียวกันมี 4 ออเดอร์ พอเชื่อมด้วยวันที่และแคมเปญ แถวโฆษณาแถวเดียวถูกจับคู่กับ 4 ออเดอร์ ผลที่ได้เป็นตารางหลังเชื่อมที่หน้าตาดังนี้
| วันที่ | แคมเปญ | ค่าโฆษณาในแถว | ออเดอร์ |
|---|---|---|---|
| 5 พ.ย. | skin_nov | 2,000 | O-101 |
| 5 พ.ย. | skin_nov | 2,000 | O-102 |
| 5 พ.ย. | skin_nov | 2,000 | O-103 |
| 5 พ.ย. | skin_nov | 2,000 | O-104 |
ทำไมแถวคูณกัน และกรณีที่แย่กว่านั้น
การเชื่อมจับแต่ละแถวฝั่งซ้ายกับทุกแถวฝั่งขวาที่คีย์ตรงกัน ผลรวมค่าโฆษณาในตารางข้างบนจึงเป็น 8,000 บาท แทนที่จะเป็น 2,000 สถานการณ์นี้เรียกว่าความสัมพันธ์หนึ่งต่อหลาย ฝั่งที่มีหลายแถวคือฝั่งที่ทำให้อีกฝั่งบาน
กรณีที่แย่กว่าคือมีหลายแถวทั้งสองฝั่ง สมมติตารางโฆษณาแตกเป็นระดับชุดโฆษณา 3 แถว (ค่าโฆษณา 700, 700 และ 600) และมี 4 ออเดอร์ ผลหลังเชื่อมเป็น 3 คูณ 4 ได้ 12 แถว ค่าโฆษณาแต่ละแถวถูกนับซ้ำ 4 เท่า รวมเป็น 8,000 ส่วนยอดขายของแต่ละออเดอร์ถูกนับซ้ำ 3 เท่า ทำให้ ROAS ที่คำนวณจากสองตัวนี้ผิดทั้งตัวตั้งและตัวหาร
ตรวจสาเหตุทีละขั้นก่อนแก้อะไร
- เปิดแต่ละแหล่งแยกต่างหาก จดผลรวมของช่วงเวลาเดียวกัน ค่าโฆษณาจาก Ads Manager และจำนวนออเดอร์จากระบบแชท แล้วเทียบกับผลรวมใน blend
- ถ้าผลต่างเป็นจำนวนเท่าที่หารลงตัวพอดี เช่น 4 เท่าตรงกับจำนวนออเดอร์ต่อวัน แปลว่าเกิดการนับซ้ำจากการเชื่อมหนึ่งต่อหลาย ไม่ใช่ข้อมูลผิด
- นับแถวต่อคีย์ในแต่ละแหล่ง เพิ่มคอลัมน์ Record Count ลงตารางชั่วคราว ถ้าคีย์ใดมากกว่า 1 แถวนั่นคือฝั่งที่ต้องรวมก่อน
- ตรวจรูปแบบคีย์ ชื่อแคมเปญที่ต่างกันที่ตัวพิมพ์ใหญ่เล็กหรือเว้นวรรคท้าย ทำให้จับคู่ไม่ติด แถวหายไปแทนที่จะบาน วันที่ที่เป็นข้อความกับวันที่ที่เป็นชนิดวันที่ก็จับคู่กันไม่ได้
- ดูชนิดการเชื่อม เลือก Left outer ถ้าต้องการเก็บค่าโฆษณาทุกแถวแม้ไม่มียอดขาย Inner จะตัดแถวที่ไม่มีคู่ออกและทำให้ค่าโฆษณารวมหาย
แก้ที่ต้นทางให้หนึ่งแถวต่อหนึ่งคีย์
- รวมก่อนเชื่อม สร้างวิวหรือชีตที่ GROUP BY วันที่และรหัสแคมเปญ แล้วให้ Looker Studio เชื่อมวิวนั้น ฝั่งออเดอร์ก็รวมเป็นจำนวนออเดอร์และยอดขายต่อวันต่อแคมเปญเช่นกัน
- ใช้รหัสแทนชื่อ campaign_id ไม่เปลี่ยนเมื่อมีคนแก้ชื่อ ส่วนชื่อแคมเปญมีโอกาสสะกดต่างกันระหว่าง Meta กับระบบแชท
- ทำให้คีย์สะอาดที่ต้นทาง สร้างฟิลด์ที่ตัดช่องว่างและปรับตัวพิมพ์ใหญ่เล็กในชั้นข้อมูลต้นทาง แล้วใช้ฟิลด์นั้นเป็นคีย์ จะคุมผลได้มั่นใจกว่าการแก้ที่ชั้น blend
- ระดับรายละเอียดต้องเท่ากัน อย่าเชื่อมตารางรายวันกับรายเดือน หรือรายแคมเปญกับรายชุดโฆษณา ตัดสินใจก่อนว่าแดชบอร์ดนี้ตอบคำถามที่ระดับไหน
อัตราส่วนต้องคำนวณจากผลรวม ไม่ใช่เฉลี่ยของอัตราส่วน
สมมติแคมเปญ A ใช้ 1,000 บาท ได้ยอดขาย 5,000 ROAS เท่ากับ 5 แคมเปญ B ใช้ 9,000 บาท ได้ยอดขาย 9,000 ROAS เท่ากับ 1 ถ้าเฉลี่ยสองอัตราได้ 3 ซึ่งดูน่าพอใจ แต่ผลรวมจริงคือยอดขาย 14,000 หารค่าโฆษณา 10,000 ได้ 1.4 ต่างกันกว่าสองเท่า
ในแดชบอร์ดให้สร้างฟิลด์คำนวณที่เป็นผลรวมยอดขายหารผลรวมค่าโฆษณา ไม่ใช้ค่าเฉลี่ยของคอลัมน์ ROAS ที่ดึงมาจากแหล่งใดแหล่งหนึ่ง เหตุผลเดียวกันนี้ทำให้ตัวเลขในแดชบอร์ด LINE OA ที่ไม่ตรงกับรายงานของแอดมินต้องไล่ตรวจที่นิยามก่อนเสมอ
เมื่อไรควรเลิก blend แล้วรวมข้อมูลก่อนเข้า Looker Studio
Looker Studio เชื่อมได้สูงสุด 5 แหล่งในหนึ่ง blend และการเชื่อมถูกคำนวณตอนเปิดรายงาน ยิ่งหลายแหล่งยิ่งช้า ถ้าแดชบอร์ดของคุณต้องเชื่อม Meta, Google Ads, TikTok และยอดขาย LINE ในหน้าเดียว ให้รวมเป็นตารางเดียวในที่เก็บข้อมูล เช่น BigQuery หรือชีตที่จัดรูปแบบไว้ แล้วให้ Looker Studio อ่านตารางเดียว
วิธีทำอยู่ในการส่งออกข้อมูล LINE OA ไป BigQuery ส่วนขั้นตอนทำแดชบอร์ดตั้งแต่ต้นอยู่ในการทำ Dashboard ยอดขาย LINE ด้วย Looker Studio และสาเหตุอื่นที่ตัวเลขแอดกับยอดขายไม่ตรงกันอยู่ในทำไม Ads Manager ไม่ตรงกับยอดขายใน LINE
สรุป
ก่อนส่งแดชบอร์ดให้ลูกค้าครั้งต่อไป ให้ทำสองอย่างที่ใช้เวลาไม่ถึงสิบนาที เทียบผลรวมใน blend กับผลรวมจากต้นทางของแต่ละแหล่งในช่วงเวลาเดียวกัน และนับแถวต่อคีย์ในทุกแหล่งที่เชื่อม
ถ้าผลต่างลงตัวเป็นจำนวนเท่า ให้ย้ายการรวมไปไว้ที่ต้นทางแทนการแก้สูตรใน Looker Studio เพราะการแก้ที่ปลายทางเพียงซ่อนอาการและจะกลับมาเมื่อมีแหล่งใหม่เข้ามา
- ยอดบานเมื่อคีย์ที่ใช้เชื่อมมีหลายแถวต่อค่าเดียว ค่าอีกฝั่งถูกนับซ้ำเท่าจำนวนแถว
- ตรวจโดยเทียบผลรวมกับต้นทางแต่ละแหล่ง ถ้าต่างเป็นจำนวนเท่าลงตัว คือการนับซ้ำ
- รวมให้เหลือหนึ่งแถวต่อคีย์ที่ต้นทาง ใช้รหัสแทนชื่อ และให้ระดับรายละเอียดเท่ากัน
- ROAS คำนวณจากผลรวมยอดขายหารผลรวมค่าโฆษณา ไม่ใช่ค่าเฉลี่ยของ ROAS
- ถ้าต้องเชื่อมหลายแหล่งในหน้าเดียว รวมในคลังข้อมูลก่อนเข้า Looker Studio
คำถามที่พบบ่อย
ตัวเลขผิดเพราะ blend หรือเพราะข้อมูลต้นทางผิด แยกยังไง
เปิดแต่ละแหล่งแยกกันแล้วเทียบผลรวมกับต้นทาง ถ้าแต่ละแหล่งถูกแต่หลัง blend ผิดและต่างกันเป็นจำนวนเท่าที่ลงตัว สาเหตุคือการเชื่อมคีย์ที่มีหลายแถว
ใช้ Left outer หรือ Full outer ดี
ถ้าฝั่งโฆษณาเป็นตัวตั้งและต้องการเห็นค่าโฆษณาทุกแถวแม้ไม่มียอดขาย ใช้ Left outer จากฝั่งโฆษณา ถ้าทั้งสองฝั่งมีแถวที่ไม่มีคู่และต้องเห็นทั้งหมด ใช้ Full outer
รวมแถวใน Looker Studio อย่างเดียวพอไหม ไม่ต้องทำที่ต้นทาง
พอสำหรับแดชบอร์ดเล็ก แต่จะเปราะเมื่อแหล่งข้อมูลเพิ่ม การรวมที่ต้นทางทำครั้งเดียวและทุกแดชบอร์ดที่ใช้ตารางนั้นถูกพร้อมกัน
ทำไมยอดรวมใน Scorecard ไม่เท่าผลรวมในตาราง
ทั้งสองอาจใช้ชุดมิติต่างกัน เมื่อตารางมีมิติเพิ่ม การจับคู่ระดับละเอียดขึ้นทำให้แถวซ้ำเกิดในตารางแต่ไม่เกิดใน Scorecard หรือกลับกัน เทียบทั้งสองกับผลรวมจากต้นทางเพื่อดูว่าอันไหนผิด
ใช้ Google Sheets เป็นตัวกลางได้ไหม
ได้ ถ้าตารางเป็นหนึ่งแถวต่อคีย์และสูตรไม่ถูกลบ ปัญหาคือคนในทีมแก้ชีตได้ ควรล็อกช่วงที่เป็นข้อมูล และแยกแผ่นสำหรับกรอกมือออกจากแผ่นที่แดชบอร์ดอ่าน
อ่านต่อแบบเจาะลึก
รู้ว่าโฆษณาเข้า LINE ทำยอดขายจริงแค่ไหน
linli ติดตามลูกค้าตั้งแต่คลิกโฆษณา กดเพิ่มเพื่อน ทักแชท จนปิดการขาย พร้อมส่ง Conversion กลับแพลตฟอร์มโฆษณา เริ่มฟรี 14 วัน
ทดลองใช้ฟรี 14 วัน