Bagaimana cara mengalahkan klik di Y. Direct dan AdWords untuk 600 ribu rubel sebulan

Selama enam bulan terakhir, kami telah berhasil mengalahkan "klik" iklan kontekstual kami dengan anggaran 1 juta rubel per bulan.

Kunci untuk mengalahkan penipuan adalah pemantauan lalu lintas per menit dengan pemberitahuan perubahan abnormal dan penonaktifan pengumuman bermasalah oleh API, dan sejumlah laporan yang mencerminkan situasi secara real time.


Gambar 1. Bagan jumlah pengunjung berdasarkan kata kunci dengan decamines

Bagaimana Anda tahu bahwa Anda sedang diserang?


Salah satu tanda pertama dari iklan "klik-tayang" adalah peningkatan persentase pengembalian uang untuk penipuan di Yandex.Direct dan AdWords.
“Di Yandex Direct, biaya untuk penipuan secara otomatis dikembalikan ke saldo kampanye iklan. Jumlah klik yang dihilangkan oleh sistem anti-penipuan ditampilkan dalam laporan "statistik harian" "statistik umum" di baris "klik tidak sah untuk seluruh periode yang dipilih."
- Bantu J. Mengarahkan "klik tidak valid . "

Di AdWords, menampilkan tingkat "klik tidak sah" dapat diaktifkan pada tab "kolom":


Gambar 2. Kolom khusus dengan tingkat "klik tidak sah" di AdWords

Dalam kasus kami, dengan tingkat rata-rata " klik tidak sah " di Yandex.Direct ≈ 10%, Yandex tiba-tiba mulai mengembalikan 40% dari anggaran iklan, dan setelah sebulan, 54% sama sekali.

Tanda penipuan berikutnya adalah peningkatan yang tidak masuk akal dalam jumlah transisi dan perubahan kuat dalam indikator perilaku untuk sejumlah grup iklan.

Kami perhatikan bahwa untuk sejumlah kata kunci yang tidak pernah memiliki lebih dari 200 pengunjung sehari, lonjakan hingga 3.000 pengunjung tiba-tiba muncul. Bahkan, anggaran, pada hari-hari kegiatan semacam itu, dapat digunakan untuk satu kampanye iklan jika tidak dihentikan tepat waktu.


Gambar 3. Pertumbuhan lalu lintas yang tidak masuk akal untuk grup iklan tertentu di Direct

Yandex dan Google tidak melindungi dari penipuan


Cukup membaca diskusi tentang tingkat penipuan dalam iklan kontekstual di Klub Langsung resmi untuk memastikan bahwa banyak pengiklan kehilangan uang karena penipuan.

Google secara resmi mengakui kesalahan sistem keamanannya dan memberikan "Pengembalian Klaim" kepada pengiklan (pengembalian sesuai anggaran). Menurut statistik dari layanan ClickSease, Iklan Google menghasilkan rata-rata 12% dari anggaran iklan.

Cara mengembalikan sebagian uang untuk klik melalui AdWords
Anda harus mengirim keluhan tentang "klik tidak sah" ke Adwords, setelah itu Anda akan diganti dengan ≈ 12% dari uang yang dihabiskan. Juga, layanan ClickSease secara otomatis mengirimkan permintaan serupa untuk pengembalian dana setiap 2 bulan ke Google.

Dalam kasus kami, Google AdWords pertama-tama mengakui 18% dari lalu lintas kami sebagai " tidak valid " dan mengembalikan uang untuk mereka, dan ketika kami mengirim keluhan "klaim pengembalian uang", Google mengembalikan 13% anggaran lainnya.

Yandex tidak mengenali kerentanan filter perlindungannya sendiri dan keluhan tentang kasus penipuan yang jelas, mengirimkan respons templat bahwa masalahnya ada pada pengiklan dan situsnya.

