En los últimos seis meses, hemos logrado derrotar el "clic" de nuestra publicidad contextual con un presupuesto de 1 millón de rublos por mes.
La clave para derrotar el fraude fue el monitoreo por minuto del tráfico con notificaciones de cambios anormales y la desactivación de anuncios problemáticos por API, y una serie de informes que reflejan la situación en tiempo real.
Figura 1. Gráfico del número de visitantes por palabras clave por decaminas¿Cómo sabes que estás siendo atacado?
Una de las primeras señales de un "clic" de publicidad será un aumento en el porcentaje de reembolsos por fraude en Yandex.Direct y AdWords.“En Yandex Direct, los gastos por fraude se devuelven automáticamente al saldo de la campaña publicitaria. El número de clics eliminados por el sistema antifraude se muestra en los informes "estadísticas diarias" "estadísticas generales" en la línea "clics no válidos para todo el período seleccionado".
-
Ayuda J. Dirija "clics no válidos" .
En AdWords, se puede habilitar la visualización del nivel de "clics no válidos" en la pestaña "columnas":
Figura 2. Columnas personalizadas con un nivel de "clic no válido" en AdWordsEn nuestro caso, con un nivel promedio de "
clics no válidos " en Yandex. Directo ≈ 10%, Yandex de repente comenzó a devolver el 40% del presupuesto publicitario y, después de un mes, el 54%.
La siguiente señal de fraude es un aumento irrazonable en el número de transiciones y cambios fuertes en los indicadores de comportamiento para varios grupos de anuncios.Notamos que, para varias palabras clave que nunca tuvieron más de 200 visitantes al día, aparecieron repentinamente picos de hasta 3.000 visitantes. De hecho, el presupuesto, en los días de tales actividades, podría destinarse a una campaña publicitaria si no se detenía a tiempo.
Figura 3. Crecimiento de tráfico irrazonable para un grupo de anuncios en particular en DirectYandex y Google no protegen contra el fraude
Es suficiente leer la
discusión sobre el nivel de fraude en la publicidad contextual en el Direct Club oficial para asegurarse de que muchos anunciantes pierdan dinero debido al fraude.
Google reconoce oficialmente los errores de su sistema de seguridad y proporciona a los anunciantes "Reclamaciones de reembolso" (retorno del presupuesto). Según las estadísticas del servicio ClickSease, Google Ads devuelve un promedio del 12% del presupuesto publicitario.
Cómo reembolsar parte del dinero por un clic a través de AdWordsDebe enviar una
queja sobre "clics no válidos" a Adwords, después de lo cual se le reembolsará con ≈ 12% del dinero gastado. Además, el servicio ClickSease envía automáticamente a Google solicitudes similares de reembolso cada 2 meses.
En nuestro caso, Google AdWords reconoció por primera vez el 18% de nuestro tráfico como "
no válido " y devolvió el dinero por ellos, y cuando enviamos la queja de "reclamos de reembolso", Google reembolsó otro 13% del presupuesto.
Yandex no reconoce la vulnerabilidad de sus propios filtros de protección y las quejas sobre casos de fraude obvios, envía una respuesta de plantilla de que el problema radica en el anunciante y su sitio.
En nuestro caso, el porcentaje de "clics no válidos" en el informe de Y. Direct nunca aumentó por encima del codiciado 50% para ninguna de las campañas publicitarias, incluso en los días de los arrebatos más violentos, cuando el 80% del presupuesto "se fusionó" en el grupo de anuncios generalmente poco popular sin llamadas y aplicaciones.
Figura 4. El nivel de "clics no válidos" en una de las campañas en Direct¿Qué nivel de ataque encontramos?
El tráfico fraudulento se dirigió a cuatro líneas comerciales en dos ciudades. Cuando se conectan nuevas campañas publicitarias o se inician campañas detenidas, en unas pocas horas también se les redistribuyó el "clic".
Click Fraud no estuvo vinculado al tiempo, y la redistribución del presupuesto, por ejemplo, por la noche, no tuvo ningún efecto: todavía obtuvimos nuestro volumen de tráfico restante. "Hacer clic" fue igualmente activo en el YAN, en la búsqueda de Yandex y en la Red de Display de Google.
En el sitio, los robots simularon el comportamiento del usuario, navegaron a través de secciones del sitio, seleccionaron el texto, naturalmente desplazaron y movieron el cursor.
¿Hay remedios ya hechos?
Todos los servicios de protección contra el fraude de clics tienen solo una herramienta de lucha directa: esto es bloquear direcciones IP sospechosas o sitios de ubicación en las campañas de Ya.Direct y AdWords.
En caso de que se usen IP dinámicas en su contra, cualquier servicio de control de fraude de clics siempre estará un paso por detrás de los estafadores para bloquearlos por IP: el bot ya hará varios clics en su anuncio cuando el servicio ponga en la lista negra esta IP y deja de mostrar anuncios en él. Además, después de que el software fraudulento no pueda ver sus anuncios, simplemente cambiará la dirección IP, el ID de hardware y continuará sus acciones.
Al atacar anuncios en la Red de Display de Google o en YAN, generalmente se utilizan varias ubicaciones, y los sistemas de protección automática no pueden detectar sitios sospechosos para el bloqueo.
Volvamos al bloqueo de IP: aquí llegamos a la parte más interesante: si AdWords le permite bloquear hasta 500 direcciones IP, entonces
Yandex Direct puede bloquear solo 25 direcciones IP únicas por campaña publicitaria. Esta pequeña lista negra de direcciones IP ya no es relevante, ya que ahora puede comprar 500 direcciones IPv4 de forma segura por 10 mil rublos y eludir esta limitación.
Hay dos formas de protegerse de los "clics" de alto nivel:
- aprenda a no mostrar anuncios a usuarios o bots fraudulentos, para lo cual necesita encontrar ciertos "patrones" en su comportamiento y características;
- detener temporalmente grupos de anuncios específicos y palabras clave que se están orientando.
Cortar parte de la audiencia para salvar la mayor parte
Si aprende a no mostrar publicidad de clics a bots o usuarios fraudulentos, entonces no podrán dañar.
Siempre puede rastrear patrones similares de comportamiento y patrones, por ejemplo, que el fraude generalmente se ejecuta en Windows 7 de 5:00 a 9:00 en Moscú, y establecer un ajuste de la oferta de -100% para un público similar en todas las campañas publicitarias atacadas. La funcionalidad de los
ajustes de la
oferta en AdWords es bastante extensa, lo que no se puede decir sobre los
ajustes en Yandex Direct .
Estamos buscando patrones de fraude a través de los servicios de seguridad.
Para tener una idea de cómo nos están atacando exactamente y rastrear manualmente patrones en tráfico fraudulento, conectamos el
servicio antifraude ruso
ClickFrog . El producto ha sido conocido por todos desde hace mucho tiempo, popular en el entorno de CPA, etc.
ClickFrog demostró rápidamente una discapacidad completa:
- por día asignado no más de 40 direcciones IP sospechosas, con tráfico de Direct a 3.000 mil clics por día e, incluso reconocido por Yandex, 1300 clics "izquierdos" por día;
- la herramienta principal para proteger el servicio es el bloqueo por dirección IP, cuyo comando se envía a través de API a J. Direct, sin embargo, tan pronto como se complete la lista negra de 25 direcciones IP, debe eliminar manualmente las últimas IP en cada campaña publicitaria y esperar a que se complete la siguiente lista, y Entonces en un círculo.
Luego, instalamos el código para
ClickSease , un servicio estadounidense dirigido a AdWords y que aún no funciona con Yandex.Direct. El servicio, por cierto, tiene, a diferencia de ClickFrog, un período de prueba gratuito de 2 semanas.
ClickSease resultó ser más útil: comenzó a capturar 300-400 IP fraudulentas únicas por día. Para cada servicio de IP bloqueado da estadísticas:
- Proveedor de servicios de internet
- la plataforma desde la cual ocurrió la transición;
- sistema operativo
- ID de dispositivo único
- tiempo de la primera y última transición;
- región
Del informe ClickSease, pudimos identificar patrones en el fraude:
- en el 81% de los casos, el dispositivo simula un sistema operativo móvil: Android o iOS;
- En el 59% de los casos, la geolocalización de la dirección IP no se aplica a Moscú, con fraude dirigido a Moscú.
Buscando patrones en fraude manualmente
Sin embargo, incluso estos patrones obvios no fueron suficientes para reducir el daño causado por el fraude, y no quería desactivar los anuncios móviles. Los servicios generalmente solo pueden dar ideas para identificar patrones similares en fraude, y luego debe detectar el fraude en Metric (en caso de un ataque directo) y seleccionarlo en un segmento separado de Yandex Audience para su posterior análisis y bloqueo.
Figura 5. Un ejemplo de análisis de tráfico por grupos de edad en la métrica para buscar patrones de fraudeTramos de tráfico para ayudar a identificar patrones de fraude:
- dinámica de audiencia por grupos de edad;
- dinámica de los intereses a largo plazo de los usuarios;
- dispositivo y dinámica del sistema operativo.
En el caso de AdWords, la mecánica de la acción contraria es clara:- definimos un segmento de audiencia "infectado" con fraude;
- Establecemos ajustes de la oferta de -100% para el segmento seleccionado;
- Monitoreamos los cambios en los indicadores: conversión, tiempo en el sitio, profundidad de visualización, tasa de rebote.
En Yandex Direct, la mecánica de la lucha es más compleja y se divide en dos opciones:a) logró encontrar un patrón de fraude obvio relacionado con el género, la edad o la movilidad:
- establecemos un ajuste de la oferta de -50% o -100% para el segmento seleccionado;
- Monitoreamos el cambio en los indicadores clave.
b) no se encontraron patrones obvios:
- seleccionamos tráfico fraudulento en un segmento separado de Yandex.Audience (por ejemplo, sabía que del 1 de octubre al 20 de octubre no podía haber 5,000 clics en un grupo de anuncios, que siempre tenía no más de 30 visitas por día)
- A través de Yandex, creamos un segmento de usuarios similar a nuestro fraude;
- establecer un ajuste de la oferta de -100% para un segmento de audiencia creado manualmente;
- Probamos cuidadosamente la reducción en las tarifas publicitarias para los segmentos creados por Yandex.
Cree gráficos que muestren fraude
El fraude siempre genera focos y picos obvios , ya sea software abstruso con una imitación del comportamiento de un usuario real o de un grupo de autónomos que realizan la tarea técnica.
Figura 6. Gráfico del número de visitantes por palabras clave por decaminasEl fraude ocurre de manera desigual por varias razones:
- Para "suavizar" el ataque, debe tener información confidencial y saber quién, cuándo y cuántos clics hacen sus anuncios;
- el software actúa de manera brusca, y en el minuto, 10 minutos y, a veces, en el gráfico horario, sus acciones serán sorprendentes;
- incluso si los "escolares" trabajan en su contra desde los tableros de anuncios, entonces actúan en una tarea específica con un algoritmo, y las anomalías generadas por ellos serán fáciles de rastrear.
Si aprende a encontrar y eliminar rápidamente los focos, puede reducir significativamente el daño del fraude. En nuestro caso, un signo obvio fue un aumento anormal en el número de clics en publicidad contextual en 10 minutos específicos o un minuto para algunas palabras clave.
Para la visualización,
Google Data Studio es el más adecuado, ya que solo Analytics puede recopilar correctamente los datos desglosados en el tiempo en 1 y 10 minutos, y Metrika, al generar informes sobre dekomints, proporciona indicadores incorrectos.
Cómo construir gráficos en 10 minutos, no por hora, en Google Data StudioDe forma predeterminada, en Analytics o Data Studio, no puede crear gráficos por minuto o durante 10 minutos, pero esto se puede hacer de la siguiente manera en Date Studio:
Paso 1. Edición de campo abierto

