Inicio
ClikBy
Base de conocimiento ClikBy
Antifraude

Cómo se detecta el fraude

Del isBot en servidor al confirm del SDK y conversion_score — qué mira exactamente ClikBy en cada clic.

12–15 min Actualizado: julio 2026
isBotсигналы
soft/safeрежимы
confirmedстатус

Puntos clave

  • El fraude/basura se captura en cadena: isBot en servidor → (opcional) Smart Traffic SDK → estados visit → conversion_score.
  • Señales del servidor: UA vacío, bot WhichBrowser/DeviceDetector, patrones headless, sin Accept/Accept-Language, IP de datacenter, >30 clics/60 s desde una IP.
  • safe = solo log would_block; soft (ip:/rate:) con Smart Traffic puede seguir adelante (soft_pass).
  • AI Selena define el perfil de score y sf_mode; los umbrales HVT por sí mismos no banean clics — véanse los artículos sobre umbrales y «no hace».

Tres capas de protección

  1. Сервер — antes de servir la página/el redirect: isBot, prefetch skip, escritura bot_server.
  2. SDK de cliente — con Smart Traffic: delay, eventos, fingerprint, behavior, PoW/challenge, confirm.
  3. Analítica de calidad — estados, Audience, conversion_score; opcionalmente FraudDataCollector → exclusions.

En el escenario normal, los píxeles deben disparar para visitas confirmed (y con consentimiento), no para un redirect hard-bot sin tracking.

isBot en servidor

RedirectController::isBot devuelve un código de causa o null. Causas típicas:

Código / grupoУсловие
ua:emptyUser-Agent vacío
ua:whichbrowserWhichBrowser: device.type = bot
ua:dd:…DeviceDetector.isBot()
ua:pattern:…HeadlessChrome, curl, Scrapy, Puppeteer, Selenium, playwright, wget, python-requests, …
header:no-accept-languageSin Accept-Language
header:no-acceptSin Accept
ip:datacenterIP de los rangos config/datacenter_ips
rate:limit>30 clics en 60 segundos desde una IP

Prefetch/prerender (Sec-Purpose) — no se crea una visita. Esto no es «fraude», sino una solicitud técnica previa del navegador.

Hard vs soft vs safe

  • Hard-bot — la mayoría de causas ua:/header: → en modo no-safe: blocked, redirect sin tracking/pixels, visit bot_server, stats bot.
  • Soft-bot — reason empieza por ip: o rate:. Con smart_traffic activo y no-safe es posible soft_pass: siguen hacia SDK/fingerprint, no se cortan de inmediato.
  • safe — sf_mode=safe: action would_block, la decisión se registra, no hay bloqueo duro (útil para calibrar).

Empiece con safe en una campaña en producción si teme cortar tráfico legítimo de datacenter/VPN, luego pase a normal.

Smart Traffic y SDK

Si el enlace tiene smart_traffic=1: se emite un _cb_token, la visita queda pending, los píxeles se aplazan hasta el confirm del cliente vía API Smart Filter. Delay por defecto ≈ 5 s (1–60). Eventos en el enlace: click, scroll, form_submit, custom; lógica AND/OR.

  • Sin confirm, los píxeles no deben contarse como disparados con éxito.
  • un pending de más de ~1 hora puede pasar a bot_filter (AudienceController).
  • Hace falta un dominio personalizado o Smart Traffic — si no, el escenario de píxel no se usa.

Diagnóstico «el píxel calla»: troubleshooting.

Estados de visita

statusКогда
bot_serverHard-block de servidor
pendingEspera SDK / Smart Traffic
confirmedSDK confirm OK (o escenario sin ST y no bot)
bot_filterPending largo sin confirm

En el informe al cliente, separe «clics en Ads» y confirmed en ClikBy — si no, la disputa sobre fraude se vuelve una disputa sobre métricas distintas.

Behavior y conversion_score

Tras el confirm se calcula conversion_score 0–100:

  • Events — 35% (eventos del enlace vs los que se dispararon)
  • Frequency — 20%
  • Time on site — 15% (campana alrededor de sf_ideal_time)
  • Scroll — 10% (alrededor de sf_ideal_scroll)
  • Behavior — 10% (ratón/scroll/tiempos/touch)
  • Fingerprint — 10% (incl. la heurística de hash «demasiado pobre»)

Es una puntuación de calidad de una visita confirmed, no un detector aparte de «granja de clics del competidor». Un fingerprint/behavior sospechoso baja el score; el bot de servidor ya se cortó antes.

Sincronización con cuentas publicitarias

Un circuito aparte FraudDataCollector recoge IP de bot_decisions (blocked) y visits con estados bot_server|bot_filter, más bots fbclid. El comando ad:sync-fraud puede llevar señales a exclusiones/negativos si auto_sync está activo.

No es un botón manual «denunciar a Meta» en la UI de Selena. Confirme con soporte/su tarifa si el sync está activo en su cuenta.

Dónde entra AI Selena

  • Define sf_mode e ideals para el score.
  • Muestra Learning Status / el gabinete de análisis.
  • Retention AISelenaDaysLong participa en el cleanup de PII.
  • Los umbrales HVT/MVT/LVT e interests son UI; no sustituyen la tabla de señales de arriba.

Lista de comprobación

  1. ¿Hay dominio personalizado o Smart Traffic en el enlace con el píxel?
  2. ¿Qué sf_mode tiene el usuario/enlace? ¿Se quedaron en safe en prod sin motivo?
  3. ¿Qué proporción de bot_server / bot_filter / confirmed en el periodo?
  4. ¿Coincide geo/dispositivo con el mediaplan?
  5. ¿rate:limit está cortando sus propias pruebas de carga?
  6. Para retargeting: ¿se han superado confirm + el consentimiento pixel_notification?

¿Qué sigue?

Revise los estados de la semana

Abra Audience en el enlace clave y compare bot_* con confirmed antes de hablar con el cliente.