trusty — Website Trust Platform
Tracking & MarTech

วิธีวัดผลและแก้ปัญหา Google Consent Mode สำหรับธุรกิจ SaaS สตาร์ทอัพ และบริษัทเทคโนโลยี เมื่อระบบทำงานไม่ตรงที่คาด

ทีม Growth เห็น Conversion หายหลังเปิด Consent Mode แล้วสงสัยว่าระบบพังหรือแค่ Modeled Data ทำงานตามที่ควร บทความนี้แยกอาการที่พบบ่อยออกจากสาเหตุจริง พร้อมขั้นตอนตรวจทีละจุด

📅 เผยแพร่ 12 สิงหาคม 2569อัปเดตล่าสุด 12 สิงหาคม 2569✍️ เขียนโดย trusty Editorial Team⏱ อ่าน 7 นาที
A laptop on a wooden table shows an AI chat interface, featuring the DeepSeek chatbot in action.
ภาพโดย Matheus Bertelli จาก Pexels

💬 สรุปสั้น ๆ

อาการ Google Consent Mode ทำงานไม่ตรงที่คาดส่วนใหญ่มาจาก Default Consent State ที่ตั้งผิดจังหวะ การ Map หมวด Cookie ของ Banner กับ Consent Type ของ Google ไม่ตรงกัน หรือ Tag ยิงก่อน Consent ทำงาน ต้องตรวจทีละชั้นด้วยเครื่องมือของ Google เอง ไม่ใช่เดาจากตัวเลข Conversion ที่ลดลง

ทีม Engineering ของ SaaS แห่งหนึ่งเปิด Google Consent Mode แล้วพบว่า Conversion ใน Google Ads หายไปเกือบครึ่งภายในสัปดาห์เดียว ทีม Growth ตื่นตระหนกและอยากปิด Consent Mode ทิ้ง แต่ก่อนตัดสินใจแบบนั้น สิ่งที่ต้องทำก่อนคือแยกให้ออกว่าตัวเลขที่หายไปเป็นผลจาก Modeled Conversion ที่ Google คำนวณแทนข้อมูลที่ขาดหาย หรือเป็นบั๊กจริงที่ทำให้ Consent Mode ไม่ทำงานตามที่ตั้งค่าไว้ บทความนี้ไล่ลำดับการตรวจที่ทีม Product, Engineering, Growth และ Privacy ควรทำร่วมกัน

Google Consent Mode ไม่ใช่ Cookie Consent Banner และไม่ใช่ระบบที่ตัดสินฐานกฎหมายแทนองค์กร มันเป็นสัญญาณที่ Google Tag ส่งให้ Google รู้ว่าผู้ใช้อนุญาต Analytics Storage และ Ad Storage หรือไม่ เมื่อผู้ใช้ปฏิเสธ Google จะไม่เก็บ Cookie สำหรับวัตถุประสงค์นั้น แต่ยังพยายามประมาณค่า Conversion ที่หายไปด้วย Modeled Data ซึ่งเป็นข้อมูลที่คำนวณจากรูปแบบพฤติกรรมของผู้ใช้ที่ยินยอมกลุ่มใกล้เคียงกัน ไม่ใช่ข้อมูลที่กู้กลับมาได้ครบ

เพราะฉะนั้นตัวเลข Conversion ที่ลดลงหลังเปิด Consent Mode ไม่ได้แปลว่าระบบพังเสมอไป อาจเป็นเพราะสัดส่วนผู้ใช้ที่ปฏิเสธ Consent สูงกว่าที่คาด หรือ Modeled Conversion ยังไม่มีข้อมูลพอสำหรับสร้างโมเดล (โดยเฉพาะเว็บที่ Traffic น้อย) ทีมต้องแยกสองสาเหตุนี้ออกจากบั๊กเชิงเทคนิคก่อนสรุป

อาการที่พบบ่อยและวิธีตรวจแต่ละจุด

ถ้า Google Tag (gtag.js หรือ Google Tag Manager) โหลดและยิง Event ก่อนที่ Script ตั้งค่า Default Consent จะทำให้ Tag ทำงานด้วยค่าเริ่มต้นของ Google เอง ซึ่งอาจไม่ตรงกับนโยบายที่ธุรกิจต้องการ วิธีตรวจคือเปิด Network Tab แล้วดูลำดับการยิง Request ว่า `gtag('consent', 'default', ...)` มาก่อน Request ของ Google Analytics/Ads Tag จริงหรือไม่ ปัญหานี้พบบ่อยเมื่อ Consent Script ถูกใส่ผ่าน GTM Custom HTML Tag ที่มี Trigger ล่าช้ากว่า Tag อื่น

