← กลับไปหน้าบทความ
LINE Tracking

แยก cookie consent ให้รองรับหลายแคมเปญและหลาย Landing Page ไปพร้อมกัน

ทีมบรรณาธิการ linli12 ส.ค. 04:51อัปเดต 12 ส.ค. 04:51อ่าน 3 นาที
แยก cookie consent ให้รองรับหลายแคมเปญและหลาย Landing Page ไปพร้อมกัน
บทความนี้จัดทำเพื่อความรู้ ชื่อธุรกิจ ตัวเลข หรือบทสนทนาที่ไม่มีแหล่งอ้างอิงกำกับเป็นกรณีตัวอย่างเพื่ออธิบายแนวคิด ดูรายละเอียดที่ นโยบายกองบรรณาธิการ

สรุปสั้น ๆ

cookie consent กับ LINE tracking ที่รองรับหลายแคมเปญได้จริง ต้องแยกประเภท Cookie เป็นหมวดชัดเจน เช่น Functional, Analytics, Marketing แล้วผูกเงื่อนไขการยิง Tag แต่ละแคมเปญหรือ Landing Page เข้ากับหมวดที่เกี่ยวข้อง แทนที่จะใช้สถานะ consent ก้อนเดียวควบคุมทุกอย่าง เพราะแคมเปญที่ต่างกันมักต้องการ Tag คนละชุด ถ้าออกแบบปนกันตั้งแต่ต้น พอเพิ่มแคมเปญใหม่จะยิ่งแก้ยาก

ทีมการตลาดที่รันหลายแคมเปญพร้อมกัน มักเจอปัญหาคล้ายกันคือ ตอนเริ่มมีแคมเปญเดียว ตั้ง Banner ขอ consent ไว้ตัวเดียวก็พอ แต่พอเพิ่มแคมเปญที่สอง สาม สี่ แต่ละอันมี Landing Page ของตัวเอง มี Tag ที่ต้องยิงไม่เหมือนกัน สถานะ consent ก้อนเดียวที่เคยพอใช้ได้ก็เริ่มไม่พอ เพราะบางแคมเปญต้องการแค่ Analytics บางแคมเปญต้องการทั้ง Analytics และ Marketing Pixel

ปัญหาที่ตามมาคือทีมเริ่มไม่แน่ใจว่า consent ที่ผู้ใช้กดยอมรับบน Landing Page A จะครอบคลุม Tag ที่ต้องยิงบน Landing Page B ด้วยหรือไม่ ถ้าออกแบบผิด อาจเกิดสองแบบ คือยิง Tag เกินสิทธิ์ที่ผู้ใช้ยินยอมไว้ หรือไม่ยิง Tag ที่ควรยิงเพราะเช็กเงื่อนไขผิดหมวด ทั้งสองแบบส่งผลต่อคุณภาพข้อมูลที่จะใช้วัดผลตอนพาคนเข้า LINE

บทความนี้จะพาไล่ดูว่าออกแบบ cookie consent ให้รองรับหลายแคมเปญและหลาย Landing Page พร้อมกันต้องคิดเรื่องอะไรบ้าง ตั้งแต่การแบ่งหมวด Cookie ไปจนถึงโครงสร้าง Google Tag Manager ที่ทำให้ขยายแคมเปญใหม่ได้โดยไม่ต้องรื้อของเดิม

cookie consent กับ LINE tracking หมายถึงการจัดการสถานะความยินยอมของผู้ใช้ ว่าเว็บไซต์มีสิทธิ์เก็บ Cookie ประเภทไหนได้บ้าง ก่อนที่จะใช้ข้อมูลนั้นไปประกอบการวัดผลเส้นทางที่พาคนจากโฆษณาไปจนถึงการกดปุ่มเข้า LINE เพราะการวัดผลแบบนี้มักต้องพึ่ง Cookie หลายตัวพร้อมกัน ทั้งตัวที่เก็บ UTM ตัวที่เก็บ Click ID และตัวที่ผูก Session ของผู้ใช้

