Seatext library / BotRefund evidence

How Corroboration Stops Sophisticated Bots That Pass a Single Test

Corroboration stops sophisticated bots that pass a single test by cross-checking multiple independent signals across browser, device, network, and behavior layers instead of relying on one check like a CAPTCHA or WebGL test. A...

Built for advertisers who need clear, refund-ready traffic evidence.

Corroboration stops sophisticated bots that pass a single test by cross-checking multiple independent signals across browser, device, network, and behavior layers instead of relying on one challenge like a CAPTCHA or WebGL test. A bot that can fake one signal will almost always leave inconsistencies when evaluated against other data points, making automated traffic detectable even when it bypasses initial verification gates.

This approach works because no single bot emulation is perfect: a headless browser that spoofs a WebGL profile to match a real MacBook Pro will still likely show robotic mouse movements, superhuman input speeds, or interactions with hidden honeypot elements that a real user would never trigger.

Why Single-Test Bot Detection Fails Against Modern Bots

Basic bot defenses like CAPTCHAs, simple WebGL checks, or IP blocklists are easy for sophisticated bots to bypass. Fraudsters use headless browsers (Puppeteer, Selenium, Playwright), human-in-the-loop CAPTCHA solving services, spoofed device profiles, and residential proxy networks to pass individual tests while mimicking real user behavior at a surface level.

These bots are designed to clear one specific hurdle, not to perfectly replicate the full, messy pattern of human browsing. That gap is where corroboration catches them.

How Corroboration Works to Catch Bots That Pass One Check

Corroboration treats every collected signal as a piece of evidence, not a standalone verdict. For example, BotRefund uses 106 independent checks covering hardware fingerprinting, WebGL texture constraints, mouse movement patterns, input speed, session behavior, and network data.

When a visit passes a single WebGL texture constraint test, the system does not mark it as human. Instead, it cross-checks that result against other signals: does the session have natural mouse tremor? Did the user scroll the page? Did they interact with hidden honeypot elements? Is their input speed within human limits? A prediction AI then weighs the full pattern of all signals to make a final human-or-bot call, rather than trusting any single rule.

Hypothetical Scenario: A Bot That Passes a WebGL Test but Fails Corroboration

This is a labelled hypothetical scenario to illustrate how multi-signal validation works in practice.

A fraudster builds a bot designed to pass the WebGL texture constraint test, a common check that looks for mismatches between a device's claimed hardware and its graphics rendering output. The bot spoofs a WebGL profile that exactly matches a 2023 MacBook Pro, so it passes this single test with no flags.

But the bot fails corroboration because of inconsistencies across other independent signals:

  • It fills out a lead form in 0.8 milliseconds, far faster than any human could type
  • It moves its pointer in perfectly straight lines with no natural jitter or tremor
  • It never scrolls the landing page or clicks any elements other than the form submit button
  • It interacts with a hidden honeypot form field that real users cannot see
  • Its IP address comes from a residential proxy pool previously linked to ad fraud
  • Its session duration is exactly 120 seconds, a uniform length that does not match real user behavior

Even though it passed the single WebGL test, the combination of these other signals leads the corroboration system to correctly flag the visit as automated.

Prerequisites for Implementing Corroboration-Based Bot Detection

Before you can use corroboration to catch sophisticated bots, you will need:

  1. Client-side signal collection deployed across all user touchpoints (landing pages, form submission flows, ad click landing pages)
  2. A set of independent signal checks covering browser, device, network, and behavior metrics
  3. A prediction model that weighs all signals together instead of using raw rule-based blocks
  4. Baseline data on normal human behavior for your specific audience to reduce false positives
  5. Integration points with your ad platforms, CRM, or website security tools to act on detection results

Step-by-Step Implementation Process