Dalam kasus kami, persentase "klik tidak sah" di Y. Laporan langsung tidak pernah naik di atas 50% yang didambakan untuk kampanye iklan mana pun, bahkan pada masa ledakan paling dahsyat, ketika 80% anggaran "digabungkan" ke dalam grup iklan yang biasanya populer tanpa panggilan dan aplikasi.


Gambar 4. Tingkat “klik tidak sah” di salah satu kampanye di Direct

Apa tingkat serangan yang kita temui?


Lalu lintas penipuan diarahkan ke empat lini bisnis di dua kota. Saat menghubungkan kampanye iklan baru atau memulai kampanye yang sudah lama berhenti, dalam beberapa jam "klik" juga didistribusikan ke mereka.

Penipuan Klik tidak terkait dengan waktu, dan mendistribusikan ulang anggaran, misalnya pada malam hari, tidak berpengaruh: kami masih mendapatkan volume lalu lintas kiri kami. "Mengklik" sama-sama aktif di YAN, pada pencarian Yandex, dan di Jaringan Display Google.

Di situs, bot mensimulasikan perilaku pengguna, menavigasi bagian-bagian situs, teks yang dipilih, digulir secara alami dan memindahkan kursor.

Apakah ada solusi yang sudah jadi?


Semua layanan perlindungan penipuan klik hanya memiliki satu alat melawan langsung - ini memblokir alamat IP mencurigakan atau situs penempatan di Ya.Direct dan kampanye AdWords.

Jika IP dinamis digunakan terhadap Anda, layanan kontrol penipuan klik akan selalu selangkah di belakang scammer dalam memblokirnya dengan IP: bot sudah akan membuat beberapa klik pada iklan Anda pada saat layanan memasukkan daftar hitam ke IP ini. dan berhenti menampilkan iklan di situ. Selain itu, setelah perangkat lunak penipuan tidak dapat melihat iklan Anda, itu hanya akan mengubah alamat IP, Hardware-ID dan melanjutkan tindakannya.

Saat menyerang iklan di GDN atau YAN, berbagai penempatan biasanya digunakan, dan sistem perlindungan otomatis tidak dapat mendeteksi situs yang mencurigakan untuk dicekal.

Mari kita kembali ke pemblokiran IP - di sini kita sampai pada bagian yang paling menarik: jika AdWords memungkinkan Anda untuk memblokir hingga 500 alamat IP, maka Yandex Direct dapat memblokir hanya 25 alamat IP unik per kampanye iklan! Daftar hitam alamat IP yang sedemikian kecil tidak lagi relevan, karena sekarang Anda dapat dengan aman membeli 500 alamat IPv4 untuk 10 ribu rubel dan menghindari batasan ini.

Ada dua cara untuk melindungi diri Anda dari "klik" tingkat tinggi:

  1. belajarlah untuk tidak menampilkan iklan kepada pengguna atau bot yang curang, untuk itu Anda perlu menemukan "pola" tertentu dalam perilaku dan karakteristik mereka;
  2. hentikan sementara grup iklan dan kata kunci spesifik yang sedang ditargetkan.

Potong sebagian audiens untuk menghemat sebagian besar


Jika Anda belajar untuk tidak menampilkan iklan klik kepada bot atau pengguna yang curang, maka mereka tidak akan dapat membahayakan.

Anda selalu dapat melacak pola perilaku dan pola yang serupa, misalnya, bahwa penipuan biasanya berjalan pada Windows 7 dari 5:00 hingga 9:00 di Moskow, dan menetapkan penyesuaian tawaran sebesar -100% untuk pemirsa yang sama di semua kampanye iklan yang diserang. Fungsionalitas penyesuaian tawaran di AdWords cukup luas, yang tidak dapat dikatakan tentang penyesuaian di Yandex Direct .

Kami mencari pola penipuan melalui layanan keamanan


Untuk mengetahui bagaimana sebenarnya mereka menyerang kami dan melacak pola secara manual dalam lalu lintas penipuan, kami menghubungkan layanan anti-penipuan ClickFrog Rusia. Produk ini telah lama dikenal semua orang, populer di lingkungan BPA dan sebagainya.

