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.
Proposal ini memperkenalkan cara menggunakan Protected Audience di Android untuk menerapkan fungsi pembatasan frekuensi secara akurat dan menjaga privasi.
Protected Audience 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, teknologi iklan, dan kunci penghitung. Setiap iklan harus berisi kumpulan kunci penghitung yang akan digunakan jika tampilan atau tayangan untuk iklan didaftarkan. Untuk setiap kunci, Protected Audience 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 Protected Audience memiliki akses ke penghitung, iklan pemasaran ulang, dan iklan kontekstual, sehingga pembatasan frekuensi Protected Audience dapat menangani semua jenis permintaan iklan.
Catatan: Pemfilteran iklan hanya tersedia di Privacy Sandbox di Android. Penerapan Protected Audience Chrome saat ini tidak menerapkan mekanisme pemfilteran iklan non-Protected Audience yang ditargetkan secara kontekstual. Proposal ini hanya mencakup dukungan sisi beli. Jika ada permintaan, kami akan menambahkan dukungan sisi jual di kemudian hari.
Pembatasan frekuensi Protected Audience mendukung berbagai persyaratan, termasuk:
- 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 menunjukkan penghitung histogram yang relevan untuk diupdate
jika ada tampilan atau tayangan yang menggunakan kolom ad_counter_keys
yang
berisi daftar bilangan bulat arbitrer. Kolom ini tidak disertakan dalam
kolom metadata
yang tidak diurai oleh Protected Audience.
Contoh berikut menunjukkan format data untuk kolom adsData
di
AdSelectionConfig
. Untuk pemasaran ulang, format daftar iklan untuk
audiens kustom tertentu konsisten dengan konten kolom ads
yang ditunjukkan dalam
contoh berikut:
'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]
}]
}]
}
Langkah 2: Mendaftarkan tampilan atau tayangan
Teknologi iklan dapat memanggil metode updateAdCounterHistogram
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 updateAdCounterHistogram(@EventType eventType, long adSelectionId)
Input:
eventType
: Mengidentifikasi apakah peristiwa dihitung sebagai tampilan, tayangan, klik, atau kemenangan dalam proses pemilihan iklan.adSelectionId
: Nilai ID dalam objekAdSelectionOutcome
yang ditampilkan oleh panggilanselectAds
.
Panggilan updateAdCounterHistogram
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
.
Jika Anda menganggap bahwa iklan di Langkah 1 adalah pemenang AdSelection
dengan
nilai id
sebanyak 9999
, panggilan ke updateAdCounterHistogram(FrequencyCapFilters.AD_EVENT_TYPE_VIEW,
adSelectionId: 999)
akan menambahkan penghitung untuk tiga kunci utama
berikut:
{'ads.example.com', 1234, VIEW}
{'ads.example.com', 5678, VIEW}
Nama teknologi iklan diambil dari kolom pembeli, baik dari iklan kontekstual maupun dari audiens kustom, bergantung pada tempat asal iklan pemenang.
Protected Audience untuk Android secara otomatis menambah semua penghitung
yang disebutkan di atas untuk jenis peristiwa FrequencyCapFilters.AD_EVENT_TYPE_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 Protected Audience Chrome.
Langkah 3: Menerapkan pemfilteran pembatasan frekuensi dengan filter
Untuk performa yang optimal, fungsi pemfilteran pembatasan frekuensi dijalankan dalam
AdServices
. Protected Audience dapat memahami apakah pesan harus difilter dengan
membaca kolom filter di objek AdsData
. Daftar filter
ditentukan di frequency_cap
. Nilai untuk kunci, event_type
, dan
interval_in_seconds
digunakan untuk mengambil histogram peristiwa yang digunakan
untuk pemfilteran dan Protected Audience.
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 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"
}
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
Protected Audience 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 tertentu tidak menang, sistem bidding memerlukan upaya tambahan untuk memastikan iklan yang optimal akan ditayangkan. Praktik terbaik ini akan membantu memastikan penayangan iklan yang optimal dengan Protected Audience.
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
update harian 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 Protected Audience. Hal ini memastikan bahwa jika beberapa iklan difilter, iklan lainnya 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 Protected Audience:
- Pembatasan frekuensi Protected Audience beroperasi di tingkat profil pengguna perangkat, tanpa penghitung bersama di perangkat lain dan profil lainnya. Setiap penambahan iklan yang ditampilkan dari perangkat lain harus digabungkan secara manual, jika diperlukan.
- Penghitung perangkat disimpan dan diakses di perangkat. Penghitung sisi server harus dikelola terpisah.
- Platform teknologi iklan tidak dapat mengontrol operasi ini secara langsung karena pembatasan frekuensi dan pemfilteran iklan yang terkait diproses di perangkat. Untuk mengabaikan nilai minimum pembatasan frekuensi perangkat, platform teknologi iklan dapat mengirim beberapa iklan kandidat dengan filter yang berbeda.
- Penyesuaian bid berdasarkan frekuensi yang tercatat tidak didukung. Fungsi
generateBid
tidak dapat melihat penghitung frekuensi.
Direkomendasikan untuk Anda
- Catatan: teks link ditampilkan saat JavaScript nonaktif
- Protected Audience: panduan integrasi
- Panduan developer Protected Audience API di Android
- Mendukung penargetan audiens kustom dengan Protected Audience API