เมื่อผู้ใช้กด Accept หรือ Reject ในหมวดใดหมวดหนึ่ง Banner ต้องเรียก `gtag('consent', 'update', ...)` เพื่ออัปเดตสถานะ ถ้าปุ่มใน Banner ไม่ได้เชื่อมกับ Callback นี้จริง Google จะยังใช้ Default Consent เดิมต่อไปทั้ง Session ทดสอบได้ด้วยการเปิด Tag Assistant หรือ GTM Preview Mode แล้วกดปุ่ม Accept/Reject ดูว่า Consent State เปลี่ยนใน Real-time หรือไม่

Google Consent Mode มีหลาย Consent Type เช่น analytics_storage, ad_storage, ad_user_data, ad_personalization ถ้า CMP (Consent Management Platform) ของ Banner มีแค่หมวด Analytics/Marketing แบบกว้าง ทีมต้อง Map ให้ชัดว่าหมวดไหนของ Banner ควบคุม Consent Type ใดของ Google การ Map ผิดทำให้บาง Type อัปเดตแต่บาง Type ไม่อัปเดต ซึ่งดูเหมือนบั๊กแต่จริง ๆ คือ Config ผิด

4. Cache ทำให้ Config เก่ายังทำงานอยู่

SaaS ที่ใช้ CDN หรือ Static Page Cache อาจ Deploy Consent Script เวอร์ชันใหม่แล้วแต่ผู้ใช้บางกลุ่มยังโหลด Cache เวอร์ชันเก่าอยู่ ทำให้ผลการตรวจไม่สอดคล้องกันระหว่างเครื่องทดสอบกับ Production จริง ต้องตรวจ Cache-Control Header ของไฟล์ Script และล้าง Cache หลัง Deploy ทุกครั้ง

บาง SaaS เจอกรณี Consent Mode Config ถูกต้องทุกจุดตามที่ตรวจสอบ แต่ Conversion ใน Report ยัง “ดูน้อยกว่าที่คาด” เพราะทีมเทียบกับตัวเลขก่อนมี Consent Mode โดยตรง ซึ่งไม่ใช่การเทียบที่เหมาะสม เพราะ Modeled Conversion ต้องใช้เวลาสะสมข้อมูลและมีลักษณะการรายงานต่างจาก Observed Data ควรดู Threshold การรายงานและช่วงเวลาที่ Google แนะนำก่อนสรุปว่าระบบผิดปกติ

ขั้นตอนตรวจแบบเป็นระบบสำหรับทีม Engineering

ลำดับการตรวจที่แนะนำเมื่อ Consent Mode ดูเหมือนทำงานผิด: เริ่มจากตรวจ Default Consent State ผ่าน Console หรือ Tag Assistant ก่อน Interaction ใด ๆ จากนั้นทดสอบ Accept All แล้วดู Consent State อัปเดต ทดสอบ Reject All แล้วยืนยันว่า Ad Storage/Analytics Storage เปลี่ยนเป็น denied จริง ทดสอบ Custom Selection บางหมวด ทดสอบการ Reload หน้าเพื่อดูว่า Preference เดิมยังถูกจำ และสุดท้ายทดสอบใน Session ใหม่ (Incognito) เพื่อตัด Cache ออกจากสมการ แต่ละขั้นตอนควรบันทึกภาพหน้าจอหรือ Log ไว้เป็นหลักฐานเผื่อ Privacy Team ต้องตรวจย้อนหลัง

สำหรับทีมที่ใช้ คู่มือ Google Consent Mode สำหรับ SaaS เป็นจุดเริ่มต้น การตรวจปัญหาด้านบนควรทำต่อเนื่องหลัง Deploy ทุกครั้ง ไม่ใช่ทำครั้งเดียวตอนติดตั้ง เพราะ SaaS มักมี Release บ่อยและอาจมี Third-party Script ใหม่เพิ่มเข้ามาโดยทีม Marketing โดยที่ Engineering ไม่รู้