ClickFrog dengan cepat membuktikan cacat total:

  1. per hari mengalokasikan tidak lebih dari 40 alamat IP mencurigakan, dengan lalu lintas dari Direct pada 3.000 ribu klik per hari, dan, bahkan diakui oleh Yandex, 1.300 klik "kiri" per hari;
  2. alat utama untuk melindungi layanan ini adalah pemblokiran berdasarkan alamat IP, perintah tentang yang dikirim melalui API ke J. Direct, namun, segera setelah daftar hitam 25 alamat IP diisi, Anda perlu secara manual menghapus beberapa IP terakhir dalam setiap kampanye iklan dan menunggu daftar berikutnya diisi, dan jadi dalam lingkaran.

Kemudian, kami memasang kode untuk ClickSease , sebuah layanan Amerika yang ditargetkan pada AdWords dan belum bekerja dengan Yandex.Direct. Layanan, omong-omong, memiliki, tidak seperti ClickFrog, masa percobaan gratis 2 minggu.

ClickSease ternyata lebih bermanfaat: mulai menangkap 300-400 IP penipuan unik per hari. Untuk setiap layanan IP yang diblokir, berikan statistik:

  • Penyedia Layanan Internet
  • platform dari mana transisi terjadi;
  • sistem operasi
  • ID perangkat unik
  • waktu transisi pertama dan terakhir;
  • wilayah.

Dari laporan ClickSease, kami dapat mengidentifikasi pola dalam penipuan:
  • dalam 81% kasus, perangkat mensimulasikan OS seluler: Android atau iOS;
  • dalam 59% kasus, geolokasi alamat IP tidak berlaku untuk Moskow, dengan penipuan diarahkan ke Moskow.

Mencari pola penipuan secara manual


Namun, bahkan pola yang jelas seperti itu tidak cukup untuk mengurangi bahaya dari penipuan, dan saya tidak ingin mematikan iklan seluler. Layanan biasanya hanya dapat memberikan ide untuk mengidentifikasi pola serupa dalam penipuan, dan kemudian Anda perlu mendeteksi penipuan di Metric (dalam kasus serangan terhadap Direct) dan memilihnya di segmen Yandex Audience terpisah untuk analisis dan pemblokiran lebih lanjut.


Gambar 5. Contoh analisis lalu lintas oleh kelompok umur di Metrik untuk mencari pola penipuan

Irisan lalu lintas untuk membantu mengidentifikasi pola penipuan:
  • dinamika audiens berdasarkan kelompok umur;
  • dinamika kepentingan jangka panjang pengguna;
  • dinamika perangkat dan OS.

Dalam kasus AdWords, penanggulangannya jelas:

  1. kami mendefinisikan segmen audiens yang “terinfeksi” dengan penipuan;
  2. Kami menetapkan penyesuaian tawaran -100% untuk segmen yang dipilih;
  3. Kami memantau perubahan indikator: konversi, waktu di situs, kedalaman tampilan, rasio pentalan.

Di Yandex Direct, mekanisme perjuangan lebih kompleks dan dibagi menjadi dua opsi:

a) Anda berhasil menemukan pola penipuan yang jelas terkait dengan jenis kelamin, usia atau mobilitas:

  1. kami menetapkan penyesuaian tawaran -50% atau -100% untuk segmen yang dipilih;
  2. Kami memantau perubahan indikator utama.

b) tidak ditemukan pola yang jelas:

  1. kami memilih lalu lintas penipuan dalam segmen Yandex.Audience yang terpisah (misalnya, Anda tahu bahwa mulai 1 Oktober hingga 20 Oktober tidak ada 5.000 klik pada grup iklan, yang selalu memiliki tidak lebih dari 30 kunjungan per hari)
  2. melalui mirip-mirip Yandex kami membuat segmen pengguna yang mirip dengan penipuan kami;
  3. atur penyesuaian penawaran -100% untuk segmen audiens yang dibuat secara manual;
  4. Kami dengan hati-hati menguji pengurangan tarif iklan untuk segmen yang dibuat oleh Yandex.

