Privacy Sandbox di Pratinjau Developer Android telah hadir! Pelajari cara memulai, dan terus berikan masukan.

Pembatasan frekuensi FLEDGE

Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

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 objek AdSelectionOutcome yang ditampilkan oleh panggilan selectAds.

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:

  1. 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.
  2. Penghitung perangkat disimpan dan diakses di perangkat. Penghitung sisi server harus dikelola terpisah.
  3. 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.
  4. Penyesuaian bid berdasarkan frekuensi yang tercatat tidak didukung. Fungsi generateBid tidak dapat melihat penghitung frekuensi.