การกำหนดความถี่สูงสุดคือแนวทางปฏิบัติในการโฆษณาที่จำกัดจำนวนโฆษณาจาก หมวดหมู่หนึ่งๆ ที่แสดงต่อผู้ใช้ภายในระยะเวลาที่กำหนด การกำหนดความถี่สูงสุดช่วยปรับปรุงประสบการณ์ของผู้ใช้ปลายทางโดยการทำให้การแสดงโฆษณาสดใหม่และน่าสนใจอยู่เสมอ รวมถึงช่วยให้ผู้ลงโฆษณาจัดการการใช้จ่ายโฆษณาได้
ข้อเสนอนี้จะแนะนําวิธีใช้ Protected Audience ใน Android เพื่อ ใช้ฟังก์ชันการกำหนดความถี่สูงสุดได้อย่างถูกต้องและรักษาความเป็นส่วนตัว
Protected Audience ใช้การกำหนดความถี่สูงสุดโดยการรวมฟีเจอร์ 2 อย่าง ได้แก่ ที่เก็บข้อมูลในอุปกรณ์ของตัวนับสำหรับเหตุการณ์ที่เฉพาะเจาะจงของโฆษณา และความสามารถในการกรองโฆษณาตามชุดกลยุทธ์การกรองที่กำหนดไว้ล่วงหน้า การกำหนดความถี่สูงสุด ช่วยให้ผู้ลงโฆษณาระบุเกณฑ์ตัวนับเหนือผลรวมของค่าฮิสโตแกรม ในช่วงระยะเวลาหนึ่งๆ ได้
ตัวนับจะไม่ซ้ำกันสำหรับชุดค่าผสมของโปรไฟล์อุปกรณ์ เทคโนโลยีโฆษณา และคีย์ตัวนับแต่ละชุด โฆษณาแต่ละรายการควรมีชุดคีย์ตัวนับเพื่อใช้ในกรณีที่มีการลงทะเบียนการดูหรือ การแสดงผลสำหรับโฆษณา สำหรับคีย์แต่ละรายการ กลุ่มเป้าหมายที่ได้รับการปกป้องจะจัดเก็บ ชุดตัวนับ และตัวนับแต่ละรายการจะรวบรวมเหตุการณ์ที่เฉพาะเจาะจงสำหรับโฆษณาทั้งหมดที่เกิดขึ้น ภายในช่วงเวลาที่เฉพาะเจาะจง ระบบจะเพิ่มตัวนับในอุปกรณ์เมื่อมีการแสดงผลหรือการดู และจะเก็บข้อมูลตัวนับไว้ในอุปกรณ์ ระบบจะกำหนดเวลาคงอยู่แบบแน่นอนในภายหลัง
ตรรกะการกรองโฆษณาในเวิร์กโฟลว์การเลือกโฆษณาของ Protected Audience มีสิทธิ์เข้าถึงตัวนับ โฆษณารีมาร์เก็ตติ้ง และโฆษณาตามบริบท ซึ่งทำให้การจำกัดความถี่ของ Protected Audience ทำงานร่วมกับคำขอโฆษณาทุกประเภทดังกล่าวได้
หมายเหตุ: การกรองโฆษณาใช้ได้เฉพาะใน Privacy Sandbox บน Android เท่านั้น การติดตั้งใช้งาน Protected Audience ของ Chrome ไม่ได้ใช้กลไกในการกรองโฆษณาที่ไม่ใช่ Protected Audience ที่กำหนดเป้าหมายตามบริบท ข้อเสนอนี้ครอบคลุมเฉพาะการสนับสนุนฝั่งซื้อ หากมีความต้องการ เราจะเพิ่มการรองรับฝั่งผู้ขาย ในภายหลัง
การกำหนดความถี่สูงสุดของ Protected Audience รองรับข้อกำหนดที่หลากหลาย ซึ่งรวมถึง
- การกรองแบบเรียลไทม์โดยมีความล่าช้าฝั่งเซิร์ฟเวอร์น้อยที่สุดเมื่ออัปเดตตัวนับในอุปกรณ์
- ลำดับชั้นของคีย์ที่ยืดหยุ่น ซึ่งรวมถึงโฆษณาแต่ละรายการ แคมเปญ หรือการจัดกลุ่มอื่นๆ
- สอดคล้องกับวิธีการกำหนดความถี่สูงสุดอื่นๆ โดยไม่ต้องขึ้นอยู่กับ AdID
- ใช้ได้ในแอปต่างๆ ในโปรไฟล์ผู้ใช้อุปกรณ์ที่กำหนด
- เคาน์เตอร์ที่ถูกต้องและสมบูรณ์
- รองรับคําจํากัดความที่กําหนดเองของเหตุการณ์โฆษณา เช่น การดูหรือการแสดงผล
- ฟังก์ชันเดียวสำหรับทั้งโฆษณารีมาร์เก็ตติ้งและโฆษณาตามบริบท
หากต้องการตั้งค่าการกำหนดความถี่สูงสุด ให้ทำตามขั้นตอนต่อไปนี้
ขั้นตอนที่ 1: เพิ่มข้อมูลการกำหนดความถี่สูงสุดลงในโฆษณา
โฆษณาตามบริบทและรีมาร์เก็ตติ้งจะระบุตัวนับฮิสโทแกรมที่เกี่ยวข้องเพื่ออัปเดตในกรณีที่มีการดูหรือการแสดงผลโดยใช้ฟิลด์ ad_counter_keys ซึ่งมีรายการจำนวนเต็มแบบสุ่ม ฟิลด์นี้ไม่ได้รวมอยู่ในฟิลด์
metadataที่ Protected Audience ไม่ได้แยกวิเคราะห์
ตัวอย่างต่อไปนี้แสดงรูปแบบข้อมูลสำหรับฟิลด์ adsData ใน AdSelectionConfig สําหรับรีมาร์เก็ตติ้ง รูปแบบของรายการโฆษณาสําหรับกลุ่มเป้าหมายที่กําหนดเอง
ที่ระบุจะสอดคล้องกับเนื้อหาของฟิลด์ ads ที่แสดงใน
ตัวอย่างต่อไปนี้
'adsData': [
{
"buyer": "ads.example.com",
"ads": [
{
'render_url': 'exampleUrl',
'metadata': {...}, /* metadata are opaque to Protected Audience are
required to be in valid JSON format */
'ad_counter_keys': [1234, 5678]
}]
}]
}
ขั้นตอนที่ 2: ลงทะเบียนการดูหรือการแสดงผล
เทคโนโลยีโฆษณาสามารถเรียกใช้เมธอด updateAdCounterHistogram เพื่อลงทะเบียน
เหตุการณ์ที่ใช้สำหรับการกำหนดความถี่สูงสุด เรียกใช้เมธอดซ้ำๆ ในเหตุการณ์เดียวกันสำหรับคีย์ที่ระบุในeventTypeของโฆษณาที่ชนะได้
void updateAdCounterHistogram(@EventType eventType, long adSelectionId)
อินพุต:
eventType: ระบุว่าระบบนับเหตุการณ์เป็นการดู การแสดงผล การคลิก หรือการชนะกระบวนการเลือกโฆษณาadSelectionId: ค่ารหัสในออบเจ็กต์AdSelectionOutcomeที่เรียกใช้selectAdsจะแสดงผล
การเรียก updateAdCounterHistogram จะอัปเดตฮิสโทแกรมสำหรับชุดคีย์
ที่กำหนดเป็นส่วนหนึ่งของโฆษณารีมาร์เก็ตติ้งที่ดึงข้อมูลโดย CustomAudience หรือ
โฆษณาตามบริบทที่รวมอยู่ในพารามิเตอร์ AdSelectionConfig สำหรับ
selectAds
หากคุณสมมติว่าโฆษณาในขั้นตอนที่ 1 เป็นผู้ชนะของ AdSelection ที่มี
idค่าเท่ากับ 9999 การเรียกไปยัง
updateAdCounterHistogram(FrequencyCapFilters.AD_EVENT_TYPE_VIEW,
adSelectionId: 999) จะเพิ่มตัวนับสำหรับคีย์หลัก 3 รายการต่อไปนี้
{'ads.example.com', 1234, VIEW}{'ads.example.com', 5678, VIEW}
ชื่อเทคโนโลยีโฆษณาจะมาจากฟิลด์ผู้ซื้อ ไม่ว่าจะเป็นจากโฆษณาตามบริบทหรือจากกลุ่มเป้าหมายที่กำหนดเอง ทั้งนี้ขึ้นอยู่กับว่าโฆษณาที่ชนะมาจากที่ใด
Protected Audience สำหรับ Android จะเพิ่มตัวนับทั้งหมดโดยอัตโนมัติ
ที่กล่าวถึงก่อนหน้านี้สำหรับประเภทเหตุการณ์ FrequencyCapFilters.AD_EVENT_TYPE_WIN สำหรับ
โฆษณาที่แสดงผลโดยการเรียกใช้ selectAds API ซึ่งเทียบเท่ากับการเพิ่มอาร์กิวเมนต์ prev_wins ลงใน browser_signals ใน generateBid ในการติดตั้งใช้งาน Protected Audience ของ Chrome
ขั้นตอนที่ 3: กรองความถี่สูงสุดด้วยตัวกรอง
ฟังก์ชันการกรองความถี่สูงสุดจะดำเนินการภายใน
AdServicesเพื่อให้ได้ประสิทธิภาพสูงสุด Protected Audience จะเข้าใจว่าต้องกรองข้อความหรือไม่โดย
การอ่านฟิลด์ตัวกรองในออบเจ็กต์ AdsData ระบุรายการตัวกรองใน frequency_cap ระบบจะใช้ค่าสำหรับคีย์ event_type และ
interval_in_seconds เพื่อดึงข้อมูลฮิสโทแกรมของเหตุการณ์ที่ใช้
สำหรับการกรองและ Protected Audience
คุณระบุข้อมูลการกรองสำหรับโฆษณารีมาร์เก็ตติ้งที่จัดทำโดยกลุ่มเป้าหมายที่กำหนดเองและสำหรับโฆษณาตามบริบทได้โดยเป็นส่วนหนึ่งของออบเจ็กต์ AdSelectionConfig
สำหรับโฆษณาตามบริบทที่มีตัวกรองความถี่สูงสุด ระบบจะส่งโฆษณาโดยใช้ฟิลด์ ads
ในออบเจ็กต์ AdSelectionConfig ระบบจะกรองโฆษณา และส่งโฆษณาที่มี
ราคาเสนอสูงสุดกลับมาเป็นผลลัพธ์ของselectAds
สำหรับโฆษณารีมาร์เก็ตติ้งที่มีตัวกรองความถี่สูงสุด ระบบจะกรองโฆษณาก่อนที่จะเรียกใช้generateBid()ฟังก์ชัน JavaScript ที่ผู้ซื้อระบุ
ตัวอย่างต่อไปนี้แสดงข้อความที่มีการกรองความถี่สูงสุด
{
'render_url': 'url',
'metadata': {...}, /* metadata are opaque to Protected Audience and assumed
to be in valid JSON format */
'ad_counter_keys': [1234, 5678],
"filters": {
"frequency_cap": {
"view": [
{
"ad_counter_key": 1234
"max_count": 10,
"interval_in_seconds": 86400
},
{
"ad_counter_key": 5678
"max_count": 10,
"interval_in_seconds": 86400
},
],
"win": [
{
"ad_counter_key": 1234
"max_count": 5,
"interval_in_seconds": 604800
},
{
"ad_counter_key": 5678
"max_count": 5,
"interval_in_seconds": 345600
},
]
},
// This field is only required in contextual ads and is used in
// reportImpression calls to fetch the reportWin function.
'reportingJS': "https://ads.example.com?reportWin.js"
}
ขั้นตอนที่ 4: รายงานเกี่ยวกับโฆษณาที่ชนะ
เมื่อกระบวนการเลือกโฆษณาเสร็จสมบูรณ์แล้ว ระบบจะแสดงผลAdSelectionOutcome
ออบเจ็กต์ที่มี renderUri และ adSelectionId ซึ่งเป็นตัวระบุตัวเลขสำหรับ
การเรียก selectAds คุณสามารถใช้รหัสนี้เพื่อเรียกใช้ reportImpression API
ที่รองรับการรายงานระดับเหตุการณ์ ในเบต้า 1 วิธีนี้รองรับ
การรายงานสําหรับโฆษณารีมาร์เก็ตติ้ง และจะขยายการรองรับการรายงานสําหรับ
โฆษณาตามบริบทในการเปิดตัวครั้งต่อๆ ไป สําหรับโฆษณาตามบริบท ผู้ซื้อต้อง
ระบุตําแหน่งที่ดึงข้อมูลreportWinได้ในระหว่างการเรียกreportImpressionโดยใช้ฟิลด์เพิ่มเติมที่ชื่อ reportingJS ในโครงสร้างโฆษณา
ตามที่แสดงในตัวอย่างก่อนหน้า
แนวทางปฏิบัติแนะนำในการเลือกโฆษณาที่เหมาะสม
Protected Audience ย้ายการบังคับใช้การกำหนดความถี่สูงสุดจากเซิร์ฟเวอร์ไปยังอุปกรณ์ แม้ว่าระบบจะรายงานราคาเสนอที่ชนะด้วย Privacy Sandbox แต่นักพัฒนาแอปจะไม่ทราบสาเหตุที่โฆษณาไม่แสดง โฆษณาอาจไม่แสดงเนื่องจาก ราคาเสนอที่แพ้หรือเนื่องจากความถี่สูงสุด เนื่องจากไม่มีสิทธิ์เข้าถึงสาเหตุที่โฆษณาบางรายการไม่ชนะการประมูลอย่างเต็มที่ ระบบการเสนอราคาจึงต้องทำงานเพิ่มเติมเพื่อยืนยันว่า โฆษณาที่เหมาะสมที่สุดจะแสดง แนวทางปฏิบัติแนะนำเหล่านี้จะช่วยยืนยันการแสดงโฆษณาที่เหมาะสมที่สุด ด้วย Protected Audience API
ส่งโฆษณารีมาร์เก็ตติ้งให้เพียงพอ
ไม่สามารถเพิ่มประสิทธิภาพโฆษณารีมาร์เก็ตติ้งต่อผู้ใช้ได้ หากผู้ใช้เห็นโฆษณาจำนวนมากจากกลุ่มเป้าหมายที่กำหนดเองและโฆษณาถูกจำกัดในระดับต่ำ ระบบอาจกรองโฆษณาทั้งหมดออก ระบบจะรีเฟรชโฆษณารีมาร์เก็ตติ้งเป็นระยะ ดังนั้นควรมีพื้นที่โฆษณาเพียงพอ
ที่จะผ่านการจำกัดความถี่เพื่อให้ยืนยันได้ว่าโฆษณารีมาร์เก็ตติ้งจะแสดงต่อไป
ซึ่งต้องปรับสมดุลกับข้อจำกัดเกี่ยวกับขนาดของโฆษณาที่
ระบุได้ในระหว่างjoinCustomAudienceการเรียกใช้ และระหว่างการอัปเดตกลุ่มเป้าหมายที่กำหนดเองรายวัน
ผู้ซื้อต้องพิจารณาว่าอาจมีความหน่วงเพิ่มขึ้น
ในระหว่างระยะการเสนอราคา เพื่อลดผลกระทบของปัญหาเหล่านี้
ระบบจะกรองการจำกัดความถี่ก่อนที่จะเรียกใช้ generateBid
เก็บตัวนับตามบริบทไว้ในเซิร์ฟเวอร์
การประมาณฝั่งเซิร์ฟเวอร์ช่วยให้นักพัฒนาแอปทราบค่าประมาณคร่าวๆ เกี่ยวกับเวลาที่อาจมีการใช้งานการกำหนดความถี่สูงสุด การประมาณเหล่านั้นอาจบ่งชี้ว่าโฆษณาน่าจะถึงเกณฑ์ความถี่สูงสุดแล้ว จึงควรส่งโฆษณาพร้อมกับตัวเลือกโฆษณาอื่นๆ หรือไม่ก็ควรนำโฆษณาออกไปเลย
ส่งโฆษณาหลายรายการในคำตอบตามบริบท
คุณควรส่งโฆษณาหลายรายการพร้อมการตอบกลับตามบริบทก่อน การประมูลที่ใช้ Protected Audience API ซึ่งจะยืนยันว่าหากมีการกรองโฆษณาหลายรายการออก โฆษณาอื่นๆ จะยังคงแสดงอยู่ คุณสามารถจัดลำดับความสำคัญของผู้ลงโฆษณาเพื่อให้โฆษณาบางรายการ แสดงเป็นโฆษณาสำรองได้
เนื่องจากการดำเนินการมีกรอบเวลาที่จำกัด จึงควรเลือกโฆษณาที่คาดว่าจะชนะการประมูลและไม่ถูกกรองออก
ข้อจำกัด
ข้อจำกัดที่ทราบของการจำกัดความถี่สูงสุดของ Protected Audience มีดังนี้
- การกำหนดความถี่สูงสุดของ Protected Audience API จะทำงานที่ระดับโปรไฟล์ผู้ใช้อุปกรณ์ โดยไม่มีตัวนับที่แชร์ในอุปกรณ์อื่นๆ และโปรไฟล์อื่นๆ คุณต้องรวมการเพิ่มขึ้นของโฆษณาที่แสดงจากอุปกรณ์อื่นๆ ด้วยตนเอง หากจำเป็น
- ระบบจะจัดเก็บและเข้าถึงตัวนับอุปกรณ์ในอุปกรณ์ ต้องจัดการตัวนับฝั่งเซิร์ฟเวอร์ แยกต่างหาก
- เนื่องจากระบบจะประมวลผลการจำกัดความถี่และการกรองโฆษณาที่เกี่ยวข้องในอุปกรณ์ แพลตฟอร์มเทคโนโลยีโฆษณาจึงไม่มีสิทธิ์ควบคุมการดำเนินการเหล่านี้โดยตรง แพลตฟอร์มเทคโนโลยีโฆษณาสามารถส่งโฆษณาผู้สมัครหลายรายการที่มีตัวกรองต่างกันเพื่อข้ามเกณฑ์ความถี่สูงสุดของอุปกรณ์
- ระบบไม่รองรับการปรับราคาเสนอตามความถี่ที่บันทึกไว้ ฟังก์ชัน
generateBidจะดูตัวนับความถี่ไม่ได้
แนะนำสำหรับคุณ
- หมายเหตุ: ข้อความลิงก์จะแสดงเมื่อ JavaScript ปิดอยู่
- Protected Audience: คู่มือการผสานรวม คู่มือนักพัฒนาซอฟต์แวร์ Protected Audience API ใน Android
- รองรับการกำหนดกลุ่มเป้าหมายแบบกำหนดเองด้วย Protected Audience API