Buat bagan yang menunjukkan penipuan


Penipuan selalu menghasilkan fokus dan puncak yang jelas , apakah itu perangkat lunak musykil dengan meniru perilaku pengguna nyata atau sekelompok freelancer yang melakukan tugas teknis.


Gambar 6. Bagan jumlah pengunjung berdasarkan kata kunci dengan decamines

Penipuan terjadi tidak merata karena beberapa alasan:
  • Untuk membuat serangan "dihaluskan" Anda harus memiliki informasi rahasia dan tahu siapa, kapan dan berapa banyak klik yang dilakukan iklan Anda;
  • perangkat lunak bertindak dalam sentakan, dan pada menit, 10 menit, dan kadang-kadang pada grafik per jam, tindakannya akan mengejutkan;
  • bahkan jika "anak sekolah" bekerja melawan Anda dari papan buletin, maka mereka bertindak berdasarkan tugas tertentu dengan suatu algoritma, dan anomali yang dihasilkan oleh mereka akan mudah dilacak.

Jika Anda belajar untuk dengan cepat menemukan dan menghilangkan fokus, maka Anda dapat secara signifikan mengurangi bahaya dari penipuan. Dalam kasus kami, tanda yang jelas adalah peningkatan abnormal dalam jumlah klik pada iklan kontekstual dalam 10 menit tertentu atau satu menit untuk beberapa kata kunci.

Untuk visualisasi, Google Data Studio paling cocok, karena hanya Analytics yang dapat mengumpulkan data secara benar dalam waktu 1 dan 10 menit, dan Metrika, ketika membuat laporan dekomints, memberikan indikator yang salah.

Cara membuat bagan dalam 10 menit, bukan setiap jam, di Google Data Studio
Secara default, di Analytics atau Data Studio, Anda tidak dapat membuat grafik per menit atau selama 10 menit, tetapi ini dapat dilakukan sebagai berikut di Date Studio:

Langkah 1. Buka pengeditan bidang



Langkah 2. Buat salinan bidang-bidang berikut: Tahun, Bulan tahun, Hari bulan, Jam, Menit, dan beri nama, misalnya, Tahun (hari), Bulan tahun tahun (hari), dan sebagainya. Juga di bidang yang disalin, Anda harus mengubah jenis dari format waktu dan tanggal ke "angka" seperti yang ditunjukkan pada gambar.


Langkah 2. Ubah jenis bidang yang disalin dari "date" menjadi "number"

Langkah 3. Buat bidang baru di mana kami menulis rumus berikut: Tahun (hari) * 10000000 + Bulan tahun (hari) * 100000 + Hari dalam bulan (hari) * 1000 + Jam (hari) * 10 + LANTAI (Menit (hari) / 10)


Langkah 3. Buat bidang terhitung “Waktu selama 10 menit”

Langkah 4. Kami menyimpan bidang yang dibuat, lalu kembali ke daftar semua bidang dan menemukan bidang baru kami "Waktu selama 10 menit (decamenut)". Penting untuk mengubah jenisnya dari "Nomor" ke "Tanggal dan waktu" seperti yang ditunjukkan pada gambar, dan kemudian menetapkan jenis "Nomor" kembali ke bidang ini.


Langkah 4. Buat bidang terhitung “Waktu selama 10 menit”

Langkah 5. Buat "Grafik Gabungan" dan setel bidang "Waktu untuk 10 menit" kami yang baru sebagai parameter, seperti yang ditunjukkan pada gambar. Selesai


Langkah 5. Buat "grafik kombo"


Konfigurasikan pemberitahuan tentang wabah penipuan


Agar tidak mengikuti semua kasus penipuan secara manual, saya membuat laporan di Google Sheets, yang memperbarui data setiap menit dan memberi tahu dimulainya penipuan.

