← กลับไปหน้าบทความ
การเงิน & ROI

ROAS จาก LINE OA ที่วัดจาก Google Ads กับที่วัดจาก GA4 ทำไมตัวเลขไม่เท่ากัน

ทีมบรรณาธิการ linli12 ส.ค. 04:51อัปเดต 12 ส.ค. 04:51อ่าน 4 นาที
ROAS จาก LINE OA ที่วัดจาก Google Ads กับที่วัดจาก GA4 ทำไมตัวเลขไม่เท่ากัน
บทความนี้จัดทำเพื่อความรู้ ชื่อธุรกิจ ตัวเลข หรือบทสนทนาที่ไม่มีแหล่งอ้างอิงกำกับเป็นกรณีตัวอย่างเพื่ออธิบายแนวคิด ดูรายละเอียดที่ นโยบายกองบรรณาธิการ

สรุปสั้น ๆ

ROAS จาก Google Ads และ ROAS จาก GA4 มักไม่เท่ากัน เพราะทั้งสองระบบใช้ Attribution Window, วิธีนับ Conversion และช่วงเวลาปิดยอดต่างกัน ทางแก้ไม่ใช่หาว่าตัวไหน 'ถูกกว่า' แต่คือเข้าใจว่าแต่ละตัวตอบคำถามคนละแบบ แล้วยึด Revenue จากระบบขายจริงเป็น Source of Truth

ลูกค้าคนหนึ่งเคยส่งภาพหน้าจอมาให้ผมดูสองภาพในแชทเดียวกัน ภาพแรกคือ ROAS จาก Google Ads Manager ที่ขึ้นตัวเลข 4.2 เท่า ภาพที่สองคือ ROAS จาก GA4 ที่ขึ้นตัวเลข 2.6 เท่า สำหรับแคมเปญเดียวกัน ช่วงเวลาเดียวกัน แล้วถามผมว่า 'อันไหนโกหกครับ'

คำตอบคือไม่มีอันไหนโกหก ทั้งสองระบบกำลังนับคนละอย่าง ด้วยกฎคนละชุด Google Ads นับ Conversion ตาม Attribution Window ที่ตั้งไว้ในบัญชี และมักอิงกับ Click ID ที่แนบมากับ URL ส่วน GA4 นับตาม Session และ client_id ของตัวเอง ซึ่งมีวิธีให้เครดิตช่องทางที่ต่างออกไป พอฐานการนับต่างกัน ตัวเลข ROAS ที่โผล่มาก็ต่างกันเป็นธรรมดา

บทความนี้จะพาไล่ทีละจุดว่า Google Ads กับ GA4 วัด ROAS จาก LINE OA ต่างกันตรงไหนบ้าง เพื่อให้เลิกถามว่า 'อันไหนถูก' แล้วเปลี่ยนไปถามว่า 'ควรใช้ตัวไหนตอบคำถามอะไร'

ทบทวนสูตร ROAS ก่อน แล้วดูว่าตัวแปรไหนที่ต่างกันจริง

สูตรพื้นฐานของ ROAS คือ Revenue ที่มาจากโฆษณา หารด้วยเงินที่จ่ายให้โฆษณา (Ad Spend) ฟังดูตรงไปตรงมา แต่ตัวแปรที่ทำให้ตัวเลขต่างกันไม่ใช่สูตร มันคือ 'Revenue ที่มาจากโฆษณา' ต่างหาก เพราะแต่ละระบบมีวิธีตัดสินว่า Revenue ก้อนไหนควรนับว่ามาจากโฆษณาแตกต่างกัน

Google Ads ตัดสินโดยดูว่า Conversion นั้นเกิดขึ้นภายใน Attribution Window ของ Click ที่มี Click ID ตรงกับแคมเปญหรือไม่ ส่วน GA4 ตัดสินโดยดูว่า Session ที่เกิด Revenue Event นั้น ผูกกับ client_id ที่เคยมี Session มาจาก Traffic Source ใด ทั้งสองวิธีฟังดูคล้ายกันแต่รายละเอียดต่างกันพอที่จะทำให้ผลลัพธ์ไม่เท่ากัน

เมื่อธุรกิจส่ง Revenue ที่ปิดในแชท LINE กลับไปยัง Google Ads ผ่านช่องทางที่รองรับ เช่นการนำเข้า Offline Conversion หรือ Enhanced Conversions for Leads ตามเอกสารล่าสุดของแพลตฟอร์ม ระบบจะพยายามจับคู่ Revenue นั้นกับ Click ที่มี Click ID ตรงกัน แล้วนับเป็น Conversion Value ของแคมเปญนั้น

