Pembatasan frekuensi adalah praktik pengiklanan yang membatasi jumlah iklan dari kategori tertentu yang ditampilkan kepada pengguna dalam jangka waktu tertentu. Pembatasan frekuensi meningkatkan pengalaman pengguna akhir dengan menjaga tayangan iklan tetap segar dan menarik, serta membantu pengiklan mengelola pembelanjaan iklan.
Rencana ini memperkenalkan cara menggunakan FLEDGE di Android untuk menerapkan fungsi pembatasan frekuensi secara akurat dan dapat menjaga privasi.
FLEDGE menerapkan pembatasan frekuensi dengan menggabungkan dua fitur: Penyimpanan penghitung di perangkat untuk peristiwa khusus iklan dan kemampuan untuk memfilter iklan sesuai dengan kumpulan strategi filter yang telah ditentukan. Dengan pembatasan frekuensi, pengiklan dapat memperlihatkan nilai minimum penghitung pada jumlah nilai histogram selama jangka waktu tertentu.
Penghitung bersifat unik untuk setiap kombinasi profil perangkat, adtech, dan kunci penghitung. Setiap iklan harus berisi kumpulan kunci penghitung yang akan digunakan jika tampilan atau tayangan untuk iklan didaftarkan. Untuk setiap kunci, FLEDGE menyimpan kumpulan penghitung, dan setiap penghitung akan menghitung semua peristiwa khusus iklan yang terjadi dalam interval waktu tertentu. Penghitung di perangkat akan bertambah saat tayangan atau tampilan berlangsung, dan data penghitung akan disimpan di perangkat. Waktu persistensi yang tepat akan ditentukan nanti.
Logika pemfilteran iklan di alur kerja pemilihan iklan FLEDGE memiliki akses ke penghitung, iklan pemasaran ulang, dan iklan kontekstual sehingga pembatasan frekuensi FLEDGE dapat menangani semua jenis permintaan iklan.
Catatan: Pemfilteran iklan hanya tersedia di Privacy Sandbox di Android. Penerapan FLEDGE Chrome saat ini tidak menerapkan mekanisme pemfilteran iklan non-FLEDGE yang ditargetkan secara kontekstual. Rencana ini hanya mencakup dukungan sisi beli. Jika ada permintaan, kami akan menambahkan dukungan sisi jual di kemudian hari.
Pembatasan frekuensi FLEDGE mendukung berbagai persyaratan, seperti:
- Pemfilteran real-time, dengan penundaan sisi server minimal saat penghitung di perangkat diupdate.
- Hierarki kunci yang fleksibel, termasuk setiap iklan, kampanye, atau pengelompokan lainnya.
- Kongruen dengan metode pembatasan frekuensi lainnya, tanpa dependensi pada AdID.
- Berfungsi di seluruh aplikasi pada profil pengguna perangkat tertentu.
- Penghitung yang akurat dan lengkap.
- Dukungan untuk definisi kustom peristiwa iklan, seperti tampilan atau tayangan.
- Satu fungsi untuk pemasaran ulang dan iklan kontekstual.
Untuk menyiapkan pembatasan frekuensi, ikuti langkah-langkah berikut:
Langkah 1: Menambahkan informasi pembatasan frekuensi ke iklan
Iklan kontekstual dan pemasaran ulang akan menunjukkan penghitung histogram
yang relevan untuk diupdate jika tampilan atau tayangan menggunakan kolom baru
on_device_counters_keys
yang akan berisi daftar nilai kunci arbitrer. Kolom
ini tidak disertakan dalam kolom metadata
yang tidak diurai oleh FLEDGE.
Contoh berikut menunjukkan format data untuk kolom adsData
di
AdSelectionConfig
. Untuk pemasaran ulang, format daftar iklan untuk audiens kustom
tertentu harus konsisten dengan konten kolom ads
yang ditampilkan di bawah:
'adsData': [
{
"buyer": "ads.example.com",
"ads": [
{
'render_url': 'exampleUrl',
'metadata': {...}, /* metadata are opaque to FLEDGE and
just required to be in valid JSON
format */
'on_device_counters_keys': [
'campaign_id:1234',
'campaign_id:1234+adgroup_id:5678'
]
}]
}]
}
Langkah 2: Mendaftarkan tampilan atau tayangan
Adtech dapat memanggil metode updateEventHistogram
untuk mendaftarkan kemunculan
peristiwa yang digunakan untuk pembatasan frekuensi. Metode dapat dipanggil berulang kali
pada peristiwa yang sama untuk kunci yang ditentukan dalam eventType
iklan pemenang.
void updateEventHistogram(@EventType eventType, long adSelectionId)
Input:
eventType
: Mengidentifikasi apakah peristiwa dihitung sebagai tampilan, tayangan, atau kemenangan dalam proses pemilihan iklan.adSelectionId
: Nilai ID dalam objekAdSelectionOutcome
yang ditampilkan oleh panggilanselectAds
.
Panggilan updateEventHistogram
akan mengupdate histogram untuk kumpulan kunci
yang ditetapkan sebagai bagian dari iklan pemasaran ulang yang diambil oleh CustomAudience
atau
iklan kontekstual yang disertakan dalam parameter AdSelectionConfig
untuk
selectAds
. Selain kunci di on_device_counters_keys
, panggilan juga akan
mengupdate histogram untuk penghitung yang diidentifikasi oleh nilai render_url
iklan.
Jika kita menganggap bahwa iklan di Langkah 1 adalah pemenang AdSelection
dengan
nilai id
sebanyak 9999
, panggilan ke updateEventHistogram(EventType.VIEW,
adSelectionId: 999)
akan menambahkan penghitung untuk tiga kunci utama
berikut:
{'ads.example.com', 'campaign_id:1234', VIEW}
{'ads.example.com', 'campaign_id:1234+adgroup_id:5678', VIEW}
{'ads.example.com', 'exampleUrl', VIEW}
.
Nama adtech diambil dari kolom pembeli, baik dari iklan kontekstual maupun dari audiens kustom, bergantung pada tempat asal iklan pemenang.
FLEDGE untuk Android akan otomatis menambahkan semua penghitung yang telah disebutkan di atas
untuk jenis peristiwa EventType.AD_SELECTION_WIN
untuk iklan yang ditampilkan oleh
panggilan API selectAds
. Secara fungsional, tindakan ini sama seperti menambahkan
argumen prev_wins
ke browser_signals
di generateBid
dalam implementasi FLEDGE
Chrome.
Langkah 3: Menerapkan pemfilteran pembatasan frekuensi dengan filter
Untuk performa yang optimal, fungsi pemfilteran pembatasan frekuensi dijalankan dalam
AdServices
. FLEDGE memahami apakah pesan harus difilter dengan membaca
kolom filter dalam objek AdsData
atau tidak. Daftar filter ditentukan di
frequency_cap
. Nilai untuk kunci, event_type
, dan interval_seconds
digunakan untuk mengambil histogram peristiwa yang digunakan untuk pemfilteran dan FLEDGE.
Informasi pemfilteran dapat ditentukan untuk iklan pemasaran ulang yang diberikan oleh audiens kustom
dan untuk iklan kontekstual sebagai bagian dari objek AdSelectionConfig
.
Untuk iklan kontekstual dengan filter pembatasan frekuensi, iklan diteruskan menggunakan
kolom iklan dalam objek AdSelectionConfig
. Iklan difilter, lalu iklan dengan
bid tertinggi akan ditampilkan sebagai hasil dari panggilan selectAds
.
Untuk iklan pemasaran ulang dengan filter pembatasan frekuensi, iklan akan difilter sebelum
fungsi JavaScript generateBid()
yang disediakan pembeli dipanggil.
Contoh berikut menampilkan pesan dengan pemfilteran pembatasan frekuensi:
{
'render_url': 'url',
'metadata': {...}, /* metadata are opaque to FLEDGE and assumed
to be in valid JSON format */
'on_device_counters_keys': [
'campaign_id:1234',
'campaign_id:1234+adgroup_id:5678'
],
"filters": {
"frequency_cap": {
"view": {
"campaign_id:1234": {
"cap": 10,
"interval_seconds": 86400
},
"adgroup_id:5678": {
"cap": 10,
"interval_seconds": 86400
},
},
"win": {
"campaign_id:1234": {
"cap": 5,
"interval_seconds": 604800
},
"adgroup_id:5678": {
"cap": 5,
"interval_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"
}
Langkah 4: Membuat laporan tentang Iklan pemenang
Setelah selesai, proses pemilihan iklan akan menampilkan objek AdSelectionOutcome
yang berisi renderUri
dan adSelectionId
, ID numerik untuk
panggilan selectAds
. ID ini dapat digunakan untuk memanggil reportImpression
API
yang saat ini mendukung pelaporan tingkat peristiwa. Di Beta 1, metode ini mendukung
pelaporan untuk iklan pemasaran ulang, dan akan diperluas guna mendukung pelaporan untuk
iklan kontekstual dalam rilis selanjutnya. Untuk iklan kontekstual, pembeli wajib
menunjukkan tempat fungsi reportWin
dapat diambil selama
panggilan reportImpression
menggunakan kolom tambahan yang disebut reportingJS
di struktur iklan,
seperti yang ditunjukkan pada contoh di atas.
Praktik terbaik untuk memilih kandidat iklan
FLEDGE memindahkan penerapan pembatasan frekuensi dari server ke perangkat. Meskipun bid yang menang dilaporkan dengan Privacy Sandbox, developer tidak akan mengetahui alasan iklan tidak ditampilkan. Iklan mungkin tidak ditampilkan karena adanya bid yang kalah, atau karena pembatasan frekuensi. Dengan tidak adanya visibilitas penuh tentang alasan iklan-iklan tertentu tidak menang, maka sistem bidding memerlukan upaya tambahan untuk memastikan iklan yang optimal akan ditayangkan. Praktik terbaik ini akan membantu memastikan penayangan iklan yang optimal dengan FLEDGE.
Mengirim iklan pemasaran ulang yang cukup
Iklan pemasaran ulang tidak dapat dioptimalkan per pengguna. Jika pengguna melihat ada banyak
iklan dari audiens kustom dan batas iklan rendah, semua iklan
dapat difilter. Iklan pemasaran ulang diperbarui secara berkala sehingga inventaris
iklan yang memadai harus melewati pembatasan frekuensi untuk memastikan iklan pemasaran ulang terus
ditayangkan. Hal ini perlu diseimbangkan dengan batasan ukuran iklan yang
dapat ditentukan selama panggilan joinCustomAudience
, dan selama
proses pengambilan latar belakang audiens kustom. Pembeli harus mempertimbangkan kemungkinan adanya
peningkatan latensi selama fase bidding. Untuk meminimalkan dampak masalah ini,
pemfilteran pembatasan frekuensi dilakukan sebelum panggilan ke generateBid
.
Menyimpan penghitung kontekstual di server
Dengan estimasi sisi server, developer dapat secara kasar memperkirakan kapan pembatasan frekuensi mungkin aktif. Estimasi tersebut dapat menunjukkan bahwa iklan kemungkinan telah mencapai nilai minimum pembatasan frekuensi sehingga harus dikirim dengan lebih banyak kandidat iklan atau dihilangkan sepenuhnya.
Mengirim beberapa kandidat iklan di respons kontekstual
Anda harus mengirimkan beberapa kandidat iklan dengan respons kontekstual sebelum lelang FLEDGE. Hal ini memastikan bahwa jika beberapa iklan difilter, iklan lain akan tetap ditampilkan. Kandidat iklan dapat diprioritaskan sehingga beberapa iklan disediakan sebagai cadangan.
Karena eksekusi selalu terikat waktu, kandidat iklan harus dipilih sesuai dengan kecenderungannya untuk memenangkan lelang dan tidak akan difilter.
Batasan
Berikut adalah batasan umum untuk pembatasan frekuensi FLEDGE:
- Pembatasan frekuensi FLEDGE beroperasi di tingkat profil pengguna perangkat, dan saat ini tanpa penghitung bersama di perangkat lain dan profil lainnya. Setiap penambahan iklan yang ditampilkan dari perangkat lain harus digabungkan secara manual, jika diinginkan.
- Penghitung perangkat disimpan dan diakses di perangkat. Penghitung sisi server harus dikelola terpisah.
- Platform adtech tidak dapat mengontrol operasi ini secara langsung karena pembatasan frekuensi dan pemfilteran iklan yang terkait diproses di perangkat Untuk menghapus nilai minimum pembatasan frekuensi perangkat, platform teknologi iklan dapat mengirim beberapa iklan kandidat.
- Penyesuaian bid berdasarkan frekuensi yang tercatat tidak didukung. Fungsi
generateBid
tidak dapat melihat penghitung frekuensi.