แอป SaaS จำนวนมากเป็น Single Page Application ที่เปลี่ยนหน้าโดยไม่ Reload เต็มหน้า ถ้า Consent Script ทำงานเฉพาะตอนโหลดหน้าแรก การเปลี่ยน Route ภายในแอปอาจไม่ Trigger การตรวจ Consent State ซ้ำ ทำให้ Tag บาง Event ยิงโดยไม่ผ่านการเช็คล่าสุด ทีม Frontend ควรตรวจว่า Consent State ถูกอ่านใหม่ทุกครั้งที่มีการยิง Custom Event สำคัญ ไม่ใช่อ่านครั้งเดียวตอน App Mount

เมื่อทีม Product เพิ่มฟีเจอร์ใหม่ที่มี Third-party Script

ปัญหาที่พบซ้ำใน SaaS ที่โตเร็วคือทีม Product เพิ่ม Third-party Widget เช่น Chat, Session Replay หรือ Attribution Tool เข้ามาโดยไม่แจ้ง Engineering หรือ Privacy Team Script เหล่านี้มักฝัง Pixel หรือ Tracking ของตัวเองที่ไม่ได้ผ่าน Consent Management Platform เลย ทำให้ต่อให้ Google Consent Mode Config ถูกต้องทุกจุด ก็ยังมี Tracking อื่นที่ยิงก่อน Consent อยู่ดี วิธีป้องกันคือกำหนด Owner ที่ต้องอัปเดต Cookie/Script Inventory ทุกครั้งที่มีการเพิ่ม Tool ใหม่ และผูกขั้นตอนนี้เข้ากับ Release Process ไม่ใช่ทำแยกเป็นงาน Compliance ที่ถูกลืม

เมื่อทีม Growth ต้องการเพิ่ม Conversion Tracking ใหม่ ควรถามคำถามพื้นฐานก่อนเสมอ Script นี้ยิงก่อนหรือหลัง Consent ยิงผ่าน GTM หรือ Hardcode ในโค้ด ต้องแมปกับ Consent Type ใดของ Google และใครเป็นคนอัปเดต Privacy Policy ให้ตรงกับ Vendor ใหม่นี้ คำถามเหล่านี้ควรอยู่ใน Checklist ก่อน Merge Code ไม่ใช่ถามหลัง Deploy ไปแล้ว

พร้อมตรวจสอบความน่าเชื่อถือของเว็บไซต์คุณหรือยัง?

ทดลองใช้งาน trusty ฟรี ไม่ต้องใช้บัตรเครดิต เริ่มสแกนได้ทันที

ทดลองใช้งานระบบฟรี

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

Conversion หายหลังเปิด Google Consent Mode แปลว่าระบบพังหรือไม่ ไม่เสมอไป ต้องแยกก่อนว่าเป็น Modeled Conversion ที่ Google ประมาณค่าแทนข้อมูลที่ขาดหาย หรือเป็นบั๊กจริงจากการตั้งค่า Default Consent หรือ Update Event ที่ผิดพลาด

จะตรวจได้อย่างไรว่า Default Consent State ตั้งค่าก่อน Tag อื่นจริง เปิด Network Tab ดูลำดับ Request ว่า gtag consent default ยิงก่อน Request ของ Google Analytics หรือ Ads Tag หรือใช้ Tag Assistant ตรวจ Consent State ตั้งแต่โหลดหน้าแรก

ทำไม Reject All แล้ว Tag บางตัวยังยิงอยู่ ส่วนใหญ่เกิดจากการ Map หมวด Cookie ของ Banner กับ Consent Type ของ Google ไม่ครบ หรือมี Script ที่ Hardcode ไว้นอกการควบคุมของ Consent Management Platform

SPA ที่เปลี่ยนหน้าโดยไม่ Reload มีผลต่อ Consent Mode อย่างไร ถ้า Consent State ถูกอ่านแค่ตอนโหลดหน้าแรก การเปลี่ยน Route ภายในแอปอาจมี Event ยิงโดยไม่ผ่านการเช็คสถานะล่าสุด ทีม Frontend ควรอ่าน Consent State ใหม่ทุกครั้งที่มี Event สำคัญ