จุดที่ทำให้ตัวเลขฝั่งนี้ต่างจาก GA4 คือ Google Ads ให้เครดิตตาม Attribution Model ที่ตั้งไว้ในบัญชี ซึ่งอาจเป็น Data-driven หรือ Last-click ขึ้นกับการตั้งค่า และมี Attribution Window ที่กำหนดว่าจะย้อนไปนับ Conversion ได้ไกลแค่ไหนจากวันที่คลิก ถ้า Conversion เกิดหลัง Window ที่ตั้งไว้ ต่อให้เป็น Revenue จริง ก็อาจไม่ถูกนับเข้า ROAS ของแคมเปญนั้น

ฝั่ง GA4 วัด ROAS จาก LINE OA อย่างไร

GA4 ไม่ได้ผูกกับ Click ID โดยตรงเหมือน Google Ads แต่ใช้ client_id ที่เกิดจาก Session บนเว็บไซต์หรือ Landing Page เป็นตัวเชื่อม เมื่อธุรกิจส่ง Revenue Event กลับเข้า GA4 พร้อม client_id ที่ตรงกับ Session เดิม ระบบจะให้เครดิตกับ Traffic Source ของ Session นั้นตาม Attribution Model ที่ตั้งไว้ในพร็อพเพอร์ตี้

ข้อจำกัดสำคัญของฝั่งนี้คือถ้าลูกค้าไม่ได้เข้าเว็บไซต์ก่อนไป LINE เลย เช่นกดลิงก์จากโฆษณาตรงเข้า LINE ทันที จะไม่มี Session หรือ client_id ให้ผูก Revenue กลับไปได้ ทำให้ Revenue ก้อนนั้นอาจตกไปอยู่ในหมวด Direct หรือ Unassigned แทนที่จะถูกนับเป็นของแคมเปญโฆษณาจริง ซึ่งเป็นสาเหตุหนึ่งที่ทำให้ ROAS ฝั่ง GA4 ดูต่ำกว่าที่ควรจะเป็น

ธุรกิจที่อยากเข้าใจเรื่อง Direct/Unassigned ให้ลึกขึ้น ควรอ่านเรื่อง ทำไมยอดจาก LINE ไปกองอยู่ที่ Direct ใน GA4 ประกอบ เพราะเป็นปรากฏการณ์เดียวกันที่ทำให้ตัวเลขทั้งสองฝั่งเหลื่อมกัน

เทียบสองฝั่งแบบเห็นภาพในตารางเดียว

เพื่อให้เห็นความต่างชัดขึ้น ลองเทียบกลไกของทั้งสองระบบในมุมที่ส่งผลต่อ ROAS โดยตรง:

มิติGoogle AdsGA4
ตัวเชื่อมหลักClick IDclient_id + Session
ต้องมี Session บนเว็บไซต์ก่อนไหมไม่จำเป็น ถ้าลิงก์มี Click IDส่วนใหญ่จำเป็น
Attribution Modelตามที่ตั้งค่าในบัญชีตามที่ตั้งค่าในพร็อพเพอร์ตี้
Revenue ที่ไม่ผูกกับ Session/Clickอาจไม่ถูกนับใน ROAS แคมเปญมักตกเป็น Direct/Unassigned

ควรเชื่อตัวไหน หรือไม่ต้องเชื่อทั้งคู่

คำตอบที่ตรงไปตรงมาคือไม่ต้องเลือกเชื่อฝั่งใดฝั่งหนึ่งทั้งหมด เพราะทั้งสองระบบมีประโยชน์คนละแบบ Google Ads เหมาะกับการตัดสินใจเรื่องการเพิ่ม-ลดงบในระดับแคมเปญและ Ad Group เพราะมันคือระบบที่คุณควบคุมการใช้เงินอยู่ ส่วน GA4 เหมาะกับการดูภาพรวมพฤติกรรมผู้ใช้บนเว็บไซต์และเปรียบเทียบข้ามช่องทางที่ไม่ใช่แค่ Google Ads

สิ่งที่ควรเป็น Source of Truth จริง ๆ ไม่ใช่ตัวเลขจากแพลตฟอร์มไหนเลย แต่คือ Revenue ที่บันทึกในระบบขายหรือบัญชีของธุรกิจเอง เพราะทั้ง Google Ads และ GA4 ต่างก็เป็นแค่ 'มุมมอง' ที่พยายามให้เครดิตกับ Revenue นั้น ไม่ใช่เจ้าของข้อมูล Revenue ตัวจริง

