Attribution Reporting: ringkasan sistem lengkap

Ringkasan tingkat tinggi layanan terhubung untuk Pelaporan Atribusi, yang ditujukan bagi pengambil keputusan teknis.

Attribution Reporting API memungkinkan teknologi iklan dan pengiklan mengukur kapan klik atau penayangan iklan menghasilkan konversi, seperti pembelian. API ini mengandalkan kombinasi integrasi sisi klien dan sisi server, bergantung pada kebutuhan bisnis Anda.

Sebelum melanjutkan, pastikan Anda telah membaca Ringkasan Pelaporan Atribusi. Hal ini akan membantu Anda memahami tujuan API dan alur berbagai laporan output (laporan tingkat peristiwa dan laporan ringkasan). Jika Anda menemukan istilah yang tidak dikenal, lihat glosarium Privacy Sandbox.

Untuk siapa dokumen ini?

Anda harus membaca dokumen ini jika:

  • Anda adalah pengambil keputusan teknis teknologi iklan atau pengiklan. Anda mungkin bekerja di bidang operasi, DevOps, ilmu data, IT, pemasaran, atau peran lain yang mengharuskan Anda membuat keputusan penerapan teknis. Anda bertanya-tanya bagaimana cara kerja API untuk pengukuran yang menjaga privasi.
  • Anda adalah praktisi teknis (seperti developer, operator sistem, arsitek sistem, atau data scientist) yang akan menyiapkan eksperimen dengan API ini dan lingkungan Layanan Agregasi.

Dalam dokumen ini, Anda akan membaca penjelasan menyeluruh tingkat tinggi tentang cara kerja layanan untuk Attribution Reporting API. Jika Anda seorang praktisi teknis, Anda dapat bereksperimen dengan API ini secara lokal.

Ringkasan

Attribution Reporting API terdiri dari banyak layanan, yang memerlukan penyiapan, konfigurasi sisi klien, dan deployment server tertentu. Untuk menentukan apa yang Anda butuhkan, pertama:

  • Membuat keputusan desain. Tentukan informasi yang ingin Anda kumpulkan, identifikasi konversi yang Anda harapkan dari kampanye tertentu, dan tentukan jenis laporan yang akan dikumpulkan. Output akhir adalah salah satu atau kedua jenis laporan: laporan tingkat peristiwa dan laporan ringkasan.

Selalu ada dua (dan terkadang tiga) komponen yang bekerja sama untuk mendukung pelaporan:

  • Komunikasi situs ke browser. Dalam sistem berbasis cookie, informasi untuk konversi dan engagement iklan dilampirkan ke ID yang memungkinkan Anda atau layanan analisis menggabungkan peristiwa ini nanti. Dengan API ini, browser mengaitkan konversi dengan klik/penayangan iklan, berdasarkan petunjuk Anda, sebelum dikirimkan untuk analisis. Oleh karena itu, kode rendering iklan dan tracking konversi Anda harus:
    • Memberi tahu browser konversi mana yang harus diatribusikan ke klik atau tayangan iklan mana.
    • Menandai data lain yang akan disertakan dalam laporan akhir.
  • Pengumpulan data. Anda memerlukan endpoint pengumpul untuk menerima laporan yang dibuat di browser pengguna. Output dari browser dapat berupa salah satu dari dua kemungkinan laporan: laporan tingkat peristiwa dan laporan yang dapat digabungkan (yang dienkripsi, digunakan untuk membuat laporan ringkasan).

Jika Anda mengumpulkan laporan yang dapat digabungkan, Anda akan memerlukan komponen ketiga:

  • Pembuatan laporan ringkasan. Gabungkan laporan yang dapat digabungkan dan gunakan Layanan Agregasi untuk memproses laporan guna membuat laporan ringkasan.

Keputusan desain

Prinsip utama Attribution Reporting adalah keputusan desain awal. Anda memutuskan data apa yang akan dikumpulkan dalam kategori apa dan seberapa sering data tersebut akan diproses. Laporan output memberikan insight tentang kampanye atau bisnis Anda.

