ผู้ลงโฆษณาส่วนใหญ่ทำงานร่วมกับเครือข่ายโฆษณาหลายเครือข่ายเพื่อแสดงโฆษณาในแอปของผู้เผยแพร่โฆษณา หากเครือข่ายโฆษณาระบุแหล่งที่มาของการระบุแหล่งที่มาและทริกเกอร์ของตนเองด้วย API เครือข่ายจะได้รับรายงานเหตุการณ์และรายงานสรุปที่ระบุแหล่งที่มาเอง
อย่างไรก็ตาม ผู้ลงโฆษณาที่ต้องการใช้บุคคลที่สามเพื่อทำการระบุแหล่งที่มาแบบข้ามเครือข่าย (XNA) เพื่อระบุโฆษณาที่ชนะเพียงรายการเดียวสําหรับ Conversion ที่กําหนดสามารถทําต่อไปได้โดยใช้เทคนิคต่อไปนี้
- ตั้งค่าเซิร์ฟเวอร์ภายในเพื่อลงทะเบียนเหตุการณ์ทริกเกอร์และรับรายงานการระบุแหล่งที่มาจาก API
- ใช้พาร์ทเนอร์การวัดผลบนอุปกรณ์เคลื่อนที่ที่มีอยู่ต่อไป
ไม่ว่าผู้ลงโฆษณาจะเลือกใช้เทคนิคใด Attribution Reporting API ก็รองรับฟีเจอร์ต่างๆ มากมายที่ช่วยให้บุคคลที่สามปรับแต่งตรรกะ XNA ในนามของผู้ลงโฆษณาได้ ดังนี้
- บุคคลที่สามสามารถทําการระบุแหล่งที่มาด้วย API โดยหรือไม่มีการเปลี่ยนเส้นทางจากเครือข่ายโฆษณา
- คีย์ลำดับความสำคัญ ตัวกรอง และการขจัดข้อมูลที่ซ้ำกันจะช่วยให้ปรับแต่งการระบุแหล่งที่มาเพิ่มเติมได้ตามมิติข้อมูลแหล่งที่มาและทริกเกอร์
- กรอบเวลาการระบุแหล่งที่มาหลังการติดตั้งช่วยให้แหล่งที่มาที่กระตุ้นการติดตั้งได้รับเครดิตสำหรับเหตุการณ์ Conversion ในแอปในอนาคตต่อไป
รูปแบบการระบุแหล่งที่มาที่เทคโนโลยีโฆษณาใช้สำหรับการขจัดข้อมูลที่ซ้ำกันในเครือข่ายและการเลือกแหล่งที่มาที่ชนะอาจมีความซับซ้อนในระดับต่างๆ กัน ขึ้นอยู่กับวิธีใช้ประโยชน์จากฟีเจอร์ API เหล่านี้
ตัวอย่างต่อไปนี้แสดงสถานการณ์วิธีใช้ฟีเจอร์เหล่านี้ และการกำหนดค่าต่างๆ มีผลต่อแหล่งที่มาของการระบุแหล่งที่มาที่ได้รับเครดิตในท้ายที่สุดสำหรับเหตุการณ์ทริกเกอร์ที่กำหนดอย่างไร
กระบวนการ
รายการต่อไปนี้จะอธิบายขั้นตอนของกระบวนการ XNA เพื่อให้ง่ายขึ้น ขั้นตอนที่ระบุไว้ที่นี่จะอิงตามโมเดลที่ผู้ลงโฆษณาใช้เทคโนโลยีโฆษณาเพื่อการแสดงผลในการแสดงโฆษณา และ MMP สำหรับการวัด Conversion อย่างไรก็ตาม การออกแบบ API นั้นยืดหยุ่น โดยฟังก์ชันการทำงานจะไม่แตกต่างกันในเทคโนโลยีโฆษณาประเภทต่างๆ และไม่จำเป็นต้องใช้เทคโนโลยีโฆษณา
- การลงทะเบียนแหล่งที่มา: ผู้ใช้ดูหรือคลิกโฆษณา และเทคโนโลยีโฆษณาที่แสดงจะลงทะเบียนแหล่งที่มาเหล่านี้กับ API เทคโนโลยีโฆษณาที่แสดงอาจเปลี่ยนเส้นทางไปยังเทคโนโลยีโฆษณารายอื่นที่ลงทะเบียนแหล่งที่มากับ API ได้โดยตรง หรือเปิดใช้การระบุแหล่งที่มาข้ามเครือข่ายโดยไม่มีการเปลี่ยนเส้นทาง
- การลงทะเบียนทริกเกอร์: ผู้ใช้ทํา Conversion ที่เชื่อมโยงกับการกระทํา เช่น การเปิดแอปครั้งแรก การซื้อ หรือการเพิ่มลงในรถเข็น จากนั้น MMP จะลงทะเบียนทริกเกอร์กับ API นอกจากนี้ MMP ยังอาจเปลี่ยนเส้นทางไปยังเทคโนโลยีโฆษณารายอื่นๆ ที่ลงทะเบียนทริกเกอร์กับ API ได้โดยตรง หาก MMP ต้องการเปิดใช้การระบุแหล่งที่มาข้ามเครือข่ายโดยไม่มีการเปลี่ยนเส้นทาง จะต้องระบุการกำหนดค่าการระบุแหล่งที่มาในระหว่างการลงทะเบียนทริกเกอร์
- การระบุแหล่งที่มา: หากมีการระบุการกำหนดค่าการระบุแหล่งที่มาระหว่างการลงทะเบียนทริกเกอร์ ระบบจะสร้างแหล่งที่มาที่ได้มาในนามของ MMP ระบบจะพยายามจับคู่ทริกเกอร์แต่ละรายการกับแหล่งที่มาที่มีสิทธิ์ซึ่ง MMP จดทะเบียนโดยตรง หรือแหล่งที่มาที่ได้มาซึ่งมีสิทธิ์ซึ่งสร้างขึ้นในนามของ MMP โดยใช้แหล่งที่มาของเทคโนโลยีโฆษณาที่ใช้ในการแสดงโฆษณา แหล่งที่มาที่เหลือซึ่งไม่ได้รับการระบุแหล่งที่มาจะถูกทิ้ง และจะไม่มีสิทธิ์ได้รับการระบุแหล่งที่มาสำหรับ Conversion ในอนาคตอีกต่อไป คุณอาจเห็นข้อความนี้ในส่วนอื่นๆ ของเอกสารประกอบว่า "สูญเสียครั้งเดียว สูญเสียตลอดไป"
- เมื่อแหล่งที่มาที่ได้มาสูญเสียการระบุแหล่งที่มา API จะไม่สร้างแหล่งที่มาที่ได้มาในอนาคตโดยอิงตามแหล่งที่มาเดิมเมื่อ MMP ลงทะเบียนเหตุการณ์ Conversion ในอนาคต เทคโนโลยีโฆษณาที่แสดงและ MMP อื่นๆ อาจยังคงใช้แหล่งที่มาเดิมสำหรับการระบุแหล่งที่มาในอนาคต ซึ่งอธิบายไว้อย่างละเอียดในสถานการณ์ที่ 6
- การสร้างรายงาน: การระบุแหล่งที่มาทําให้เกิดการสร้างรายงานเหตุการณ์หรือรายงานแบบรวม โปรดทราบว่าระบบจะสร้างเฉพาะรายงานรวมสำหรับแหล่งที่มาที่ได้มา
- การนำส่งรายงาน: ระบบจะตั้งเวลาการนำส่งรายงานที่สร้างขึ้น
สถานการณ์ที่ 1: การระบุแหล่งที่มาข้ามเครือข่ายด้วยการเปลี่ยนเส้นทาง
ผู้ลงโฆษณารายหนึ่งทำงานร่วมกับเทคโนโลยีโฆษณาที่แสดง 2 รายการและ MMP 1 รายการ เมื่อมีการคลิกโฆษณาที่แสดงโดยเทคโนโลยีโฆษณาที่แสดง เทคโนโลยีโฆษณาที่แสดงจะเปลี่ยนเส้นทางไปยัง MMP เมื่อลงทะเบียนแหล่งที่มา เมื่อผู้ใช้ทํา Conversion ในแอป MMP จะเปลี่ยนเส้นทางไปยังเทคโนโลยีโฆษณาเมื่อลงทะเบียนทริกเกอร์
MMP จะได้รับรายงานที่กรองข้อมูลที่ซ้ำกันในเครือข่าย และเทคโนโลยีโฆษณาแต่ละรายการที่แสดงโฆษณาจะได้รับรายงานที่ระบุแหล่งที่มาด้วยตนเอง
ไทม์ไลน์การลงทะเบียน
ที่ t0 ผู้ใช้คลิกโฆษณาที่แสดงโดย ad-tech1 ซึ่งลงทะเบียนแหล่งที่มา Source1 พร้อมกับแหล่งที่มาเปลี่ยนเส้นทาง Source2 โดย mmp-ad-tech:
"Attribution-Reporting-Register-Source": {
"source_event_id": "34532",
"web_destination": "https://destination.example.com",
"priority": "10",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x1"
}
},
"Attribution-Reporting-Redirect": [
"https://www.mmp-ad-tech.com/source2"
]
// Registered by mmp-ad-tech using redirects
"Attribution-Reporting-Register-Source": {
"source_event_id": "788324",
"web_destination": "https://destination.example.com",
"priority": "30",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x2",
"geoValue": "0x102"
}
}
ที่ t1 ผู้ใช้คลิกโฆษณาที่แสดงโดย ad-tech2 เพื่อลงทะเบียน Source3 พร้อมการเปลี่ยนเส้นทางไปยัง mmp-ad-tech (Source4)
"Attribution-Reporting-Register-Source": {
"source_event_id": "6574435",
"web_destination": "https://destination.example.com",
"priority": "10",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x3"
}
},
"Attribution-Reporting-Redirect": [
"https://www.mmp-ad-tech.com/source"
]
// Registered by mmp-ad-tech using redirects
"Attribution-Reporting-Register-Source": {
"source_event_id": "4532343",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x4"
}
}
ที่ t2 การกระทําหรือ Conversion ของผู้ใช้ในแอปของผู้ลงโฆษณาจะทําให้ mmp-ad-tech (ทริกเกอร์ 1) ลงทะเบียนทริกเกอร์ ซึ่งจะเปลี่ยนเส้นทางไปยัง ad-tech1 (ทริกเกอร์ 2) และ ad-tech2 (ทริกเกอร์ 3) ด้วย
ไม่ได้กำหนด
ผลลัพธ์
แหล่งที่มาที่ลงทะเบียน mmp-ad-tech Source2 และ Source4 แข่งขันกันในการระบุแหล่งที่มาสำหรับ ทริกเกอร์ที่ลงทะเบียน mmp-ad-tech Trigger1 Source2 ชนะ Source4 เนื่องจากมี ลำดับความสำคัญสูงกว่า Trigger2 โดย ad-tech1 ได้รับการระบุแหล่งที่มาเป็น Source1 โดย ad-tech1 และ Trigger3 โดย ad-tech2 ได้รับการระบุแหล่งที่มาเป็น Source3 โดย ad-tech2
แหล่งข้อมูลที่แข่งขันกันสำหรับ
ฟิลด์ |
Source1 |
Source2 |
Source3 |
Source4 |
เทคโนโลยีโฆษณาที่ลงทะเบียนแหล่งที่มา |
ad-tech1 |
mmp-ad-tech |
ad-tech2 |
mmp-ad-tech |
source_event_id |
34532 |
788324 |
6574435 |
4532343 |
ปลายทาง |
https://destination.example.com |
https://destination.example.com |
https://destination.example.com |
https://destination.example.com |
ลำดับความสำคัญ |
10 |
30 |
10 |
20 |
ทริกเกอร์ที่ลงทะเบียน
ผลลัพธ์การระบุแหล่งที่มา
แอตทริบิวต์ Trigger1 ไปยัง Source2, แอตทริบิวต์ Trigger2 ไปยัง Source1 และแอตทริบิวต์ Trigger3 ไปยัง Source3
การระบุแหล่งที่มาของโพสต์จากแหล่งที่มาที่ถูกละเว้น
Source4 - won't compete for attribution in future.
รายงานเหตุการณ์
URL รายงาน: https://www.mmp-ad-tech.com/.well-known/attribution-reporting/report-event-attribution
{
"attribution_destination": "https://destination.example.com",
"scheduled_report_time": "800176400",
"source_event_id": "788324",
"trigger_data": "1",
"source_type": "navigation",
"randomized_trigger_rate": 0.0024263
}
URL รายงาน: https://www.ad-tech1.com/.well-known/attribution-reporting/report-event-attribution
{
"attribution_destination": "https://destination.example.com",
"scheduled_report_time": "800176400",
"source_event_id": "34532",
"trigger_data": "2",
"source_type": "navigation",
"randomized_trigger_rate": 0.0024263
}
URL รายงาน: https://www.ad-tech2.com/.well-known/attribution-reporting/report-event-attribution
{
"attribution_destination": "https://destination.example.com",
"scheduled_report_time": "800176400",
"source_event_id": "6574435",
"trigger_data": "3",
"source_type": "navigation",
"randomized_trigger_rate": 0.0024263
}
รายงานสรุป
URL รายงาน: https://www.mmp-ad-tech.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"attribution_destination": "https://destination.example.com",
"histograms": [
{
"key": "0x104",
"value": 11
}
]
}
URL รายงาน: https://www.ad-tech1.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"attribution_destination": "https://destination.example.com",
"histograms": [
{
"key": "0x201",
"value": 21
}
]
}
URL รายงาน: https://www.ad-tech2.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"attribution_destination": "https://destination.example.com",
"histograms": [
{
"key": "0x303",
"value": 31
}
]
}
สถานการณ์ที่ 2: การระบุแหล่งที่มาข้ามเครือข่ายโดยไม่มีการเปลี่ยนเส้นทาง
ผู้ลงโฆษณารายหนึ่งทำงานร่วมกับเทคโนโลยีโฆษณาที่แสดง 2 รายการและ MMP 1 รายการ ผู้ใช้คลิกโฆษณาจากเทคโนโลยีโฆษณาที่แสดงเป็นครั้งแรก ซึ่งเปลี่ยนเส้นทางไปยัง MMP เมื่อลงทะเบียนแหล่งที่มา เมื่อผู้ใช้คลิกโฆษณาจากเทคโนโลยีโฆษณาที่แสดงครั้งที่ 2 เทคโนโลยีโฆษณาจะไม่เปลี่ยนเส้นทาง แต่จะเลือกแชร์ชุดคีย์การรวบรวมย่อยกับ MMP ล่วงหน้าแทน
จากนั้นผู้ใช้จะทำ Conversion ในแอปที่ MMP ลงทะเบียนทริกเกอร์ แต่ไม่ได้เปลี่ยนเส้นทางไปยังเทคโนโลยีโฆษณาทั้ง 2 ราย เทคโนโลยีโฆษณาที่ไม่เปลี่ยนเส้นทางจะได้รับการระบุแหล่งที่มาแบบการแตะต้องสุดท้าย เฉพาะ MMP เท่านั้นที่จะได้รับรายงานสรุปที่กรองข้อมูลที่ซ้ำกันข้ามเครือข่ายซึ่งรวม Conversion นี้
ไทม์ไลน์การลงทะเบียน
ที่ t0 ผู้ใช้คลิกโฆษณา ซึ่งส่งผลให้ ad-tech1 ลงทะเบียน Source1 และ mmp-ad-tech ลงทะเบียน Source2 โดยใช้การเปลี่ยนเส้นทางจาก ad-tech1
"Attribution-Reporting-Register-Source": {
"source_event_id": "234543",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172801",
"aggregation_keys": {
"campaignCounts": "0x159"
}
},
"Attribution-Reporting-Redirect": [
"http://www.mmp-ad-tech.com"
]
// Registered by mmp-ad-tech using redirect
"Attribution-Reporting-Register-Source": {
"source_event_id": "45453",
"web_destination": "https://destination.example.com",
"priority": "100",
"expiry": "172801",
"aggregation_keys": {
"campaignCounts": "0x159",
"geoValue": "0x5",
}
}
ที่ t1 ผู้ใช้คลิกโฆษณาอื่น ส่งผลให้เกิด Source3 โดย ad-tech2 ซึ่งแชร์คีย์การรวบรวม
// Registered by ad-tech2
"Attribution-Reporting-Register-Source": {
"source_event_id": "978",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172801",
"aggregation_keys": {
"campaignCounts": "0x159",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts"
]
}
ที่ t2 การกระทำ/Conversion ของผู้ใช้จะทําให้เกิดการลงทะเบียนทริกเกอร์โดย mmp-ad-tech ซึ่งมีการกําหนดค่าการระบุแหล่งที่มาสําหรับ ad-tech2 ดังนี้
"Attribution-Reporting-Register-Trigger": {
"event_trigger_data": [
{
"trigger_data": "2",
"priority": "101"
}
],
"aggregatable_trigger_data": [
{
"key_piece": "0x400",
"source_keys": [
"campaignCounts"
],
"x_network_data": {
"key_offset": 10
}
}
],
"aggregatable_values": {
"campaignCounts": 32768
},
"attribution_config": [
{
"source_network": "enrollment-id-ad-tech-2",
"source_priority_range": {
"start": 1,
"end": 1000
},
"priority": "200",
"expiry": "172800"
}
],
"x_network_key_mapping": {
"enrollment-id-ad-tech-2": "0x4"
}
}
ผลลัพธ์
Source2 จะจับคู่การลงทะเบียนและปลายทางกับทริกเกอร์เพื่อให้กลายเป็นแหล่งที่มาที่แข่งขันกันสำหรับการระบุแหล่งที่มา นอกจากนี้ ในระหว่างการลงทะเบียนทริกเกอร์ มีการระบุการกำหนดค่าการระบุแหล่งที่มาสำหรับ ad-tech2 และ Source3 โดยใช้คีย์การรวบรวมการแชร์ ad-tech2 ซึ่งจะช่วยให้สร้างแหล่งที่มาที่ได้มา "Source3" เป็นแหล่งที่มาที่แข่งขันกันสำหรับการระบุแหล่งที่มาได้
แหล่งที่มาที่แข่งขันกัน
ฟิลด์ |
Source2 |
แหล่งที่มา3' |
การลงทะเบียนเทคโนโลยีโฆษณาของแหล่งที่มาเดิม |
mmp-ad-tech |
ad-tech2 |
source_event_id |
45453 |
978 |
ลำดับความสำคัญ |
100 |
200 |
ทริกเกอร์ที่ลงทะเบียน
Trigger1 โดย mmp-ad-tech
ผลลัพธ์การระบุแหล่งที่มา
ระบบจะให้เครดิต Trigger1 แก่ Source3 เนื่องจาก Source3 มีลำดับความสำคัญสูงกว่า Source2
การระบุแหล่งที่มาของโพสต์จากแหล่งที่มาที่ถูกละเว้น
Source2
รายงานเหตุการณ์
ไม่มี - ระบบจะไม่สร้างรายงานเหตุการณ์สำหรับแหล่งที่มาที่ได้มา
รายงานสรุป
แหล่งที่มาหลักของ Source3 ซึ่งก็คือ Source3 จะแชร์เฉพาะ campaignCounts โดยชิ้นส่วนสำคัญสำหรับทริกเกอร์จะคำนวณโดย
(key_piece value) | ((x_network_key_mapping entry) << offset)
0x400 | (0x4 << 10) = 0x1400
สุดท้าย ระบบจะสร้างคีย์ผลลัพธ์โดยการดำเนินการ OR กับคีย์ทริกเกอร์ (0x1400) ด้วยคีย์แหล่งที่มา (0x159) ซึ่งให้ผลลัพธ์เป็น 0x1559
URL รายงาน: http://www.mmp-ad-tech.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"attribution_destination": "https://destination.example.com",
"histograms": [
{
"key": "0x1559",
"value": 32768
}
]
}
สถานการณ์ที่ 3: MMP ลงทะเบียนแหล่งที่มาและแหล่งที่มาที่ได้มาซึ่งเป็นผู้สมัครรับเลือกหลักในห่วงโซ่การลงทะเบียนเดียวกัน
ผู้ลงโฆษณารายหนึ่งทำงานร่วมกับเทคโนโลยีโฆษณาที่แสดง 2 รายการและ MMP 1 รายการ ผู้ใช้คลิกโฆษณาจากเทคโนโลยีโฆษณาที่แสดงเป็นครั้งแรก ซึ่งไม่ได้เปลี่ยนเส้นทางในการลงทะเบียนแหล่งที่มา แต่แชร์คีย์การรวบรวมกับ MMP ผู้ใช้คลิกโฆษณาจากเทคโนโลยีโฆษณาที่แสดงเป็นครั้งที่ 2 ซึ่งทั้ง 2 รายการเปลี่ยนเส้นทางไปยัง MMP เมื่อลงทะเบียนแหล่งที่มาและแชร์คีย์การรวบรวมกับ MMP
ไทม์ไลน์การลงทะเบียน
ที่ t0 ผู้ใช้คลิกโฆษณาที่แสดงโดย ad-tech1 ซึ่งเริ่มการลงทะเบียน Source1 ดังนี้
"Attribution-Reporting-Register-Source": {
"source_event_id": "52343",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x159",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
ที่ t1 เชนการลงทะเบียน 2, ad-tech2 ลงทะเบียน Source2 และเปลี่ยนเส้นทางเพื่อลงทะเบียนแหล่งที่มาของ MMP, Source3 ดังนี้
"Attribution-Reporting-Register-Source": {
"source_event_id": "234456",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172801",
"aggregation_keys": {
"campaignCounts": "0x159"
},
"shared_aggregation_keys": [
"campaignCounts"
]
},
"Attribution-Reporting-Redirect": [
"http://www.mmp-ad-tech.com"
]
"Attribution-Reporting-Register-Source": {
"source_event_id": "4234",
"web_destination": "https://destination.example.com",
"priority": "100",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x159"
}
}
ที่ t2 การลงทะเบียนทริกเกอร์มีการกำหนดค่าการระบุแหล่งที่มาเพื่อสร้างแหล่งที่มาที่ได้มาจาก ad-tech1 และ ad-tech2 ดังนี้
"Attribution-Reporting-Register-Trigger": {
"event_trigger_data": [
{
"trigger_data": "2",
"priority": "101"
}
],
"aggregatable_trigger_data": [
{
"key_piece": "0x400",
"source_keys": [
"campaignCounts"
],
"x_network_data" : {
"key_offset" : 10
}
}
],
"aggregatable_values": {
"campaignCounts": 32768,
"geoValue": 1664
},
"attribution_config": [
{
"source_network": "enrollment-id-ad-tech-1",
"source_priority_range": {
"start": 1,
"end": 1000
},
"priority": "20",
"expiry": "172800"
},
{
"source_network": "enrollment-id-ad-tech-2",
"source_priority_range": {
"start": 1,
"end": 1000
},
"priority": "20",
"expiry": "172800"
}
],
"x_network_key_mapping" : {
"enrollment-id-ad-tech-1" : "0x2",
"enrollment-id-ad-tech-2" : "0x4"
}
}
ผลลัพธ์คือแหล่งที่มาที่ลงทะเบียน MMP ในห่วงโซ่การลงทะเบียนที่ 2 จะได้รับการระบุแหล่งที่มา รายงานรวมที่ได้จะมีลักษณะดังนี้
ผลลัพธ์
แหล่งที่มาที่ได้จาก Source2 (ที่มี "source_event_id": "234456") จะไม่เข้าร่วมในการระบุแหล่งที่มาเนื่องจากห่วงโซ่การลงทะเบียนเดียวกันมีแหล่งที่มาที่ลงทะเบียน mmp-ad-tech ด้วย
แหล่งที่มาที่แข่งขันกัน
ฟิลด์ |
แหล่งที่มา 1' |
Source3 |
การลงทะเบียนเทคโนโลยีโฆษณาของแหล่งที่มาเดิม |
ad-tech1 |
mmp-ad-tech |
source_event_id |
52343 |
4234 |
ลำดับความสำคัญ |
20 |
100 |
ทริกเกอร์ที่ลงทะเบียน
Trigger1 โดย mmp-ad-tech
ผลลัพธ์การระบุแหล่งที่มา
ทริกเกอร์ 1 จะได้รับการระบุแหล่งที่มาเป็นแหล่งที่มา 3 เนื่องจากแหล่งที่มา 3 มีลำดับความสำคัญสูงกว่าแหล่งที่มา 1
การระบุแหล่งที่มาของโพสต์จากแหล่งที่มาที่ถูกละเว้น
Source1 - ระบบจะไม่พิจารณา Source1 ในการสร้างแหล่งที่มาที่ได้มาจาก mmp-ad-tech อีกต่อไป
รายงานเหตุการณ์
URL รายงาน: https://www.ad-tech1.com/.well-known/attribution-reporting/report-event-attribution
{
"attribution_destination": "https://destination.example.com",
"scheduled_report_time": "800176400",
"source_event_id": "4234",
"trigger_data": "2",
"source_type": "navigation",
"randomized_trigger_rate": 0.0024263
}
รายงานสรุป
URL รายงาน: http://www.mmp-ad-tech.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"report_url": "http://www.mmp-example.com",
"payload": {
"attribution_destination": "https://destination.example.com",
"histograms": [
{
"key": "0x559"
"value": 32768
}
]
}
}
สถานการณ์ที่ 4: การระบุแหล่งที่มาแบบข้ามเครือข่ายโดยไม่มีการเปลี่ยนเส้นทางที่มีเกณฑ์ในการเลือกแหล่งที่มา
ผู้ลงโฆษณากำลังทำงานร่วมกับเทคโนโลยีโฆษณาที่แสดง 4 รายและ MMP 1 ราย ผู้ใช้คลิกโฆษณาจากเทคโนโลยีโฆษณา 1 รายการที่แสดง และดูโฆษณาจากอีก 3 รายการ เมื่อผู้ใช้ทำ Conversion ในแอปของผู้ลงโฆษณา MMP จะลงทะเบียนทริกเกอร์และระบุแหล่งที่มาของเทคโนโลยีโฆษณาที่แสดงซึ่งลงทะเบียนไว้เพื่อสร้างแหล่งที่มาที่ได้มา โดยอิงตามตัวกรองต่อไปนี้
- priority_range: เลือกแหล่งที่มาที่มีลำดับความสำคัญภายในช่วงที่กำหนด
- หมดอายุ: เลือกแหล่งข้อมูลที่มีการหมดอายุหลังจากระยะเวลาที่ระบุ
- source_filters: เลือกแหล่งที่มาซึ่ง filter_data ตรงกับ source_filters ที่ระบุ
- source_not_filters: เลือกแหล่งที่มาที่มี not_filters ตรงกับ source_not_filters ที่ระบุ
เมื่อสร้างแหล่งที่มาที่ได้มาตามเกณฑ์แล้ว แหล่งที่มาเหล่านั้นจะมีสิทธิ์เข้าร่วมการระบุแหล่งที่มา
ลำดับเวลาการลงทะเบียน
ที่ t0 ผู้ใช้คลิกทําให้ ad-tech1 ลงทะเบียนแหล่งที่มา Source1 ซึ่งเชื่อมโยง source_type เป็นการนําทางไปยังแหล่งที่มาที่ลงทะเบียนนี้
"Attribution-Reporting-Register-Source": {
"source_event_id": "87456",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172801",
"filter_data": {
"filter1": [
"does_not_matter"
],
"filter2": [
"non-match"
]
},
"aggregation_keys": {
"campaignCounts": "0x119",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
ที่ t1 ผู้ใช้ดูโฆษณาซึ่งทําให้ ad-tech2 ลงทะเบียนแหล่งที่มา Source2 ซึ่งเชื่อมโยง source_type เป็น event กับแหล่งที่มาที่ลงทะเบียนนี้
"Attribution-Reporting-Register-Source": {
"source_event_id": "9078",
"web_destination": "https://destination.example.com",
"priority": "2000",
"expiry": "172801",
"filter_data": {
"filter1": [
"does_not_matter"
],
"filter2": [
"match"
]
},
"aggregation_keys": {
"campaignCounts": "0x129",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
ที่ t2 การดูของผู้ใช้ทําให้ ad-tech3 ลงทะเบียนแหล่งที่มา Source3 ซึ่งเชื่อมโยง source_type เป็น event กับแหล่งที่มาที่ลงทะเบียนนี้
"Attribution-Reporting-Register-Source": {
"source_event_id": "2413",
"web_destination": "https://destination.example.com",
"priority": "20",
"filter_data": {
"filter1": [
"non-match"
],
"filter2": [
"non-match"
]
},
"aggregation_keys": {
"campaignCounts": "0x159",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
ที่ t3 การดูของผู้ใช้ทําให้ ad-tech4 ลงทะเบียนแหล่งที่มา Source4 ซึ่งเชื่อมโยง source_type เป็น event กับแหล่งที่มาที่ลงทะเบียนนี้
"Attribution-Reporting-Register-Source": {
"source_event_id": "7567",
"web_destination": "https://destination.example.com",
"priority": "20",
"filter_data": {
"filter1": [
"match"
],
"filter2": [
"match"
]
},
"aggregation_keys": {
"campaignCounts": "0x169",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
ที่ t4 การแปลงผู้ใช้ทําให้ mmp-ad-tech ลงทะเบียนทริกเกอร์ด้วยการกําหนดค่าการระบุแหล่งที่มาสําหรับแหล่งที่มาที่ลงทะเบียนของ ad-tech อื่นๆ ที่กล่าวถึงก่อนหน้านี้ทั้งหมด ดังนี้
"Attribution-Reporting-Register-Trigger": {
"event_trigger_data": [
{
"trigger_data": "2",
"priority": "100"
}
],
"aggregatable_trigger_data": [
{
"key_piece": "0x400",
"source_keys": [
"campaignCounts"
]
}
],
"aggregatable_values": {
"campaignCounts": 32768,
"geoValue": 1664
},
"attribution_config": [
{
"source_network": "enrollment-id-ad-tech-1",
"source_priority_range": {
"start": 1,
"end": 100
},
"source_filters": {
"source_type": [
"event"
]
},
"priority": "100",
"expiry": "172801"
},
{
"source_network": "enrollment-id-ad-tech-2",
"source_priority_range": {
"start": 1,
"end": 1000
},
"source_filters": {
"source_type": [
"navigation"
]
},
"priority": "100",
"expiry": "172801"
},
{
"source_network": "enrollment-id-ad-tech-3",
"source_priority_range": {
"start": 1,
"end": 1000
},
"source_filters": {
"source_type": [
"navigation"
],
"filter1": [
"match"
],
"filter2": [
"match"
]
},
"priority": "50",
"expiry": "172801"
},
{
"source_network": "enrollment-id-ad-tech-4",
"source_priority_range": {
"start": 1,
"end": 1000
},
"source_filters": {
"source_type": [
"navigation"
],
"filter1": [
"match"
],
"filter2": [
"match"
]
},
"priority": "30",
"expiry": "172801"
}
],
"x_network_key_mapping": {
"enrollment-id-ad-tech-1": "0x1",
"enrollment-id-ad-tech-2": "0x2",
"enrollment-id-ad-tech-3": "0x3",
"enrollment-id-ad-tech-4": "0x4"
}
}
ผลลัพธ์
แหล่งที่มาต่อไปนี้ไม่มีสิทธิ์สร้างแหล่งที่มาที่ได้มาเนื่องจากเกณฑ์ไม่ตรงกัน
- Source1 ไม่เป็นไปตามตัวกรอง
source_type:eventในการกำหนดค่าการระบุแหล่งที่มาของ ad-tech1 - Source2 มีการตั้งค่าลำดับความสำคัญเป็น 2000 ซึ่งอยู่นอกตัวกรองช่วงลำดับความสำคัญของ ad-tech2 (1,1000)
- Source3 ไม่ตรงกับค่าสำหรับ
filter2
แหล่งที่มาที่แข่งขันกัน
ฟิลด์ |
แหล่งที่มา4' |
การลงทะเบียนเทคโนโลยีโฆษณาของแหล่งที่มาเดิม |
ad-tech4 |
source_event_id |
7567 |
ปลายทาง |
https://destination.example.com |
ลำดับความสำคัญ |
30 |
การหมดอายุ |
เวลาลงทะเบียน + 2 วัน |
ทริกเกอร์ที่ลงทะเบียน
Trigger1 โดย mmp-ad-tech
ผลลัพธ์การระบุแหล่งที่มา
ระบบจะระบุแหล่งที่มาของทริกเกอร์ 1 เป็นแหล่งที่มา 4 เนื่องจากเป็นแหล่งที่มาเดียวที่มีสิทธิ์สำหรับการระบุแหล่งที่มา
การระบุแหล่งที่มาของโพสต์จากแหล่งที่มาที่ถูกละเว้น
ไม่มี
รายงานเหตุการณ์
ไม่มี - ระบบจะไม่สร้างรายงานเหตุการณ์สำหรับผู้ชนะแหล่งที่มาที่ได้มา
รายงานสรุป
URL ของรายงาน: http://www.mmp-ad-tech.com
{
"attribution_destination": "https://example.com",
"histograms": [
{
"key": "0x56d",
"value": 32768
},
{
"key": "0x5",
"value": 1664
}
]
}
สถานการณ์ที่ 5: การระบุแหล่งที่มาหลังการติดตั้ง
ผู้ลงโฆษณารายหนึ่งทำงานร่วมกับเทคโนโลยีโฆษณาที่แสดง 2 รายการและ MMP 1 รายการ ผู้ใช้คลิกโฆษณาจากเทคโนโลยีโฆษณารายแรกและติดตั้งแอปของผู้ลงโฆษณา ในระหว่างการระบุแหล่งที่มาสําหรับ Conversion หลังการติดตั้ง แหล่งที่มาที่ได้มาพร้อมกับการระบุแหล่งที่มาของการติดตั้งจะชนะแหล่งที่มาอื่นๆ แม้ว่าแหล่งที่มาอื่นๆ จะมีลําดับความสําคัญสูงกว่าก็ตาม
ลำดับเวลาการลงทะเบียน
ที่ t0 การโต้ตอบของผู้ใช้ทําให้ ad-tech1 ลงทะเบียน Source1 ดังนี้
"Attribution-Reporting-Register-Source": {
"source_event_id": "3645",
"destination": "android-app://com.example.app",
"priority": "20",
"expiry": "172801",
"install_attribution_window": "86400",
"post_install_exclusivity_window": "864000",
"aggregation_keys": {
"campaignCounts": "0x119",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
ที่ t1 ผู้ใช้ติดตั้งแอป com.example.app ในอุปกรณ์
ที่ t2 การโต้ตอบของผู้ใช้ทําให้ ad-tech2 ลงทะเบียน Source2 ดังนี้
"Attribution-Reporting-Register-Source": {
"source_event_id": "345789",
"destination": "android-app://com.example.app",
"priority": "100",
"aggregation_keys": {
"campaignCounts": "0x159",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
ที่ t3, mmp-ad-tech จะลงทะเบียนทริกเกอร์ด้วยการกำหนดค่าการระบุแหล่งที่มาสำหรับ ad-tech1 และ ad-tech2 ดังนี้
"Attribution-Reporting-Register-Trigger": {
"event_trigger_data": [
{
"trigger_data": "2",
"priority": "100"
}
],
"aggregatable_trigger_data": [
{
"key_piece": "0x400",
"source_keys": [
"campaignCounts"
]
}
],
"aggregatable_values": {
"campaignCounts": 32768,
"geoValue": 1664
},
"attribution_config": [
{
"source_network": "enrollment-id-ad-tech-1",
"priority": "10",
"expiry": "172801",
"post_install_exclusivity_window": "172800"
},
{
"source_network": "enrollment-id-ad-tech-2",
"priority": "20",
"expiry": "172801"
}
],
"x_network_key_mapping": {
"enrollment-id-ad-tech-1": "0x1",
"enrollment-id-ad-tech-2": "0x3"
}
}
ผลลัพธ์
สร้างแหล่งที่มาที่ได้มาจาก Source1 และ Source2 (Source1' และ Source2' ตามลำดับ) ซึ่งแข่งขันกันเพื่อการระบุแหล่งที่มา
แหล่งที่มาที่แข่งขันกัน
ฟิลด์ |
แหล่งที่มา 1' |
แหล่งที่มา 2' |
การลงทะเบียนเทคโนโลยีโฆษณาของแหล่งที่มาเดิม |
ad-tech1 |
ad-tech2 |
source_event_id |
3645 |
345789 |
ปลายทาง |
android-app://com.example.app |
android-app://com.example.app |
ลำดับความสำคัญ |
10 |
20 |
กระตุ้นการติดตั้งแอป |
ใช่ |
ไม่ |
ทริกเกอร์ที่ลงทะเบียน
Trigger1 โดย mmp-ad-tech
ผลลัพธ์การระบุแหล่งที่มา
ระบบจะให้เครดิต Trigger1 แก่ Source1 เนื่องจากเป็นตัวกระตุ้นการติดตั้งแอปปลายทาง โปรดทราบว่า Source2 มีลำดับความสำคัญสูงกว่า
การระบุแหล่งที่มาของโพสต์จากแหล่งที่มาที่ถูกละเว้น
Source2 - ระบบจะไม่พิจารณาแหล่งที่มาที่ได้จาก Source2 ในการระบุแหล่งที่มาสําหรับทริกเกอร์ใดๆ ที่ลงทะเบียนโดย mmp-ad-tech
รายงานเหตุการณ์
ไม่มี - ระบบจะไม่สร้างรายงานเหตุการณ์สำหรับผู้ชนะแหล่งที่มาที่ได้มา
รายงานสรุป
URL รายงาน: http://www.mmp-ad-tech.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"attribution_destination": "android-app://com.example.app",
"histograms": [
{
"key": "0x519",
"value": 32768
},
{
"key": "0x5",
"value": 1664
}
]
}
สถานการณ์ที่ 6: แพ้ครั้งเดียว แพ้ตลอด
หาก ad-tech1 มีแหล่งที่มาซึ่งแหล่งที่มาที่ได้มาเข้าร่วมในการระบุแหล่งที่มาสําหรับทริกเกอร์ของ mmp-ad-tech และสูญเสียการระบุแหล่งที่มา ระบบจะไม่ใช้แหล่งที่มาของ ad-tech1 เพื่อสร้างแหล่งที่มาที่ได้มาสําหรับทริกเกอร์ของ mmp-ad-tech หลังจากนั้น ตัวอย่างไทม์ไลน์
- ที่ t0 ระบบจะลงทะเบียน Source1 ของ ad-tech1 กับ
"priority": "10" - ที่ t1 ระบบจะลงทะเบียน Source2 ของ ad-tech2 กับ
"priority": "20" - ที่ t2 ระบบจะลงทะเบียน Trigger1 ของ mmp-ad-tech ด้วยการกำหนดค่าการระบุแหล่งที่มาของ ad-tech1 และ ad-tech2
- ที่ t3 การระบุแหล่งที่มาสำหรับ Trigger1 จะเกิดขึ้นเมื่อแหล่งที่มาที่ได้จาก ad-tech2 ชนะการระบุแหล่งที่มา และระบบจะละเว้นแหล่งที่มาของ ad-tech1
- ที่ t4 Source3 ของ ad-tech3 จะลงทะเบียนกับ
"priority": "5" - ที่ t5 ระบบจะลงทะเบียน Trigger2 ของ mmp-ad-tech ด้วยการกำหนดค่าของ ad-tech1 และ ad-tech3
- ที่ t6 การระบุแหล่งที่มาสำหรับ Trigger2 จะเกิดขึ้น โดยที่แหล่งที่มาที่ได้จาก Source3 (Source3') จะชนะการระบุแหล่งที่มา
คำอธิบายผลลัพธ์
แหล่งที่มาที่ได้มาจากแหล่งที่มาของ ad-tech1 สูญเสียการระบุแหล่งที่มาสำหรับ Trigger1 ดังนั้นจึงไม่ได้ใช้ Source1 เพื่อสร้างแหล่งที่มาที่ได้มาสำหรับการระบุแหล่งที่มาของ Trigger2 หากไม่แพ้ก่อนหน้านี้ที่ t3 ก็จะชนะแหล่งที่มาของ ad-tech3 เนื่องจากมีลำดับความสำคัญสูงกว่า