ลองมองเป็นภาพง่าย ๆ ว่าระบบบัญชีคือ 'ยอดเงินที่เข้าบัญชีจริง' ส่วน Google Ads กับ GA4 คือ 'คำอธิบายว่าเงินก้อนนั้นน่าจะมาจากทางไหน' ถ้าคำอธิบายสองฝั่งไม่ตรงกัน ไม่ได้แปลว่าเงินที่เข้าบัญชีผิด มันแปลว่าแค่สองระบบอธิบายที่มาของเงินก้อนเดียวกันด้วยกลไกคนละแบบเท่านั้นเอง

ขั้นตอน Reconcile ตัวเลขสามฝั่งให้เข้าใจตรงกัน

เมื่อพบว่าตัวเลขสามฝั่ง คือ Google Ads, GA4 และยอดขายจริงในระบบบัญชี ไม่ตรงกัน ให้ไล่ตามขั้นตอนนี้แทนการเดา:

  1. เริ่มจากยอด Revenue จริงในระบบบัญชีหรือ CRM เป็นตัวตั้ง แล้วไล่ดูว่ากี่ออเดอร์ที่มีที่มาจากโฆษณา LINE ชัดเจน
  2. เทียบกับ Google Ads ว่ามีกี่ Conversion ที่มี Click ID ตรงกับออเดอร์เหล่านั้น แล้วดูว่าอยู่ในหรือนอก Attribution Window
  3. เทียบกับ GA4 ว่ามีกี่ Revenue Event ที่ผูกกับ client_id ได้ แล้วดูว่ากี่ออเดอร์ที่ไม่มี Session เว็บไซต์เลยจึงตกไปอยู่ Direct
  4. สรุปเป็นตารางเดียวว่าส่วนต่างเกิดจากอะไร เช่น Attribution Window ต่างกัน หรือไม่มี Session ให้ผูก เพื่อให้ทีมเข้าใจตรงกันว่าทำไมตัวเลขไม่เท่ากัน ไม่ใช่สรุปว่าระบบใดระบบหนึ่งผิดพลาด

ความเข้าใจผิดที่ทำให้ตัดสินใจเรื่องงบผิดพลาด

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

  • เอา ROAS สองฝั่งมาบวกกัน — ทำแบบนี้แล้วพัง เพราะทั้งสองระบบอาจนับ Revenue ก้อนเดียวกันซ้ำ การบวกรวมทำให้ ROAS ดูดีเกินจริงไปมาก
  • ปิดแคมเปญเพราะ ROAS ฝั่ง GA4 ต่ำ โดยไม่เช็ก Google Ads — ถ้าแคมเปญนั้นพาคนตรงเข้า LINE โดยไม่ผ่านเว็บไซต์ GA4 อาจมองไม่เห็น Revenue เลยทั้งที่ Google Ads เห็นและ ROAS จริงดีมาก
  • ไม่เคย Reconcile กับยอดขายจริง — เชื่อตัวเลขจากแพลตฟอร์มโดยไม่เทียบกับ Revenue ในระบบบัญชี ทำให้ไม่รู้เลยว่าความจริงต่างจากตัวเลขที่เห็นแค่ไหน

อยากให้ตัวเลขสองฝั่งใกล้กันขึ้น ต้องปรับอะไรบ้าง

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

เรื่องแรกคือ Consent ถ้าผู้ใช้ไม่ยินยอมให้เก็บ Cookie หรือ Session บนเว็บไซต์ GA4 จะไม่มี client_id ให้ผูก Revenue กลับไปได้เลย ไม่ว่าจะตั้งค่าอะไรเพิ่มก็ตาม ธุรกิจจึงควรตรวจว่าอัตราการยินยอมของผู้ใช้อยู่ในระดับใด เพราะเป็นเพดานที่จำกัด Match Rate ของ GA4 ไว้ตั้งแต่แรก

เรื่องที่สองคือการตั้งค่า Enhanced Conversions ฝั่ง Google Ads ตามเอกสารล่าสุด ซึ่งช่วยเพิ่มโอกาสจับคู่ Conversion ได้แม้ Click ID บางส่วนจะหายไประหว่างทาง แต่ต้องระวังว่าฟีเจอร์นี้มีเงื่อนไขเรื่องข้อมูลที่ส่งและการ Hash ตาม Policy ของแพลตฟอร์ม ไม่ใช่ส่งข้อมูลอะไรก็ได้ไปแล้วจะ Match สำเร็จเสมอ