Laporan output dapat berupa:

  • Laporan tingkat peristiwa mengaitkan klik atau penayangan iklan tertentu (di sisi iklan) dengan data di sisi konversi. Untuk menjaga privasi pengguna dengan membatasi penggabungan identitas pengguna di seluruh situs, data sisi konversi sangat terbatas, dan datanya tidak akurat (artinya, untuk sebagian kecil kasus, data acak dikirim, bukan laporan sebenarnya).
  • Laporan ringkasan tidak terikat dengan peristiwa tertentu di sisi iklan. Laporan ini menawarkan data konversi yang lebih mendetail dan fleksibilitas untuk menggabungkan data klik dan penayangan dengan data konversi.

Pilihan laporan Anda menentukan data yang perlu dikumpulkan.

Anda juga dapat menganggap output akhir sebagai input untuk alat yang Anda gunakan untuk membuat keputusan. Misalnya, jika Anda membuat laporan ringkasan untuk menentukan jumlah konversi yang menghasilkan total nilai pembelanjaan tertentu, hal itu dapat membantu tim Anda memutuskan target kampanye iklan berikutnya untuk menghasilkan total pembelanjaan yang lebih tinggi.

Setelah memutuskan apa yang ingin diukur, Anda dapat menyiapkan sisi klien untuk Attribution Reporting API.

Komunikasi situs ke browser

Sumber atribusi di situs penayang terhubung dengan pemicu di situs pengiklan.
Sumber atribusi di situs penayang terhubung dengan pemicu di situs pengiklan.

Alur peristiwa atribusi

Bayangkan situs penayang yang menampilkan iklan. Setiap pengiklan atau penyedia teknologi iklan ingin mempelajari interaksi dengan iklan mereka, dan mengatribusikan konversi ke iklan yang benar. Laporan (tingkat peristiwa dan agregat) akan dibuat sebagai berikut:

  1. Di situs penayang, elemen iklan (tag <a> atau <img>) dikonfigurasi dengan atribut khusus attributionsrc. Nilainya adalah URL, misalnya https://adtech.example/register-source/ad_id=....

    Berikut adalah contoh link yang akan mendaftarkan sumber setelah diklik:

    <a href="https://shoes.example/landing"
      attributionsrc="http://adtech.example/register-source?..."
      target="_blank">
    Click me</a>
    

    Berikut adalah contoh gambar yang akan menyebabkan pendaftaran sumber saat dilihat:

    <img href="https://advertiser.example/landing"
      attributionsrc="https://adtech.example/register-source?..."/>
    

    Atau, panggilan JavaScript dapat digunakan, bukan elemen HTML.

    Berikut adalah contoh JavaScript yang menggunakan window.open(). Perhatikan bahwa URL dienkode ke URL untuk menghindari masalah dengan karakter khusus.

    const encodedUrl = encodeURIComponent(
      'https://adtech.example/attribution_source?ad_id=...');
    window.open(
      "https://shoes.example/landing",
      "_blank",
      `attributionsrc=${encodedUrl}`);
    
  2. Saat pengguna mengklik atau melihat iklan, browser akan mengirim permintaan GET ke attributionsrc—biasanya, endpoint pengiklan atau penyedia teknologi iklan.

  3. Setelah menerima permintaan ini, pengiklan atau penyedia teknologi iklan memutuskan untuk menginstruksikan browser agar mendaftarkan peristiwa sumber untuk interaksi dengan iklan, sehingga konversi dapat diatribusikan ke iklan ini di kemudian hari. Untuk melakukannya, pengiklan atau penyedia teknologi iklan menyertakan header HTTP khusus dalam responsnya. Header ini melampirkan data kustom yang memberikan informasi tentang peristiwa sumber (klik atau penayangan iklan). Jika konversi akhirnya terjadi untuk iklan ini, data kustom ini akan muncul dalam laporan atribusi.

    Melihat atau mengklik iklan.

  4. Kemudian, pengguna mengunjungi situs pengiklan.

  5. Di setiap halaman yang relevan di situs pengiklan—misalnya, halaman konfirmasi pembelian, atau halaman produk—piksel konversi (elemen <img>) atau panggilan JavaScript membuat permintaan ke https://adtech.example/conversion?param1=...&param2=....

  6. Layanan di URL ini—biasanya, pengiklan atau penyedia teknologi iklan—menerima permintaan. Situs memutuskan untuk mengategorikannya sebagai konversi, sehingga perlu menginstruksikan browser untuk mencatat konversi—yaitu memicu atribusi. Untuk melakukannya, pengiklan atau penyedia teknologi iklan menyertakan header HTTP khusus yang berisi data kustom tentang konversi dalam responsnya terhadap permintaan piksel.

  7. Browser—di perangkat lokal pengguna—menerima respons ini, dan mencocokkan data konversi dengan peristiwa sumber asli (klik atau penayangan iklan).

  8. Browser menjadwalkan laporan untuk dikirim ke attributionsrc. Laporan ini mencakup:

    1. Data konfigurasi atribusi kustom yang dilampirkan oleh penyedia teknologi iklan atau pengiklan ke peristiwa sumber pada Langkah 3.
    2. Set data konversi kustom di Langkah 6.
    Diagram menunjukkan elemen Pemicuan Attribution Reporting yang menghasilkan laporan tingkat peristiwa dan laporan gabungan.
    Diagram ini menunjukkan elemen-elemen pemicuan Pelaporan Atribusi yang menghasilkan laporan tingkat peristiwa dan laporan agregat.
  9. Selanjutnya, browser akan mengirimkan laporan ke endpoint yang ditentukan di attributionsrc, dengan beberapa penundaan dan gangguan. Laporan yang dapat diagregasi dienkripsi, sedangkan laporan tingkat peristiwa tidak.