Follow these ordered steps to implement corroboration-based bot detection for your site:

  1. Deploy signal collection: Add a lightweight client-side script to your website to collect browser, device, network, and behavior data from all visitors. This takes as little as 1 minute for basic deployment.
  2. Configure independent checks: Enable a set of non-overlapping signal checks, including WebGL texture constraint, mouse movement analysis, input speed tracking, honeypot trap monitoring, and session duration tracking. Ensure no single check is treated as a final verdict.
  3. Set cross-signal validation rules: Configure your system to flag visits where multiple independent signals point to automated activity, even if no single check triggers a block. Feed all signal data into a prediction AI to weigh the full pattern of behavior.
  4. Integrate with your workflows: Connect detection outputs to your ad platform dispute workflows, lead quality filters, or website security blocks to act on flagged traffic. For ad fraud use cases, ensure the system logs client-side proof (including GCLID or FBCLID click identifiers) to support refund requests.

Verification Step: Confirm Corroboration Is Catching Bots That Pass Single Tests

To verify your implementation is working as intended:

  1. Run a controlled test using a headless browser bot configured to pass a single WebGL texture constraint test. Confirm the system flags the bot based on other inconsistent signals (e.g. superhuman input speed, no mouse movement).
  2. Audit real flagged traffic to measure how many visits passed at least one individual check but were caught by cross-signal analysis. A well-configured corroboration system will catch the majority of sophisticated bots via this multi-signal validation.
  3. For ad fraud use cases, test that flagged bot clicks generate audit-ready proof logs that are accepted by Google and Meta's click quality teams for refund disputes.

Key Facts About Corroboration-Based Bot Detection

CriteriaDetail
Core mechanismEvaluates 100+ independent browser, device, network, and behavior signals instead of relying on single checks
Single test limitationA bot that passes one check (e.g. WebGL texture constraint, CAPTCHA) will almost always leave inconsistencies across other signals
Accuracy claim99% accuracy when all signals are weighed by a prediction AI model (per BotRefund source data)
Common use casesAd click fraud detection, lead quality filtering, conversion pixel protection
Typical setup timeAs little as 1 minute to deploy basic signal collection on a website
Refund eligibilityCan generate audit-ready proof to dispute invalid clicks with Google and Meta, with Google Ads claims eligible for refunds dating back to 2017

Limitations of Corroboration-Based Detection

Corroboration is not a perfect solution, and there are key limitations to note:

  • No bot detection system is 100% accurate. Legitimate users on corporate networks, using privacy tools, or accessing your site from unusual devices may trigger single anomalies, which is why the system treats signals as evidence rather than final verdicts.
  • Bots that are custom-built to perfectly emulate all 100+ human signals are extremely rare and cost-prohibitive for most fraudsters, but they are not technically impossible to build.
  • Very low-traffic websites may have less accurate prediction models, as there is less baseline human behavior data to compare new visits against.
  • Corroboration detects bot traffic but does not block it by default unless configured to do so; you will need to integrate it with your existing security or ad platform workflows to act on flags.

Frequently Asked Questions

Can a bot ever pass all corroboration checks?

Extremely rarely. It would require perfect emulation of human behavior, device details, network patterns, and input mechanics across 100+ independent signals, which is cost-prohibitive for all but the most well-funded fraud operations.

Does corroboration block real users by mistake?

Rarely. The system treats single anomalies as evidence rather than a final verdict, and cross-checks against other consistent signals to confirm legitimacy. Unusual but legitimate user behavior (such as corporate VPN use or privacy tool activation) is usually validated by other matching signals.

How long does it take to implement corroboration-based bot detection?

Basic signal collection can be deployed in as little as 1 minute, with full cross-signal validation and integration with ad platforms or CRM taking a few hours to configure for most sites.

Can corroboration help me get refunds for invalid ad clicks?

Yes. If the system logs client-side behavioral proof of bot clicks (including click identifiers like GCLID for Google Ads or FBCLID for Meta), you can submit that evidence to ad platform click quality teams to dispute charges. Google Ads refund claims are eligible for spend dating back to 2017.

Is corroboration better than a CAPTCHA for bot detection?

For most use cases, yes. CAPTCHAs can be bypassed cheaply with human-in-the-loop solving services, while corroboration evaluates multiple signals that are far harder for bots to fake consistently. CAPTCHAs also create friction for real users, while corroboration works invisibly in the background.

Further reading and comparison sources

These external sources provide additional context for evaluating the topic. Their inclusion is not an endorsement.

Learn more

Visit the website for more information.

Learn more