เรื่องที่สามคือความสม่ำเสมอของ Time Zone และรูปแบบเวลาที่ส่งกลับทั้งสองระบบ ถ้า Conversion Time ที่ส่งไปผิด Time Zone ต่อให้ Revenue ก้อนเดียวกัน อาจถูกนับเข้าคนละวันหรือคนละรอบรายงานระหว่างสองระบบ ทำให้เทียบกันตอนสิ้นเดือนแล้วดูเหมือนไม่ตรงกันทั้งที่จริง ๆ ตรงกันแค่คนละวันที่บันทึก

ตัวอย่างสมมติ เห็นภาพว่าส่วนต่างเกิดจากอะไรจริง

สมมติเดือนหนึ่งธุรกิจใช้งบโฆษณา LINE 20,000 บาท และมี Revenue จริงจากระบบบัญชี 84,000 บาทที่ยืนยันได้ว่ามาจากลูกค้าที่คลิกโฆษณา ตัวเลขนี้คือ ตัวอย่างสมมติ เพื่อประกอบกรอบวิเคราะห์เท่านั้น:

แหล่งตัวเลขRevenue ที่นับได้ (สมมติ)ROAS ที่คำนวณได้
ยอดขายจริงในระบบบัญชี84,000 บาท4.2 เท่า
Google Ads (ในและนอก Attribution Window)58,000 บาท2.9 เท่า
GA4 (เฉพาะที่มี Session ผูก client_id)36,000 บาท1.8 เท่า

สรุป

ROAS จาก Google Ads กับ GA4 ที่ไม่เท่ากันไม่ใช่สัญญาณว่าระบบใดระบบหนึ่งพัง แต่เป็นผลจากกลไกการให้เครดิตที่ต่างกันตั้งแต่ฐาน การเข้าใจกลไกนี้ทำให้คุณอ่านตัวเลขได้อย่างมีสติ แทนที่จะแตกตื่นทุกครั้งที่เห็นตัวเลขสองฝั่งไม่ตรงกัน

สิ่งที่ควรทำต่อจากนี้คือวางให้ Revenue จริงจากระบบบัญชีเป็น Source of Truth เสมอ แล้วใช้ Google Ads กับ GA4 เป็นเครื่องมือช่วยมองมุมที่ต่างกัน ไม่ใช่แหล่งความจริงเดียวที่ต้องเลือกเชื่ออันใดอันหนึ่ง

  • Google Ads ผูกกับ Click ID, GA4 ผูกกับ client_id และ Session — กลไกต่างกันจึงให้ตัวเลขต่างกัน
  • Revenue จริงจากระบบบัญชีควรเป็น Source of Truth เสมอ ไม่ใช่ตัวเลขจากแพลตฟอร์มใดแพลตฟอร์มหนึ่ง
  • อย่าบวก ROAS สองฝั่งรวมกัน และอย่าตัดสินใจจากฝั่งเดียวโดยไม่ Reconcile กับยอดขายจริง

คำถามที่พบบ่อย

ทำไม ROAS ใน GA4 ถึงต่ำกว่า Google Ads เกือบทุกครั้ง

ส่วนใหญ่เกิดจาก GA4 ต้องพึ่ง Session บนเว็บไซต์เพื่อผูก client_id ถ้าลูกค้ากดลิงก์จากโฆษณาตรงเข้า LINE โดยไม่ผ่านเว็บไซต์ Revenue ก้อนนั้นจะไม่ถูกผูกกับแคมเปญใน GA4 เลย ในขณะที่ Google Ads อาจยังจับคู่ได้จาก Click ID

ควรใช้ตัวเลขไหนรายงานให้เจ้าของธุรกิจ

แนะนำให้รายงานยอด Revenue จริงจากระบบบัญชีเป็นหลัก แล้วอธิบายว่า Google Ads และ GA4 เป็นสองมุมมองที่ช่วยดูว่าแคมเปญไหนน่าจะมีส่วนสร้าง Revenue นั้น ไม่ใช่รายงานตัวเลขจากแพลตฟอร์มเป็นความจริงเดียว

ถ้าอยากให้ตัวเลขทั้งสองฝั่งใกล้กันมากขึ้น ต้องทำอะไร

