ניהול הסכמות ב-Prebid.js: מדריך הגדרת Header Bidding לעורכים
Header bidding מגדיל את ה-CPM של עורכים בכך שמאפשר לשותפי הביקוש להתחרות במקביל — אך כל אחד מאותם שותפים זקוק לאות הסכמה תקף לפני שיוכל להניח עוגייה, לקחת טביעת אצבע דיגיטלית, או להפעיל פיקסל. Prebid.js, עטיפת ה-header bidding בקוד פתוח de facto המשמשת עשרות אלפי אתרים, מגיעה עם מודול ניהול הסכמות המחבר את ה-CMP שלך לכל מכרז. הגדרה שגויה תגרום לדליפת מידע ללא הסכמה (סיכון רגולטורי) או לכך שמציעי מחיר ייחסמו מהאות שהם צריכים (סיכון הכנסות). מדריך זה מלווה עורכים בהגדרה ברמת ייצור.
מדוע Prebid.js זקוק למודול ניהול הסכמות
כאשר מכרז Prebid.js מופעל, העטיפה שולחת בקשות מקבילות לכל מתאם מציע מחיר שהוגדר. כל מתאם חייב לכלול את מחרוזת ההסכמה של המשתמש בבקשת הצעת המחיר שלו — tcfeu (TCF v2.2 לאיחוד האירופי/בריטניה), usp (CCPA/CPRA), ובאופן גובר גם gpp (מחרוזת IAB Global Privacy Platform המכסה מדינות אמריקאיות מרובות). ללא אותות אלה, SSP ו-DSP במורד הזרם נאלצים לטפל במשתמש כמסרב, לנטוש את הצעת המחיר לחלוטין, או — במקרה הגרוע — לעבד נתונים שלא כדין.
מודול ניהול ההסכמות של Prebid ממוקם בין ה-CMP שלך לצינור בקשות הצעות המחיר. הוא קורא לממשק API הסטנדרטי של CMP (__tcfapi, __uspapi, __gppapi), ממתין למחרוזת הסכמה, ואז מזריק אותה אוטומטית לעומס הבקשה של כל מתאם. הוא גם אוכף סינון מבוסס מטרות כאשר מפעילים אכיפת GDPR, וחוסם גישה לאחסון והפעלת מציע המחיר עבור משתמשים שלא העניקו את מטרות ה-TCF הרלוונטיות.
התקנה והגדרת מודול הליבה
Prebid.js נבנה לכל עורך מ-docs.prebid.org/download.html. כאשר מייצרים את ה-build המותאם אישית, שלושה מודולים תחת «ניהול הסכמות» חשובים:
- consentManagementTcf — מטפל במחרוזות TCF v2.2 עבור תנועת EU, UK ושוויץ.
- consentManagementUsp — מטפל במחרוזת ה-US Privacy המיושנת CCPA/CPRA (עדיין נדרשת על ידי DSP רבים).
- consentManagementGpp — מטפל במחרוזת IAB GPP, הסטנדרט המכוון לעתיד שנדרש כעת על ידי Google, TTD ו-SSP מרכזיים.
כלול את שלושתם אם אתה משרת תנועה גלובלית. ברגע שה-build נמצא ב-CDN שלך, הגדר את המודולים בסקריפט ההגדרה של Prebid:
הגדרת TCF v2.2
בלוק ה-TCF מורה ל-Prebid לאיזה CMP API לקרוא, כמה זמן לחכות למחרוזת, ומה לעשות ב-timeout. הגדרת ייצור טיפוסית מגדירה cmpApi: 'iab', timeout: 8000 (8 שניות — ארוך מספיק לטעינה איטית של באנר CMP), ו-defaultGdprScope: true כך שמשתמשים בתחומי שיפוט לא ידועים יטופלו כנמצאים בתחולה עד שיוכח אחרת. הגדרת actionTimeout בנפרד שולטת בזמן שבו Prebid ממתין כאשר המשתמש עדיין לא קיים אינטראקציה עם הבאנר — שמירתו סבירה מונעת חריץ מודעה ריק אם מבקר מתעלם מהבאנר.
US Privacy ו-GPP
USP פשוט: הפעל את המודול ו-Prebid קורא את המחרוזת בת ארבעת התווים מ-__uspapi. GPP מורכב יותר מכיוון שמחרוזת GPP יכולה לשאת מזהי section מרובים (TCF EU, US National, US California, US Colorado, US Virginia וכו'). Prebid מעביר אוטומטית את המחרוזת המלאה, אך מציעי מחיר בוחנים sections ספציפיות. ודא שה-CMP שלך פולט את sections ה-GPP הנכונות לתחום השיפוט של כל משתמש — CMP שהוגדר בצורה שגויה ופולט רק את ה-US National section למשתמש קליפורניאי יגרום ל-DSP תואמי CPRA לדחות את הצעת המחיר.
הפעלת אכיפת GDPR (סינון מבוסס מטרות)
כברירת מחדל, מודול ההסכמות מעביר את מחרוזת ה-TCF אך אינו חוסם דבר. כדי ש-Prebid יאכוף בפועל מטרות TCF, הפעל את מערך הכללים gdprEnforcement. כאן קורות רוב שגיאות ההגדרה — וכאן טמון ההבדל בין מחסנית header bidding תואמת ולא תואמת.
מערך הכללים הסטנדרטי חוסם ארבע פעילויות כאשר למטרה הרלוונטית חסרה הסכמה:
- storage — מסולל על מטרה 1 (אחסון וגישה). כאשר נדחה, Prebid מונע ממציעי מחיר לקרוא או לכתוב עוגיות ו-localStorage.
- basicAds — מסולל על מטרה 2 (מודעות בסיסיות). כאשר נדחה, מציע המחיר מוצא מהמכרז לחלוטין.
- measurement — מסולל על מטרה 7. משפיע על מתאמי ניתוח נתונים.
- transmitPreciseGeo — מסולל על תכונה מיוחדת 1. כאשר נדחה, Prebid מסיר מיקום גיאוגרפי מדויק מבקשות הצעות המחיר.
לכל כלל אתה מגדיר enforcePurpose: true, enforceVendor: true, ורשימה של vendorExceptions. רשימת חריגי הספקים קריטית: כל מציע מחיר שרשמת בה רשאי להשתתף אפילו ללא הסכמת ספק TCF מפורשת, על בסיס שיש לך בסיס משפטי נפרד (למשל, אינטרס לגיטימי בשילוב עם תהליך חוזי). השתמש בזה בזהירות — חריגים רחבים מדי הם בדיוק הדפוס שהרגולטורים החלו לקנוס עליו עורכים.
מלכודות נפוצות שעולות לעורכים בהכנסות או בציות
timeout קצר מדי
אם ה-timeout קצר מזמן עיבוד הבאנר של ה-CMP שלך, Prebid ממשיך ללא מחרוזת הסכמה. מציעי מחיר מתייחסים לכך כאל חוסר הסכמה ומוותרים על הצעת המחיר. מדוד את זמן ההשהיה של הקריאה הראשונה ל-tcfapi('addEventListener') של ה-CMP שלך באחוזון ה-95 והגדר את ה-timeout של Prebid מעל לכך. 8000 אלפיות השנייה הן ברירת מחדל בטוחה; 3000 אלפיות שנייה מסוכנת אם אתה משרת שווקים שבהם באנרים לוקחים זמן להתמקם.
שילוב GPP חסר בתנועת ארה"ב
SSP ו-DSP מרכזיים (Google AdX, TTD, Magnite, PubMatic) דורשים כעת את מחרוזת GPP לאכיפת ביטול הסכמה בארה"ב. אם אתה פולט רק את מחרוזת USP המיושנת, DSP אלה ישדרגו כלפי מטה או ידלגו על המלאי שלך יותר ויותר. בדוק את תגובות הצעות המחיר שלך: ירידה חדה ב-CPM בתנועת ארה"ב ב-2026 היא לרוב אות GPP חסר.
מחרוזות הסכמה ישנות בניווט SPA
אפליקציות דף יחיד שמפעילות מחדש מכרזי Prebid בשינויי מסלול חייבות לקרוא ל-pbjs.refreshUserIds() ולהבטיח שמחרוזת ה-TCF העדכנית ביותר מוחזרת. מחרוזת ממטמון בת 30 דקות עלולה לשאת את ההעדפות של המשתמש הקודם אם האתר שלך משתמש בסשנים משותפים.
vendorExceptions חסרים לניתוח נתונים
עורכים שוכחים לעתים קרובות שמתאמי Prebid Analytics (Google Analytics, דיווח בצד השרת) כפופים גם הם לסינון measurement תחת מטרה 7 של TCF. אם אתה מסתמך עליהם לדיווח הכנסות, פרט אותם במפורש תחת חריגי הספקים של כלל המדידה, או קבל את פער הנתונים בתנועה ללא הסכמה.
בדיקת ההגדרה לפני ייצור
Prebid.js חושף את pbjs.getConfig('consentManagement') בקונסול הדפדפן. ודא שההגדרה הפעילה תואמת את כוונתך. לאחר מכן השתמש בהרחבת Chrome Prebid.js Professor או ב-pbjs.getEvents() לבדיקת מחרוזת ההסכמה המצורפת לכל בקשת הצעת מחיר. בדוק שלושה תרחישים: משתמש שנתן הסכמה מלאה, משתמש שלחץ «דחה הכל», ומשתמש שסגר את הבאנר ללא אינטראקציה. כל אחד אמור לייצר התנהגות שונה ומורגשת בעומס בקשת הצעת המחיר.
הפעל את אותן הבדיקות על פני גיאוגרפיות שונות באמצעות VPN או דגל עקיפת הגיאולוקציה של ה-CMP שלך. תנועת EU אמורה לייצר מחרוזת TCF ולהפעיל gdprEnforcement; תנועת קליפורניה אמורה לייצר מחרוזת USP ו-GPP; תנועה בעלת תחום שיפוט לא ידוע אמורה לכבד את הגדרת defaultGdprScope שלך.
סיכום
מחסנית ניהול הסכמות Prebid שהוגדרה כהלכה עושה שלושה דברים בבת אחת: היא שומרת על מציעי המחיר שלך עם אותות הסכמה תקפים (ושומרת על ה-CPM), אוכפת כללי TCF וביטול הסכמה אמריקאיים ברמת העטיפה (מפחיתה חשיפה רגולטורית), ומספקת נקודת ביקורת יחידה כאשר רגולטור שואל כיצד הגדרת ה-header bidding שלך מכבדת את בחירת המשתמש. הקדש זמן להגדרת timeouts במכוון, הפעל GPP לצד USP לתנועת ארה"ב, ובדוק את רשימת vendorExceptions שלך מדי רבעון — עלות הטעות בנושא זה נמדדת הן בקנסות והן בהכנסות פרוגרמטיות שאבדו.