เช็กลิสต์ปฏิบัติ

  • ตรวจลำดับการยิง Default Consent ก่อน Tag อื่นด้วย Network Tab หรือ Tag Assistant
  • ทดสอบ Accept All, Reject All และ Custom Selection แล้วยืนยัน Consent State เปลี่ยนจริง
  • ตรวจการ Map หมวด Cookie ของ Banner กับ Consent Type ของ Google ให้ครบทุกประเภท
  • ทดสอบ Reload หน้าและเปิด Session ใหม่เพื่อตัดปัญหา Cache ออกจากการวิเคราะห์
  • ตรวจ SPA/Route Change ว่า Consent State ถูกอ่านใหม่ทุกครั้งที่มี Event สำคัญ
  • เปรียบเทียบ Modeled Conversion กับช่วงเวลาที่เหมาะสม ไม่เทียบกับตัวเลขก่อนมี Consent Mode โดยตรง
  • บันทึก Evidence ทุกขั้นตอนตรวจไว้ให้ Privacy และ Analytics Team ตรวจย้อนหลังได้

ข้อผิดพลาดที่พบบ่อย

  • สรุปว่า Consent Mode พังจากตัวเลข Conversion ที่ลดลงอย่างเดียว โดยไม่แยก Modeled Data ออกจากบั๊กจริง
  • ปล่อยให้ Consent Script โหลดผ่าน GTM Trigger ที่ล่าช้ากว่า Tag หลัก ทำให้ Default Consent ตั้งไม่ทัน
  • ไม่ทดสอบใน Incognito หรือ Session ใหม่ ทำให้ผลตรวจปนกับ Cache หรือ Preference เก่า
  • Map หมวด Cookie ของ Banner กับ Consent Type ของ Google ไม่ครบทุกประเภท เช่น ลืม ad_user_data
  • ไม่ตรวจ SPA Route Change ทำให้ Event หลังเปลี่ยนหน้าไม่ผ่านการเช็ค Consent ล่าสุด

สรุป

เมื่อ Google Consent Mode ดูเหมือนทำงานผิดพลาด สิ่งแรกที่ต้องทำคือแยก Modeled Data ออกจากบั๊กเชิงเทคนิคด้วยการตรวจทีละขั้นตอนตามลำดับ ไม่ใช่ปิดระบบทิ้งเพราะตัวเลขลดลง ทีม Engineering ควรทดสอบ Default State, Update Event, การ Map หมวด Cookie และผลกระทบจาก SPA อย่างสม่ำเสมอ โดยเฉพาะหลัง Deploy ที่มีการเปลี่ยน Script หรือเพิ่ม Third-party Tag ใหม่

แหล่งข้อมูลอ้างอิง

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

Conversion หายหลังเปิด Google Consent Mode แปลว่าระบบพังหรือไม่

ไม่เสมอไป ต้องแยกก่อนว่าเป็น Modeled Conversion ที่ Google ประมาณค่าแทนข้อมูลที่ขาดหาย หรือเป็นบั๊กจริงจากการตั้งค่า Default Consent หรือ Update Event ที่ผิดพลาด

จะตรวจได้อย่างไรว่า Default Consent State ตั้งค่าก่อน Tag อื่นจริง

เปิด Network Tab ดูลำดับ Request ว่า gtag consent default ยิงก่อน Request ของ Google Analytics หรือ Ads Tag หรือใช้ Tag Assistant ตรวจ Consent State ตั้งแต่โหลดหน้าแรก

ทำไม Reject All แล้ว Tag บางตัวยังยิงอยู่

ส่วนใหญ่เกิดจากการ Map หมวด Cookie ของ Banner กับ Consent Type ของ Google ไม่ครบ หรือมี Script ที่ Hardcode ไว้นอกการควบคุมของ Consent Management Platform

SPA ที่เปลี่ยนหน้าโดยไม่ Reload มีผลต่อ Consent Mode อย่างไร

ถ้า Consent State ถูกอ่านแค่ตอนโหลดหน้าแรก การเปลี่ยน Route ภายในแอปอาจมี Event ยิงโดยไม่ผ่านการเช็คสถานะล่าสุด ทีม Frontend ควรอ่าน Consent State ใหม่ทุกครั้งที่มี Event สำคัญ

อ่านต่อในหัวข้อเดียวกัน

เนื้อหานี้จัดทำขึ้นเพื่อให้ข้อมูลทั่วไปเท่านั้น ไม่ถือเป็นคำแนะนำทางกฎหมาย กรุณาปรึกษาผู้เชี่ยวชาญด้านกฎหมายหรือ Data Protection Officer ของหน่วยงานท่านก่อนนำไปปฏิบัติจริง

พร้อมตรวจสอบความน่าเชื่อถือของเว็บไซต์คุณหรือยัง?

ทดลองใช้งาน trusty ฟรี ไม่ต้องใช้บัตรเครดิต เริ่มสแกนได้ทันที