איפה לשמור הסכמה: השוואה בין עוגיות, localStorage ורשומות בצד השרת
שתי משימות שונות
כשמבקר מקבל החלטת הסכמה, שני דברים נפרדים צריכים לקרות. ראשית, הדפדפן צריך לזכור את הבחירה כדי שהבאנר לא יופיע מחדש בכל עמוד והתגיות ידעו מה מותר להן. שנית, ייתכן שתצטרך להוכיח מאוחר יותר שהבחירה נעשתה, מה הוצג למבקר ומתי. את המשימות האלה מבצעים לעיתים קרובות מנגנוני אחסון שונים, וערבוב ביניהם יוצר בעיות אמיתיות: באנרים שממשיכים להופיע, בחירות שנעלמות בדפדפנים מסוימים, או היעדר רשומה להציג כשמישהו שואל.
ההשוואה הזו בוחנת את שלוש האפשרויות הנפוצות — עוגיות first-party, אחסון דפדפן כמו localStorage ורשומות הסכמה בצד השרת — ואת המקום המתאים לכל אחת.
אפשרות 1: עוגיות first-party
עוגיות הן הבית המסורתי של מצב ההסכמה. CMP של TCF שומרים בדרך כלל את מחרוזת ההסכמה בעוגיית first-party, ו-CMP רבים שומרים בה גם את נתוני ההעדפות שלהם.
חוזקות
- ניתנת לקריאה על ידי השרת. העוגייה נשלחת עם כל בקשה, ולכן קוד בצד השרת, לוגיקת קצה ותיוג בצד השרת יכולים לקרוא את הבחירה בלי לחכות ל-JavaScript.
- ניתנת לשיתוף בין תת-דומיינים. עוגייה שנקבעה על הדומיין הרשום שלך יכולה לכסות את תת-הדומיינים www, blog ו-shop.
- מצופה באופן רחב. אינטגרציות רבות של ad tech מחפשות הסכמה בעוגיות.
חולשות
- מגבלות גודל. דפדפנים מגבילים את גודל העוגייה לכ-4 KB, ומחרוזת TCF עם ספקים רבים וערכים נוספים יכולה להתקרב לכך.
- תקורת בקשות. כל בקשה לדומיין שלך נושאת את העוגייה, כולל בקשות תמונות וסקריפטים.
- תקרות אורך חיים בדפדפנים מסוימים. Intelligent Tracking Prevention של Safari מגביל עוגיות שנוצרו דרך JavaScript לאורך חיים מרבי של שבעה ימים. עוגיות שהשרת שלך קובע בתגובת HTTP זוכות בדרך כלל ליחס נדיב יותר, אם כי יש חריגים.
אפשרות 2: localStorage ואחסון דפדפן אחר
חלק מה-CMP שומרים העדפות מפורטות ב-localStorage, לפעמים לצד עוגייה קטנה יותר.
חוזקות
- יותר מקום. כמה מגה-בייטים לכל origin, מספיק לבחירות מפורטות ברמת הספק.
- בלי תקורת בקשות. שום דבר לא נשלח אוטומטית לשרת.
חולשות
- בלתי נראה לשרת. קוד בצד השרת ולוגיקת קצה לא יכולים לקרוא אותו, ולכן כל החלטה בצד השרת צריכה לחכות לדפדפן.
- קשור ל-origin אחד. אחסון ב-www.example.com אינו זמין ב-shop.example.com, ולכן מבקר עשוי לראות את הבאנר שוב בכל תת-דומיין.
- נתון למחיקה. Safari יכול להסיר אחסון שסקריפט יכול לכתוב אליו, כולל localStorage, עבור אתרים שהמשתמש לא קיים איתם אינטראקציה שבעה ימי שימוש בדפדפן, ומצבי גלישה פרטית מנקים אותו בדרך כלל בסוף הסשן.
אפשרות 3: רשומות הסכמה בצד השרת
רשומה בצד השרת היא ערך ששומרים אתה או ספק ה-CMP שלך בכל פעם שנעשית בחירה. היא מכילה בדרך כלל מזהה פסאודונימי, חותמת זמן, את הבחירות, את גרסת הבאנר או המדיניות שהוצגה והקשר כמו אזור.
חוזקות
- ראיה עמידה. היא שורדת ניקוי עוגיות והגבלות דפדפן, מה שהופך אותה לכלי המתאים להוכחה שהתקבלה הסכמה.
- ניתנת לביקורת. אפשר להפיק דוחות על בחירות לאורך זמן ולענות על שאלות לגבי אירועים מסוימים.
- פוטנציאל בין מכשירים. עבור קוראים מחוברים, רשומה בשרת יכולה לסנכרן בחירות בין מכשירים, אם תסביר להם זאת.
חולשות
- אינה תחליף למצב מקומי. תגיות בדפדפן עדיין צריכות אות מקומי ומהיר; פנייה לשרת בכל צפייה בעמוד כדי לחפש הסכמה מוסיפה השהיה.
- היא עצמה נתונים אישיים. רשומות צריכות תקופת שמירה, בקרות גישה ומקום בהודעת הפרטיות.
- תלות במזהה. מבקרים אנונימיים ניתנים להתאמה לרשומה רק דרך מזהה ששמור במכשיר שלהם, מה שמחזיר אותך לאחסון מקומי.
סיכום זה לצד זה
- הטוב ביותר לזכירת הבחירה באינטרנט: עוגיות first-party, רצוי כאלה שהשרת שלך קובע עם אורך חיים יציב.
- הטוב ביותר לנתוני העדפות מפורטים בדפדפן: localStorage, בצמד עם עוגייה שהשרת יכול לקרוא.
- הטוב ביותר להוכחת הבחירה: רשומות בצד השרת.
- הבחירה הגרועה ביותר באפשרות בודדת: הסתמכות על localStorage בלבד, שמשאיר את השרת עיוור והבחירה שברירית בדפדפנים מסוימים.
גישה משולבת מעשית
- שמור את האות המקומי הסמכותי — למשל מחרוזת ה-TCF ורשומת העדפות קומפקטית — בעוגיית first-party שתחומה לדומיין הרשום שלך.
- השתמש ב-localStorage רק לנתונים משלימים שאינם צריכים להגיע לשרת.
- כתוב רשומה בצד השרת לכל בחירה, כולל גרסת הבאנר והמדיניות שהוצגו.
- אם בחירה שמורה נעלמת, הצג את הבאנר שוב במקום להניח תשובה קודמת.
- קבע תקופה להצגה חוזרת של בחירות שמורות ותעד אותה במדיניות שלך.
שמירת בחירת ההסכמה של המבקר עצמה נחשבת בדרך כלל כנחוצה לאספקת השירות שהמבקר ביקש — זכירת ההחלטה שלו — אך בדוק את ההנחיות החלות בשווקים העיקריים שלך.
עיקרי הדברים
- לזכור בחירה ולהוכיח בחירה הן משימות שונות שדורשות אחסון שונה.
- עוגיות ניתנות לקריאה על ידי השרת ולשיתוף בין תת-דומיינים, אך מוגבלות בגודל, וב-Safari גם באורך חיים כשהן נקבעות על ידי סקריפט.
- localStorage מציע מקום אך בלתי נראה לשרת ויכול להימחק על ידי דפדפנים.
- רשומות בצד השרת הן שכבת הראיות, לא תחליף לאות מקומי.
- שלב עוגיית first-party שהשרת קובע, אחסון דפדפן אופציונלי ורשומות שרת.