Google Sheets mendukung Core Reporting API , yang dapat diakses melalui Editor Skrip di Sheets.

Langkah 1. Buka editor skrip untuk mengakses Analytics


Gambar 7. Editor skrip untuk mengakses API Pelaporan Inti Analytics melalui Google Tables

Langkah 2. Kami menulis permintaan API ke Analytics untuk menerima data pada indikator yang diperlukan (misalnya, jumlah pengguna yang mengklik iklan berbayar pada setiap menit setiap hari, seperti dalam kasus kami).

Kode Google Script untuk meminta data apa pun dari Analytics di Google Sheets
function runDemo() { try { var firstProfile = getFirstProfile(); var results = getReportDataForProfile(firstProfile); outputToSpreadsheet(results); } catch(error) { Browser.msgBox(error.message); } } function getFirstProfile() { var accounts = Analytics.Management.Accounts.list(); if (accounts.getItems()) { var firstAccountId = accounts.getItems()[0].getId(); var webProperties = Analytics.Management.Webproperties.list(firstAccountId); if (webProperties.getItems()) { var firstWebPropertyId = webProperties.getItems()[0].getId(); var profiles = Analytics.Management.Profiles.list(firstAccountId, firstWebPropertyId); if (profiles.getItems()) { var firstProfile = profiles.getItems()[0]; return firstProfile; } else { throw new Error('No views (profiles) found.'); } } else { throw new Error('No webproperties found.'); } } else { throw new Error('No accounts found.'); } } function getReportDataForProfile(firstProfile) { var profileId = firstProfile.getId(); var tableId = 'ga:' + profileId; var startDate = "today"; // getLastNdays(14)  2 weeks (a fortnight) ago. var endDate = "today"; //getLastNdays(0)  Today. var optArgs = { 'dimensions': 'ga:date,ga:hour,ga:minute,ga:sourceMedium', // Comma separated list of dimensions. 'sort': 'ga:date,ga:hour,ga:minute', // Sort by sessions descending, then keyword. //'segment': 'dynamic::ga:isMobile==Yes', // Process only mobile traffic. 'filters': 'ga:sourceMedium==yandex / cpc', 'start-index': '1', 'max-results': '10000' // Display the first 250 results. }; // Make a request to the API. var results = Analytics.Data.Ga.get( tableId, // Table id (format ga:xxxxxx). startDate, // Start-date (format yyyy-MM-dd). endDate, // End-date (format yyyy-MM-dd). 'ga:users', // Comma seperated list of metrics. optArgs); if (results.getRows()) { return results; } else { throw new Error('No views (profiles) found'); } } function getLastNdays(nDaysAgo) { var today = new Date(); var before = new Date(); before.setDate(today.getDate() - nDaysAgo); return Utilities.formatDate(before, 'GMT', 'yyyy-MM-dd'); } function outputToSpreadsheet(results) { var sheets = SpreadsheetApp.getActiveSpreadsheet(); var sheet = sheets.getSheetByName("coeff1"); var range = sheet.getRange('A:E'); range.clear(); // Print the headers. var headerNames = []; for (var i = 0, header; header = results.getColumnHeaders()[i]; ++i) { headerNames.push(header.getName()); } sheet.getRange(1, 1, 1, headerNames.length) .setValues([headerNames]); // Print the rows of data. sheet.getRange(2, 1, results.getRows().length, headerNames.length) .setValues(results.getRows()); } 



Langkah 3. Kami mengatur pemicu untuk memperbarui data setiap menit:


Gambar 8. Kami meminta data segar setiap menit untuk respons cepat terhadap penipuan

Langkah 4. Kami membuat tabel pivot dari lembaran yang diperbarui dengan data yang diperlukan satu menit sekali, dan menganalisis indikator ini untuk mengonfigurasi pemicu untuk pemberitahuan email atau menonaktifkan grup iklan menggunakan Yandex.Direct API atau AdWords.

gambar Gambar 9. Contoh pengaturan rumus untuk pemberitahuan anomali

Contoh kode Google Script saya untuk mengirim pemberitahuan email
 function myFunction() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheetByName("notification"); var range = sheet.getRange("D2:E4"); // The row and column here are relative to the range // getCell(1,1) in this code returns the cell at B2, B2 var cell = range.getCell(1, 2); Logger.log(cell.getValue()); if (cell.getValue() !== "no") { MailApp.sendEmail("your_email@yandex.ru", "Fraud notification "+cell.getValue(), "Check me "+range.getCell(1, 1).getValue()); } else { } var cell2 = range.getCell(2, 2); Logger.log(cell2.getValue()); if (cell2.getValue() !== "no") { MailApp.sendEmail("your_email@yandex.ru", "Fraud notification "+cell2.getValue(), "Check me "+range.getCell(2, 1).getValue()); } else { } var cell3 = range.getCell(3, 2); Logger.log(cell3.getValue()); if (cell3.getValue() !== "no") { MailApp.sendEmail("your_email@yandex.ru", "Fraud notification "+cell3.getValue(), "Check me "+range.getCell(3, 1).getValue()); } else { } } 


Intinya: bagaimana cara mengalahkan klik


Melawan penipuan klik dapat dibagi menjadi tiga kelompok:

a) Tindakan proaktif:
  • penutupan "situs yang tercemar";
  • Menonaktifkan iklan untuk audiens dengan tanda-tanda penipuan untuk Anda, misalnya, untuk orang-orang di tablet dari St. Petersburg (parameter yang lebih kompleks untuk pemblokiran dapat digunakan melalui daftar AdWords dan segmen Metrik);
  • penyesuaian tawaran untuk segmen audiens yang mirip dengan segmen penipuan (segmen “mirip” dibuat di Y. Audiens dan daftar Google);
  • blokir penipuan oleh topeng jaringan IP (hanya tersedia di AdWords).