Pemicu atribusi (situs pengiklan)

Pemicu atribusi adalah peristiwa yang memberi tahu browser untuk merekam konversi.

Sebaiknya catat konversi yang paling penting bagi pengiklan, seperti pembelian. Beberapa jenis konversi dan metadata dapat dicatat dalam laporan ringkasan.

Hal ini memverifikasi bahwa hasil gabungan sudah mendetail dan akurat untuk peristiwa ini.

Mencocokkan sumber dengan pemicu

Saat browser menerima respons pemicu atribusi, browser akan mengakses penyimpanan lokal untuk menemukan sumber yang cocok dengan asal pemicu atribusi dan eTLD+1 URL halaman tersebut.

Misalnya, saat browser menerima pemicu atribusi dari adtech.example di shoes.example/shoes123, browser akan mencari sumber di penyimpanan lokal yang cocok dengan adtech.example dan shoes.example.

Filter (atau aturan kustom) dapat ditetapkan untuk menentukan kapan pemicu dicocokkan dengan sumber tertentu. Misalnya, tetapkan filter untuk menghitung hanya konversi untuk kategori produk tertentu dan mengabaikan semua kategori lainnya. Filter dan model prioritas memungkinkan pelaporan atribusi yang lebih canggih.

Jika beberapa sumber atribusi ditemukan di penyimpanan lokal, browser akan memilih sumber yang terakhir disimpan. Dalam beberapa kasus saat sumber atribusi diberi prioritas, browser akan memilih sumber dengan prioritas tertinggi.

Pengumpulan data

Bersama-sama, pemicu atribusi yang cocok dengan sumber yang sesuai, dikirim sebagai laporan oleh browser ke endpoint pelaporan di server milik teknologi iklan (terkadang disebut sebagai endpoint pengumpulan atau layanan pengumpulan). Laporan ini dapat berupa laporan tingkat peristiwa atau laporan gabungan.

Laporan agregat digunakan untuk membuat laporan ringkasan. Laporan yang dapat digabungkan adalah kombinasi data yang dikumpulkan dari iklan (di situs penayang) dan data konversi (dari situs pengiklan) yang dibuat dan dienkripsi oleh browser di perangkat pengguna sebelum dikumpulkan oleh teknologi iklan.