Paso 2. Cree copias de los siguientes campos: Año, Mes del año, Día del mes, Hora, Minuto y asígneles un nombre, por ejemplo, Año (día), Mes del año (día), etc. También en los campos copiados, debe cambiar el Tipo del formato de hora y fecha a "número" como se muestra en la figura.
Paso 2. Cambie el tipo del campo copiado de "fecha" a "número"Paso 3. Cree un nuevo campo en el que escribamos la siguiente fórmula: Año (día) * 10000000 + Mes del año (día) * 100000 + Día del mes (día) * 1000 + Hora (día) * 10 + PISO (Minuto (día) / 10)
Paso 3. Cree un campo calculado "Tiempo para 10 minutos"Paso 4. Guardamos el campo creado, luego volvemos a la lista de todos los campos y encontramos nuestro nuevo campo "Tiempo por 10 minutos (decamenut)". Es necesario cambiar su tipo de "Número" a "Fecha y hora" como se muestra en la figura, y luego asignar el tipo "Número" a este campo.
Paso 4. Cree un campo calculado "Tiempo para 10 minutos"Paso 5. Cree un "Gráfico combinado" y configure nuestro nuevo campo "Tiempo para 10 minutos" como parámetro, como se muestra en la figura. Listo
Paso 5. Crea un "cuadro combinado" Configurar notificaciones sobre los brotes de fraude
Para no seguir todos los casos de fraude manualmente, hice un informe en Google Sheets, que actualiza los datos cada minuto y notifica el inicio del fraude.
Hojas de cálculo de Google admite la
API de informes principales , a la que se puede acceder a través del Editor de secuencias de comandos en Hojas de cálculo.
Paso 1. Vaya al editor de script para acceder a Analytics
Figura 7. Editor de scripts para acceder a la API de informes de Analytics Core a través de Google TablesPaso 2. Escribimos una solicitud de API a Analytics para recibir datos sobre los indicadores necesarios (por ejemplo, el número de usuarios que hicieron clic en publicidad paga en cada minuto del día, como en nuestro caso).
Código de Google Script para solicitar datos de Analytics en Hojas de cálculo de Googlefunction 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";
Paso 3. Configuramos el disparador para actualizar los datos cada minuto:
Figura 8. Solicitamos nuevos datos cada minuto para una respuesta rápida al fraudePaso 4. Creamos una tabla dinámica a partir de la hoja actualizada con los datos necesarios una vez por minuto, y analizamos estos indicadores para configurar disparadores para notificaciones por correo electrónico o deshabilitar grupos de anuncios utilizando la API Yandex.Direct o AdWords.
Figura 9. Un ejemplo de configuración de fórmulas para notificaciones de anomalíasUn ejemplo de mi código de Google Script para enviar notificaciones por correo electrónico function myFunction() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheetByName("notification"); var range = sheet.getRange("D2:E4");
En pocas palabras: cómo vencer el clic
La lucha contra el fraude de clics se puede dividir en tres grupos:
a) Acciones proactivas:
- cierre de "sitios contaminados";
- Deshabilitar la publicidad para una audiencia con señales de fraude para usted, por ejemplo, para personas que usan tabletas de San Petersburgo (se pueden usar parámetros más complejos para el bloqueo a través de listas de AdWords y segmentos métricos);
- ajuste de la oferta para segmentos de audiencia similares a los segmentos de fraude (los segmentos "similares" se crean en Y. Audiencias y listas de Google);
- bloquee el fraude por las máscaras de red IP (disponible solo en AdWords).
b) Acciones preventivas:
- Informar reembolsos de presupuesto a AdWords y Direct
- la investigación de "quién ordenó el ataque contra usted";
- agrupación de grupos de anuncios sospechosos y frecuentemente atacados en una sola campaña publicitaria;
- Las "trampas" para los bots más simples, es decir, los botones ocultos en el sitio que solo son visibles para el bot y cuando se hace clic, se incluyen en la lista.
c) Acciones "Post factum":
- bloqueo por direcciones IP;
- desconexión rápida de los centros de clics: palabras clave, grupos de anuncios, campañas publicitarias, segmentos de audiencia.
Figura 10. Protección contra el fraude de clicsEnlaces utiles:
Cómo averiguar quién ordenó el ataque a su anuncioCualquier competidor adecuado minimizará su daño al atacar a otros:
- en primer lugar, el atacante intentará no mostrar su anuncio en las direcciones en que se está llevando a cabo el ataque en este momento, para no fusionar su CTR y aumentar su CPC;
- en segundo lugar, un competidor sin escrúpulos seleccionará tales palabras clave para el ataque, según el cual puede dejar de mostrar sus anuncios sin causar mucho daño a sí mismo.
En nuestro caso, el competidor también comenzó a hacer clic en fraude en 4 direcciones en dos ciudades, por lo que no fue difícil calcularlo.
Para facilitar el análisis de los competidores con los que se cruza, puede ver todos los anuncios de competidores incluidos para cada palabra clave en la interfaz Yandex.Direct:
Figura 9. Todos los anuncios de la competencia por palabra clave Quien también se enfrentó al clic publicitario contextual: escriba en los comentarios, ¡trataremos de ayudarnos mutuamente!