b) Tindakan pencegahan:
  • Melaporkan pengembalian anggaran ke AdWords dan Direct
  • investigasi "yang memerintahkan serangan terhadap Anda";
  • pengelompokan grup iklan yang mencurigakan dan sering diserang ke dalam satu kampanye iklan;
  • "Traps" untuk bot paling sederhana, yaitu tombol tersembunyi di situs yang hanya terlihat oleh bot dan ketika diklik akan masuk ke daftar.

c) tindakan “Pasca factum”:
  • pemblokiran oleh alamat IP;
  • pemutusan cepat pusat klik: kata kunci, grup iklan, kampanye iklan, segmen audiens.

gambar
Gambar 10. Perlindungan terhadap penipuan klik

Tautan yang bermanfaat:


Cara mengetahui siapa yang memerintahkan serangan terhadap iklan Anda
Pesaing manapun yang memadai akan meminimalkan kerusakan mereka ketika menyerang orang lain:

  1. pertama, penyerang akan berusaha untuk tidak menampilkan iklannya ke arah bahwa serangan sedang terjadi saat ini, agar tidak menggabungkan CTR dan meningkatkan BPK-nya;
  2. kedua, pesaing yang tidak bermoral akan memilih kata kunci untuk serangan itu, yang menurutnya dia dapat berhenti menampilkan iklannya tanpa banyak merugikan dirinya sendiri.

Dalam kasus kami, pesaing juga mulai mengklik penipuan di 4 arah di dua kota, jadi tidak sulit untuk menghitungnya.

Untuk membuatnya lebih mudah untuk menganalisis pesaing Anda bersinggungan, Anda dapat melihat semua iklan pesaing yang disertakan untuk setiap kata kunci di antarmuka Yandex.Direct:


Gambar 9. Semua iklan pesaing berdasarkan kata kunci


Yang juga menghadapi klik iklan kontekstual - tulis di komentar, kami akan mencoba saling membantu!

Source: https://habr.com/ru/post/id423335/


All Articles