Laporan tingkat peristiwa tertunda antara 2 hingga 30 hari. Laporan gabungan dikirim dengan penundaan acak dalam waktu satu jam dan peristiwa harus sesuai dengan anggaran kontribusi. Pilihan ini melindungi privasi dan mencegah eksploitasi tindakan pengguna perorangan.

Jika Anda hanya tertarik dengan laporan tingkat peristiwa, inilah bagian terakhir dari infrastruktur yang Anda butuhkan. Namun, jika ingin membuat laporan ringkasan, Anda harus memproses laporan yang dapat diagregasi dengan layanan tambahan.

Pembuatan laporan ringkasan

Untuk membuat laporan ringkasan, Anda akan menggunakan Layanan Agregasi (yang dioperasikan oleh teknologi iklan) untuk memproses laporan yang dapat diagregasi. Layanan Agregasi menambahkan derau untuk melindungi privasi pengguna dan menampilkan laporan ringkasan akhir.

Laporan agregat dikumpulkan, dikelompokkan, dan dikirim ke lingkungan teknologi iklan.
Diagram ini menggambarkan alur asinkron data dari endpoint pengumpulan, laporan batch, melalui pemrosesan di Layanan Agregasi milik teknologi iklan.

Setelah mengelompokkan laporan agregat yang dikumpulkan, batch akan diproses oleh Layanan Agregasi. Koordinator memberikan kunci dekripsi hanya ke Layanan Agregasi versi yang telah di-attestasi. Layanan Agregasi kemudian mendekripsi data, menggabungkannya, dan menambahkan derau sebelum menampilkan hasilnya sebagai laporan ringkasan.

Laporan gabungan yang dikelompokkan

Sebelum diproses, laporan gabungan harus dikelompokkan. Batch terdiri dari laporan agregat yang dikelompokkan secara strategis. Strategi Anda kemungkinan besar akan mencerminkan jangka waktu tertentu (seperti harian atau mingguan). Proses ini dapat terjadi di server yang sama yang berfungsi sebagai endpoint pelaporan Anda.

Batch harus berisi banyak laporan untuk memastikan rasio sinyal terhadap derau tinggi.

Jangka waktu yang lebih panjang menghasilkan hasil yang tidak terlalu bising.
Bandingkan menunggu 1 hari dan 1 minggu. Dalam 1 jam, Anda akan mendapatkan nilai ringkasan yang lebih kecil dengan hasil yang cenderung lebih bising. Dalam satu hari, Anda akan memiliki nilai ringkasan yang lebih besar sehingga kemungkinan tidak terlalu berisik.

Periode batch dapat berubah kapan saja untuk memastikan Anda mencatat peristiwa tertentu yang diharapkan memiliki volume lebih tinggi, seperti untuk penjualan tahunan. Periode pengelompokan dapat diubah tanpa perlu mengubah sumber atau pemicu atribusi.

Layanan Agregasi

Layanan Agregasi bertanggung jawab untuk memproses laporan gabungan guna membuat laporan ringkasan. Laporan gabungan dienkripsi dan hanya dapat dibaca oleh Layanan Agregasi, yang berjalan di trusted execution environment (TEE).

Layanan Agregasi meminta kunci dekripsi dari koordinator untuk mendekripsi dan menggabungkan data. Setelah didekripsi dan digabungkan, hasilnya akan diberi derau untuk menjaga privasi dan ditampilkan sebagai laporan ringkasan.

Praktisi dapat membuat laporan cleartext yang dapat digabungkan untuk menguji Layanan Agregasi secara lokal. Atau, Anda dapat menguji dengan laporan terenkripsi di AWS dengan Nitro Enclaves.

Apa langkah selanjutnya?

Kami ingin memulai percakapan dengan Anda untuk memastikan kami membangun API yang berfungsi bagi semua orang.

Membahas API

Seperti Privacy Sandbox API lainnya, API ini didokumentasikan dan dibahas secara publik.

Bereksperimen dengan API

Anda dapat bereksperimen dan berpartisipasi dalam percakapan tentang Attribution Reporting API.