จุดที่ต่างจาก consent ทั่วไปคือ LINE tracking มักมีหลายแคมเปญที่วิ่งพร้อมกัน แต่ละแคมเปญอาจมี Landing Page ของตัวเอง และต้องการ Tag คนละชุด เช่น แคมเปญ Google Ads ต้องการ Tag ที่เก็บ GCLID ส่วนแคมเปญ Meta ต้องการ Tag ที่เก็บ Meta Click ID การมี consent ก้อนเดียวที่ใช้ตัดสินทุก Tag จึงไม่ยืดหยุ่นพอเมื่อธุรกิจขยายแคมเปญ

การออกแบบที่รองรับได้จริงต้องเริ่มจากการมองว่า Cookie แต่ละตัวมีหน้าที่อะไร แล้วจัดกลุ่มตามหน้าที่นั้น ไม่ใช่จัดตาม Landing Page เพราะ Landing Page อาจเพิ่มขึ้นเรื่อย ๆ แต่หมวดหมู่ของ Cookie อย่าง Functional, Analytics, Marketing มักอยู่คงที่กว่า

ตอนเริ่มมีแคมเปญเดียว consent ก้อนเดียวมักทำงานได้โดยไม่มีปัญหา เพราะมี Tag แค่ไม่กี่ตัวที่ต้องคุม แต่พอแคมเปญเพิ่มเป็นสามสี่ตัว แต่ละแคมเปญมักมี Requirement ต่างกัน เช่น แคมเปญ Retargeting ต้องการ Cookie ที่ติดตามพฤติกรรมย้อนหลัง ขณะที่แคมเปญ Awareness อาจต้องการแค่ Analytics พื้นฐาน ถ้าใช้เงื่อนไขเดียวกันหมด จะเกิดกรณีที่ Tag บางตัวยิงเกินความจำเป็นในแคมเปญที่ไม่ควรมี

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

ตัวอย่างสมมติ: ธุรกิจหนึ่งรันสามแคมเปญพร้อมกัน คือ Google Ads, Meta และ TikTok แต่ละอันมี Landing Page แยก ถ้าทีมใช้ consent เดียวกันหมดสามหน้า พอ Meta เปลี่ยนข้อกำหนดเรื่อง Consent เฉพาะของตัวเอง ทีมจะต้องไปแก้ Landing Page ทั้งสามหน้าพร้อมกัน ทั้งที่จริงควรกระทบแค่หน้าที่เกี่ยวกับ Meta เท่านั้น

หมวดที่ใช้กันทั่วไปและปรับให้เข้ากับ LINE tracking ได้มีสามกลุ่มหลัก กลุ่มแรกคือ Functional คือ Cookie ที่จำเป็นต่อการทำงานพื้นฐานของเว็บ เช่น การจำภาษา หรือสถานะฟอร์มที่กรอกค้างไว้ กลุ่มนี้มักไม่ต้องขอ consent เพราะจำเป็นต่อการใช้งาน

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

กลุ่มที่สามคือ Marketing ซึ่งรวม Cookie ที่เก็บ Click ID จากแพลตฟอร์มโฆษณาต่าง ๆ และ Cookie ที่ใช้ผูก Session เพื่อส่ง Conversion กลับ กลุ่มนี้เป็นกลุ่มที่กระทบการวัดผลเข้า LINE โดยตรง จึงต้องแยกให้ชัดว่าแคมเปญไหนต้องใช้ Cookie ตัวไหนในกลุ่มนี้บ้าง

ตั้งค่าต่อ Landing Page ให้ไม่ชนกันได้อย่างไร

หลักการคือให้ Landing Page แต่ละหน้าประกาศตัวเองว่าต้องการ Cookie กลุ่มไหนบ้าง ผ่านตัวแปรหรือ Data Layer ที่ตั้งไว้บนหน้านั้น แล้วให้สคริปต์ consent กลางอ่านค่านี้ไปตัดสินใจว่าจะแสดง Banner แบบไหน และจะเปิดใช้งาน Tag กลุ่มไหนเมื่อผู้ใช้กดยอมรับ

วิธีนี้ต่างจากการเขียนเงื่อนไขเฉพาะหน้าตรงที่ Landing Page ใหม่ไม่ต้องแก้สคริปต์กลาง แค่ประกาศว่าต้องการ Cookie กลุ่มไหน สคริปต์กลางก็จะจัดการที่เหลือให้เอง ทำให้ทีมเพิ่มแคมเปญใหม่ได้เร็วขึ้นโดยไม่ต้องกลัวกระทบแคมเปญเดิม

