การกําหนดความถี่สูงสุดเป็นแนวทางปฏิบัติด้านการโฆษณาที่จํากัดจํานวนโฆษณาจากหมวดหมู่หนึ่งๆ ที่แสดงต่อผู้ใช้ภายในระยะเวลาหนึ่งๆ การกําหนดความถี่สูงสุดช่วยปรับปรุงประสบการณ์ของผู้ใช้ปลายทางด้วยการแสดงโฆษณาที่หลากหลายและน่าสนใจอยู่เสมอ รวมถึงช่วยผู้ลงโฆษณาจัดการการใช้จ่ายค่าโฆษณา
ข้อเสนอนี้อธิบายวิธีใช้ Protected Audience ใน Android เพื่อใช้ฟังก์ชันการกำหนดความถี่สูงสุดอย่างถูกต้องและรักษาความเป็นส่วนตัว
Protected Audience ใช้การกำหนดความถี่สูงสุดโดยรวม 2 ฟีเจอร์เข้าด้วยกัน ได้แก่ พื้นที่เก็บข้อมูลในอุปกรณ์สำหรับตัวนับเหตุการณ์เฉพาะโฆษณา และความสามารถในการกรองโฆษณาตามชุดกลยุทธ์ตัวกรองที่กำหนดไว้ล่วงหน้า การจำกัดความถี่สูงสุดช่วยให้ผู้ลงโฆษณาระบุเกณฑ์ตัวนับจากผลรวมของค่าฮิสโตแกรมในช่วงระยะเวลาหนึ่งๆ ได้
ตัวนับจะมีความเฉพาะเจาะจงสำหรับชุดค่าผสมของโปรไฟล์อุปกรณ์ เทคโนโลยีโฆษณา และคำอธิบายของรายการควบคุมแต่ละชุด โฆษณาแต่ละรายการควรมีชุดคีย์ตัวนับไว้ใช้ในกรณีที่มีการบันทึกยอดดูหรือการแสดงผลของโฆษณา สําหรับคีย์แต่ละรายการ Protected Audience จะเก็บชุดตัวนับไว้ และตัวนับแต่ละตัวจะนับเหตุการณ์ทั้งหมดที่เกี่ยวข้องกับโฆษณาที่เกิดขึ้นภายในช่วงเวลาที่เฉพาะเจาะจง ระบบจะเพิ่มตัวนับในอุปกรณ์เมื่อมีการแสดงผลหรือการดูเกิดขึ้น และข้อมูลตัวนับจะยังคงอยู่ในอุปกรณ์ เราจะกำหนดเวลาคงที่ที่แน่นอนในภายหลัง
ตรรกะการกรองโฆษณาในเวิร์กโฟลว์การเลือกโฆษณาของกลุ่มเป้าหมายที่ได้รับการปกป้องมีสิทธิ์เข้าถึงตัวนับ โฆษณารีมาร์เก็ตติ้ง และโฆษณาตามบริบท ซึ่งช่วยให้การกำหนดความถี่สูงสุดของกลุ่มเป้าหมายที่ได้รับการปกป้องสามารถทำงานร่วมกับคำขอโฆษณาประเภทดังกล่าวทั้งหมดได้
หมายเหตุ: การกรองโฆษณาใช้ได้ใน Privacy Sandbox บน Android เท่านั้น การใช้งานกลุ่มเป้าหมายที่ได้รับการคุ้มครองของ Chrome ไม่ได้ใช้กลไกในการกรองโฆษณาที่ไม่ใช่กลุ่มเป้าหมายที่ได้รับการคุ้มครองซึ่งกําหนดเป้าหมายตามบริบท ข้อเสนอนี้ครอบคลุมการสนับสนุนฝั่งซื้อเท่านั้น หากมีดีมานด์ เราจะเพิ่มการสนับสนุนฝั่งผู้ขายในภายหลัง
การจำกัดความถี่ของกลุ่มเป้าหมายที่ได้รับการคุ้มครองรองรับข้อกําหนดต่างๆ มากมาย ซึ่งรวมถึง
- การกรองแบบเรียลไทม์โดยมีความล่าช้าฝั่งเซิร์ฟเวอร์น้อยที่สุดเมื่อมีการอัปเดตตัวนับในอุปกรณ์
- ลําดับชั้นของคีย์ที่ยืดหยุ่น ซึ่งรวมถึงโฆษณาแต่ละรายการ แคมเปญ หรือการจัดกลุ่มอื่นๆ
- สอดคล้องกับวิธีการกําหนดความถี่สูงสุดอื่นๆ โดยที่ไม่ต้องใช้ 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 มีประสิทธิภาพสูงสุด
ส่งโฆษณารีมาร์เก็ตติ้งมากพอ
เพิ่มประสิทธิภาพโฆษณารีมาร์เก็ตติ้งต่อผู้ใช้ไม่ได้ หากผู้ใช้เห็นโฆษณาจํานวนมากจากกลุ่มเป้าหมายที่กําหนดเองและจํานวนโฆษณามีจํากัดต่ำ ระบบอาจกรองโฆษณาทั้งหมดออก ระบบจะรีเฟรชโฆษณารีมาร์เก็ตติ้งเป็นระยะ ดังนั้นพื้นที่โฆษณาที่เพียงพอควรผ่านการกำหนดความถี่สูงสุดเพื่อให้โฆษณารีมาร์เก็ตติ้งแสดงต่อไป ข้อมูลนี้ต้องสอดคล้องกับข้อจํากัดด้านขนาดของโฆษณาที่ระบุได้ในระหว่างการเรียกใช้ joinCustomAudience
และระหว่างการอัปเดตกลุ่มเป้าหมายที่กําหนดเองรายวัน ผู้ซื้อต้องทราบว่าอาจเกิดความล่าช้าเพิ่มขึ้นในระยะการเสนอราคา ระบบจะกรองการจำกัดความถี่ก่อนการเรียกใช้ generateBid
เพื่อลดผลกระทบจากปัญหาเหล่านี้
เก็บตัวนับตามบริบทไว้ในเซิร์ฟเวอร์
การประมาณฝั่งเซิร์ฟเวอร์ช่วยให้นักพัฒนาแอปทราบค่าประมาณคร่าวๆ ว่าเมื่อใดที่อาจมีการจำกัดความถี่ การประมาณเหล่านี้อาจบ่งชี้ว่าโฆษณามีแนวโน้มที่จะถึงเกณฑ์ความถี่สูงสุด จึงควรส่งพร้อมกับผู้สมัครโฆษณาจำนวนมากขึ้นหรือถูกนําออกโดยสิ้นเชิง
ส่งผู้สมัครโฆษณาหลายรายการในการตอบสนองตามบริบท
คุณควรส่งผู้สมัครโฆษณาหลายรายการที่มีการตอบสนองตามบริบทก่อนการประมูลกลุ่มเป้าหมายที่ได้รับการคุ้มครอง วิธีนี้ช่วยให้มั่นใจได้ว่าหากมีการกรองโฆษณาหลายรายการออก โฆษณาอื่นๆ จะยังคงแสดงอยู่ คุณสามารถจัดลําดับความสําคัญของโฆษณาเพื่อให้มีโฆษณาบางส่วนแสดงเป็นโฆษณาสํารอง
เนื่องจากการแสดงโฆษณามีเวลาจำกัด คุณจึงควรเลือกผู้สมัครโฆษณาตามแนวโน้มที่จะชนะการประมูลและไม่ถูกกรองออก
ข้อจำกัด
ข้อจํากัดที่ทราบเกี่ยวกับการจํากัดความถี่ของกลุ่มเป้าหมายที่ได้รับการคุ้มครองมีดังนี้
- การจำกัดความถี่สูงสุดของกลุ่มเป้าหมายที่ได้รับการคุ้มครองจะทำงานในระดับโปรไฟล์ผู้ใช้ของอุปกรณ์ โดยไม่มีตัวนับที่แชร์ในอุปกรณ์และโปรไฟล์อื่นๆ คุณต้องรวมโฆษณาที่เพิ่มขึ้นซึ่งแสดงจากอุปกรณ์อื่นๆ ด้วยตนเอง หากจําเป็น
- ระบบจะจัดเก็บและเข้าถึงตัวนับของอุปกรณ์ในอุปกรณ์ ต้องจัดการตัวนับฝั่งเซิร์ฟเวอร์แยกต่างหาก
- เนื่องจากระบบจะประมวลผลการกำหนดความถี่สูงสุดและการกรองโฆษณาที่เกี่ยวข้องในอุปกรณ์ แพลตฟอร์มเทคโนโลยีโฆษณาจึงไม่สามารถควบคุมการดำเนินการเหล่านี้ได้โดยตรง หากต้องการข้ามเกณฑ์ความถี่สูงสุดของอุปกรณ์ แพลตฟอร์มเทคโนโลยีโฆษณาสามารถส่งโฆษณาที่มีโอกาสแสดงหลายรายการพร้อมตัวกรองที่แตกต่างกัน
- ระบบไม่รองรับการปรับราคาเสนอตามความถี่ที่บันทึกไว้ ฟังก์ชัน
generateBid
จะดูตัวนับความถี่ไม่ได้
แนะนำสำหรับคุณ
- หมายเหตุ: ข้อความลิงก์จะแสดงเมื่อ JavaScript ปิดอยู่
- กลุ่มเป้าหมายที่ได้รับการคุ้มครอง: คู่มือการผสานรวม คู่มือนักพัฒนาแอปเกี่ยวกับ Protected Audience API ใน Android
- รองรับการกำหนดกลุ่มเป้าหมายที่กำหนดเองด้วย Protected Audience API