ต้องเพิ่มโอกาสที่ Revenue จะผูกกับทั้ง Click ID และ client_id ได้ครบ เช่นออกแบบเส้นทางให้คนผ่านเว็บไซต์หรือ Landing Page ก่อนเข้า LINE เพื่อให้เกิด Session ที่ผูก client_id ได้ ควบคู่กับการเก็บ Click ID จากลิงก์โฆษณา

Attribution Window ที่ต่างกันมีผลแค่ไหน

มีผลมาก โดยเฉพาะสินค้าที่ใช้เวลาตัดสินใจนาน เช่นสินค้าราคาสูงที่ลูกค้ามักทักถามแล้วขอเวลาตัดสินใจหลายวันก่อนโอนเงิน ถ้า Window สั้นเกินไปเมื่อเทียบกับพฤติกรรมจริงของลูกค้ากลุ่มนี้ Revenue ที่เกิดหลัง Window จะไม่ถูกนับเข้าแคมเปญเลย ทำให้ ROAS ที่เห็นในระบบดูต่ำกว่าความเป็นจริงมาก และอาจนำไปสู่การตัดงบแคมเปญที่จริง ๆ แล้วทำผลงานได้ดี

ต้องส่ง Revenue กลับทั้ง Google Ads และ GA4 พร้อมกันไหม

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

การใช้ระบบอย่าง linli ช่วยลดปัญหานี้ได้แค่ไหน

linli ช่วยเชื่อม Journey จากคลิกไปจนถึง Lead และ Order ไว้ในที่เดียว ทำให้มี Revenue ที่ตรวจสอบย้อนกลับไปยังแคมเปญได้ชัดขึ้นเวลาส่งกลับแต่ละแพลตฟอร์ม แต่ก็ยังต้องอาศัยการตั้งค่า Conversion และ Identifier ให้ถูกต้องตามเอกสารล่าสุดของแต่ละแพลตฟอร์มอยู่ดี ไม่ใช่ติดตั้งแล้วตัวเลขตรงกันทันที

ลองตรวจด้วยตัวเอง

Google Ads → LINE Checker

ตรวจหน้า Landing ของคุณว่า gclid, UTM และเส้นทางเข้า LINE พร้อมส่ง Conversion กลับ Google Ads หรือยัง

ตรวจความพร้อมฟรี

ใช้ฟรี ไม่ต้องสมัคร ไม่เก็บข้อมูลที่คุณกรอก

ส่ง Purchase จริงกลับให้แอด ไม่ใช่แค่ Click

รู้ว่าลูกค้าที่ทัก LINE จากโฆษณากลายเป็นออเดอร์จริงกี่คน และมาจากแคมเปญไหน แล้วส่งยอดขายกลับให้ระบบโฆษณาเรียนรู้ เริ่มฟรี 14 วัน

ทดลองใช้ฟรี 14 วัน

บทความที่เกี่ยวข้อง

ทราฟฟิกเข้าเยอะทุกวัน แต่ ROAS ในแดชบอร์ดยังติดลบ แก้ยังไง

ทราฟฟิกเข้าเยอะทุกวัน แต่ ROAS ในแดชบอร์ดยังติดลบ แก้ยังไง

ทราฟฟิกเยอะแต่ ROAS ในแดชบอร์ดยังติดลบ ไม่ได้แปลว่าแคมเปญขาดทุนเสมอไป บทความนี้เล่าวิธีตรวจข้อมูลก่อนเชื่อ ROAS เพราะปัญหาส่วนใหญ่มาจาก Lag และ Refund ที่ยังไม่ถูกหักออก ไม่ใช่ตัวแคมเปญเอง
งบแอดคลินิกวันละสามพัน แต่ไม่รู้กี่คนโอนมัดจำจาก LINE

งบแอดคลินิกวันละสามพัน แต่ไม่รู้กี่คนโอนมัดจำจาก LINE

คลินิกที่ใช้ระบบมัดจำก่อนนัดมักเจอปัญหาเดียวกัน คือรู้แค่ยอดมัดจำรวมปลายเดือน แต่ไม่รู้ว่ามาจากแคมเปญไหน บทความนี้เล่าวิธีผูกยอดมัดจำแต่ละรายการกลับไปยังแคมเปญโฆษณาต้นทาง
แยกแคมเปญที่พาคนมาซื้อแพ็กเกจจริง ออกจากแคมเปญที่ได้แค่คนทักถาม

แยกแคมเปญที่พาคนมาซื้อแพ็กเกจจริง ออกจากแคมเปญที่ได้แค่คนทักถาม

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