จุดที่ต้องระวังคือ ต้องมีมาตรฐานตั้งชื่อ Data Layer ให้สม่ำเสมอทุกหน้า เช่น ใช้ตัวแปรชื่อเดียวกันสำหรับประกาศกลุ่ม Cookie ที่ต้องการ ถ้าแต่ละคนในทีมตั้งชื่อไม่เหมือนกัน สคริปต์กลางจะอ่านค่าไม่ตรง แล้วปัญหาก็จะย้อนกลับไปเป็นแบบเดิมคือแก้เฉพาะหน้าอีกครั้ง

ทีมที่มีหลายคนดูแลหลาย Landing Page พร้อมกัน ควรตั้งเอกสารกลางเป็นตารางสั้น ๆ บันทึกว่าแต่ละหน้าประกาศหมวด Cookie อะไรไว้บ้าง เพราะเมื่อจำนวน Landing Page เพิ่มถึงหลักสิบหน้า การจำด้วยความรู้สึกว่าหน้าไหนตั้งค่าอะไรไว้จะเริ่มผิดพลาดได้ง่าย โดยเฉพาะเมื่อทีมมีการโอนงานหรือมีคนเข้าออกทีมบ่อย เอกสารกลางนี้ยังช่วยให้เวลาต้องตรวจสอบย้อนหลังว่าทำไม Tag บางตัวไม่ยิงบนบางหน้า สามารถไล่ดูจากเอกสารได้ทันทีโดยไม่ต้องเปิดโค้ดทีละบรรทัด

ตารางเทียบโครงสร้างแบบรวมศูนย์กับแบบแยกตามหน้า

เพื่อให้เห็นภาพความต่างระหว่างสองแนวทางที่ทีมมักเลือกใช้:

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

ขั้นตอนตั้ง cookie consent รองรับหลายแคมเปญแบบใช้ได้จริง

ลำดับงานที่ทำแล้วขยายต่อได้ง่ายมีดังนี้:

  1. รวบรวมรายชื่อ Tag ทั้งหมดที่ใช้อยู่ในทุกแคมเปญ แล้วจัดกลุ่มว่าแต่ละตัวควรอยู่ในหมวด Functional, Analytics หรือ Marketing
  2. ออกแบบ Data Layer มาตรฐานให้ทุก Landing Page ประกาศว่าต้องการหมวดไหนบ้าง โดยใช้ชื่อตัวแปรเดียวกันทุกหน้า
  3. ตั้งค่าใน Google Tag Manager ให้ Trigger ของแต่ละ Tag เช็กทั้งสถานะ consent และหมวดที่ Landing Page นั้นประกาศไว้ ก่อนจะอนุญาตให้ยิง
  4. ทดสอบทีละ Landing Page โดยจำลองผู้ใช้กด Allow และ Deny แล้วดูว่า Tag ที่ควรยิงกับไม่ควรยิงตรงตามที่ออกแบบไว้จริง
  5. เพิ่มแคมเปญใหม่โดยประกาศหมวด Cookie ที่ต้องการบน Landing Page ใหม่ แล้วตรวจสอบว่าสคริปต์กลางทำงานถูกต้องโดยไม่ต้องแก้ Tag เดิม

ทำแบบนี้แล้วพัง เพราะจุดเหล่านี้มักถูกมองข้าม

  • ตั้ง Data Layer แต่ตั้งชื่อตัวแปรไม่ตรงกันระหว่างหน้า ทำให้สคริปต์กลางอ่านค่าไม่เจอ แล้ว Fallback ไปเป็นไม่ยิง Tag เลยทั้งที่ผู้ใช้ยินยอมแล้ว
  • เผื่อแคมเปญใหม่ไม่ทัน จึงใส่เงื่อนไขเฉพาะหน้าเพิ่มเข้าไปในสคริปต์กลางอีกครั้ง ทำให้โครงสร้างที่ตั้งใจให้รวมศูนย์กลับซับซ้อนเหมือนเดิม
  • ลืมทดสอบกรณีผู้ใช้กด Deny เฉพาะ Marketing แต่ยังยอมรับ Analytics ทำให้ระบบไม่ยิง Tag ใดเลยทั้งที่ควรยิง Analytics ได้
  • ไม่มีเอกสารบันทึกว่า Landing Page แต่ละหน้าประกาศหมวด Cookie อะไรไว้ พอทีมเปลี่ยนคน คนใหม่ต้องไปไล่อ่านโค้ดเองทีละหน้า
  • เปลี่ยนชื่อ Tag ใน Google Tag Manager โดยไม่อัปเดตรายการที่จับคู่กับหมวด Cookie ทำให้ Tag บางตัวหลุดออกจากการควบคุม consent โดยไม่มีใครรู้ตัว

หลังตั้งโครงสร้างนี้แล้ว ตรวจสอบผลอย่างไรให้มั่นใจ

หลังวางโครงสร้าง cookie consent แบบรวมศูนย์แล้ว ควรมีรายงานที่แยกตามแคมเปญ เพื่อดูว่าอัตราการกด Allow ของแต่ละแคมเปญต่างกันแค่ไหน เพราะบางแคมเปญอาจมีกลุ่มเป้าหมายที่ระมัดระวังเรื่องความเป็นส่วนตัวมากกว่ากลุ่มอื่น ถ้าอัตรา Allow ต่ำผิดปกติในแคมเปญใดแคมเปญหนึ่ง อาจต้องกลับไปดูว่าข้อความหรือตำแหน่ง Banner บน Landing Page นั้นเข้าใจยากไปหรือไม่

อีกจุดที่ควรตรวจคือดูว่า Tag ที่ยิงจริงตรงกับหมวด Cookie ที่ควรยิงตามที่ผู้ใช้ยินยอมหรือไม่ วิธีง่าย ๆ คือใช้เครื่องมือ Debug ของ Google Tag Manager เปิดดูทีละ Landing Page แล้วเทียบกับรายการที่เคยวางแผนไว้ตอนออกแบบ

เมื่อโครงสร้าง consent มั่นคงและมีเอกสารชัดเจนแล้ว ระบบอย่าง linli จะรับข้อมูลที่ผ่านการกรองตามสถานะยินยอมนี้ไปใช้ผูกกับ Lead ที่เกิดขึ้นใน LINE และส่ง Conversion กลับแพลตฟอร์มที่เชื่อมต่อไว้ต่อไป แต่ความแม่นยำของขั้นตอนถัดไปยังขึ้นกับว่าคุณภาพของ Cookie ที่เก็บมาตั้งแต่ต้นครบถ้วนแค่ไหน ถ้าอยากเข้าใจภาพรวมก่อนหน้านี้เพิ่มเติมสามารถอ่าน consent tracking ก่อนเข้า LINE ประกอบได้

สรุป

cookie consent ที่รองรับหลายแคมเปญไม่ใช่แค่เรื่องเทคนิคของ Google Tag Manager แต่เป็นเรื่องของการวางมาตรฐานตั้งแต่ต้น ว่า Cookie แต่ละตัวมีหน้าที่อะไร และ Landing Page แต่ละหน้าต้องการหมวดไหน ถ้าวางรากฐานนี้ให้ชัด การเพิ่มแคมเปญใหม่จะไม่ใช่งานที่น่ากลัวอีกต่อไป

สิ่งที่ทีมส่วนใหญ่มองข้ามคือคิดว่าปัญหาจะเกิดตอนแคมเปญเยอะแล้วเท่านั้น แต่จริง ๆ ควรวางโครงสร้างแบบรวมศูนย์ตั้งแต่มีแคมเปญแรกหรือสอง เพื่อไม่ต้องมารื้อทั้งระบบทีหลังตอนที่ทุกอย่างพันกันไปหมดแล้ว

  • แบ่งหมวด Cookie เป็น Functional, Analytics, Marketing แทนการตั้ง consent ก้อนเดียว
  • ใช้ Data Layer มาตรฐานให้ Landing Page ประกาศหมวดที่ต้องการ ไม่ต้องแก้สคริปต์กลางทุกครั้ง
  • ทดสอบทุกกรณีของการกด Allow/Deny ก่อนปล่อยแคมเปญใหม่จริง

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

ต้องแยก Landing Page ทุกหน้าออกจากกันเสมอไหม

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

แคมเปญที่ไม่มี Landing Page ของตัวเอง ต้องทำอย่างไร

ให้ประกาศหมวด Cookie ที่ต้องการไว้ที่หน้าเว็บหลักที่แคมเปญนั้นพาคนไป ถ้าใช้หน้าเดียวกับแคมเปญอื่น ต้องรวมความต้องการของทุกแคมเปญที่ใช้หน้านั้นเข้าด้วยกัน แล้วขอ consent ครอบคลุมทุกหมวดที่จำเป็น

ถ้าผู้ใช้กด Allow เฉพาะ Analytics แต่ปฏิเสธ Marketing จะเก็บ UTM ได้ไหม

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

ต้องใช้ Consent Management Platform สำเร็จรูปหรือเขียนเองก็ได้

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

โครงสร้างนี้ใช้กับธุรกิจที่มีแค่แคมเปญเดียวได้ไหม

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

ต้องอัปเดตหมวด Cookie บ่อยแค่ไหน

ควรทบทวนทุกครั้งที่เพิ่ม Tag ใหม่หรือเปลี่ยนแพลตฟอร์มโฆษณา เพราะ Tag ใหม่อาจต้องการ Cookie ที่ยังไม่เคยจัดหมวดไว้ การทบทวนเป็นระยะช่วยไม่ให้โครงสร้างหลุดจากของจริงที่ใช้งานอยู่

รู้ว่าโฆษณาเข้า LINE ทำยอดขายจริงแค่ไหน

linli ติดตามลูกค้าตั้งแต่คลิกโฆษณา กดเพิ่มเพื่อน ทักแชท จนปิดการขาย พร้อมส่ง Conversion กลับแพลตฟอร์มโฆษณา เริ่มฟรี 14 วัน

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

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

300 คนกดเข้า LINE ทุกเดือน แต่ไม่มีใครรู้ว่าเก็บข้อมูลใครได้บ้าง

300 คนกดเข้า LINE ทุกเดือน แต่ไม่มีใครรู้ว่าเก็บข้อมูลใครได้บ้าง

ทีมส่วนใหญ่ตั้งใจแค่ให้คนกดเข้า LINE ให้ได้มากที่สุด แต่ไม่เคยถามว่าจะขอความยินยอมเก็บข้อมูลตรงไหน บทความนี้เปรียบเทียบ consent tracking แบบ Client-side กับ Server-side ก่อนพาคนเข้า LINE ว่าแบบไหนเหมาะกับธุรกิจแบบไหน
Lead เข้ามาทุกวัน แต่พอเปิดดูย้อนหลังกลับหาต้นตอไม่เจอสักราย

Lead เข้ามาทุกวัน แต่พอเปิดดูย้อนหลังกลับหาต้นตอไม่เจอสักราย

ธุรกิจหนึ่งมี Lead เข้ามาสม่ำเสมอทุกวัน แต่พอลองย้อนดูข้อมูลเดือนก่อนกลับหาว่าใครมาจากแคมเปญไหนไม่ได้ บทความนี้อธิบายว่า data retention สำหรับ LINE tracking ต้องออกแบบร่วมกับ First-party Data อย่างไรถึงจะย้อนดูได้จริง
หน้า Privacy Policy ต้องระบุอะไรบ้าง ก่อนส่ง Conversion เข้า LINE ได้อย่างสบายใจ

หน้า Privacy Policy ต้องระบุอะไรบ้าง ก่อนส่ง Conversion เข้า LINE ได้อย่างสบายใจ

หลายทีมตั้ง Tracking เข้า LINE ครบแล้ว แต่พอถูกถามว่าหน้า Privacy Policy ระบุการเก็บข้อมูลพวกนี้ไว้หรือยัง กลับตอบไม่ได้ บทความนี้อธิบายว่าหน้านโยบายควรครอบคลุมอะไรบ้าง และวิธีตรวจ Attribution ให้ตรงกับที่ประกาศไว้จริง