Seatext library / BotRefund evidence

How Corroboration Reduces False Positives in Bot Detection

Corroboration lowers false positives by requiring multiple independent signals to agree before a session is classified as a bot, so one unusual signal alone never blocks a real user. BotRefund uses 106 independent checks...

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

What Corroboration Does in Bot Detection

Corroboration means a bot detection system collects multiple independent signals and checks whether they tell the same story before it decides a session is automated. Instead of blocking a visitor the moment one signal looks odd, the system waits to see if other signals agree.

For example, a real user on a corporate VPN might trigger a WebGL texture constraint because their graphics profile looks unusual. If the system blocked on that single signal, a genuine customer would be turned away. With corroboration, that WebGL anomaly becomes one piece of evidence. The system then checks browser behavior, network data, device fingerprints, and interaction patterns. If those other signals look human, the session passes. The anomaly is noted but not treated as a verdict.

BotRefund describes this approach directly: each of its 106 independent checks adds one objective fact, then the system cross-checks whether other signals support the same story, and finally a prediction AI weighs the complete pattern instead of trusting a raw rule. The result, according to BotRefund, is 99% accuracy—because accuracy comes from corroboration, not one browser tell.

Why a Single-Signal Approach Creates False Positives

A false positive happens when a real human visitor gets classified as a bot. The most common cause is over-reliance on a single signal that happens to look suspicious for legitimate reasons.

Privacy tools, corporate networks, travel, and unusual devices can all produce unexpected behavior for genuine people. A user behind a privacy extension might have a modified browser fingerprint. A visitor on a locked-down corporate machine might report graphics details that do not match a consumer profile. A person using an older device might show timing patterns that look slightly off.

If your detection system treats any one of these as proof of automation, you block real users. The more signals you check, the more likely it is that at least one will look strange for an innocent reason. Corroboration flips this problem: more signals mean more context, not more triggers.

The Diagnostic Sequence: How to Evaluate a Suspicious Signal

When a real user triggers one suspicious signal, you need a structured way to decide whether to block, allow, or investigate further. Use this diagnostic sequence to evaluate the session.

Step 1: Identify the Triggering Signal

Name the specific check that flagged the session. Is it a hardware signal like WebGL texture constraint? A behavioral signal like impossible tab speed? A network signal like a residential proxy? Write down what exactly looked suspicious.

BotRefund organizes its 106 checks into categories: hardware and GPU fingerprinting, biometric and behavioral interactions, click behavior, pointer behavior, motion behavior, speed behavior, path behavior, engagement behavior, and session behavior. Knowing which category the signal belongs to helps you understand what kind of mismatch it represents.

Step 2: Check Whether the Signal Is Evidence or a Verdict

Ask: could a real user produce this signal for an innocent reason? If yes, the signal is evidence, not a verdict. BotRefund states this principle directly: a single anomaly is not a bot verdict. Privacy tools, travel, corporate networks, and unusual devices can produce unexpected behavior for genuine people.

If the signal could plausibly come from a real user, you must not block on it alone. Move to the next step.

Step 3: Pull Corroborating Signals from Independent Categories

Look at signals from different categories—not just more signals from the same one. If a WebGL texture constraint triggered, check behavioral signals like mouse movement, click patterns, and session duration. Check network signals like IP reputation and proxy detection. Check device signals like font lists and audio fingerprints.

The key word is independent. Two signals from the same category might share a root cause. A WebGL mismatch and a canvas fingerprint mismatch could both stem from the same spoofing tool. But a WebGL mismatch plus robotic linear mouse movements plus superhuman input speed plus absence of scrolling—that combination is much harder for a real user to produce.

Step 4: Test Whether the Signals Tell the Same Story

Do the corroborating signals support the same conclusion? If the WebGL anomaly is caused by a privacy tool, the behavioral signals should still look human: natural mouse tremor, varied click timing, realistic session duration. If the WebGL anomaly is caused by a headless browser, the behavioral signals will likely also look automated: no pointer movement, grid-aligned paths, sub-millisecond input speeds.

BotRefund describes this as cross-checked context: the system tests whether other signals support the same story. When signals agree, confidence increases. When signals disagree, the single anomaly stays as evidence but does not become a verdict.

Step 5: Let a Prediction Model Weigh the Complete Pattern

Instead of applying a raw rule—“if WebGL looks wrong, block”—a prediction AI evaluates how all signals fit together. BotRefund sends each signal into its prediction AI, which evaluates the complete picture across browser, network, device, and behavior evidence. The model assigns a probability based on the pattern, not a binary pass/fail based on one check.

This matters because real sessions are messy. A human might have one odd signal and five normal ones. A bot might have one obvious signal and several subtle ones. A model that weighs the full pattern can distinguish those cases better than a chain of if-then rules.

Step 6: Verify the Decision Against Known Outcomes

After the model makes its call, check it against what you know about the session. Did the visitor complete a form, scroll through content, or spend meaningful time on the page? Did the session convert in a way that a bot would not? If the model said “human” and the session shows human engagement, the corroboration worked. If the model said “bot” and the session shows no meaningful engagement, the corroboration worked there too.

If the model said “bot” but the session shows clear human engagement—form corrections, scrolling, varied timing—investigate whether your model needs recalibration. That is a potential false positive, and it tells you which signal might be over-weighted.

Common Mistake: Treating One Signal as Proof

The most common mistake in bot detection is treating a single anomaly as proof of automation. This mistake drives false positives directly. A visitor with a privacy extension, a corporate VPN, or an unusual device gets blocked because one signal looked suspicious, even though every other signal looked human.

The fix is simple in principle: never block on a single signal unless that signal is impossible for a real user to produce. A WebGL texture mismatch is possible for real users. Impossible tab speed—interactions faster than a human could physically perform—is closer to impossible. But even then, corroboration adds confidence and reduces the risk of edge cases.

How Corroboration Works Across Signal Categories

BotRefund groups its checks into categories that cover different aspects of a session. Understanding these categories helps you see why corroboration across categories is more powerful than corroboration within one.

Hardware and GPU fingerprinting checks whether the device’s reported graphics, fonts, audio, and operating-system details fit together naturally. Virtual machines and spoofed profiles can claim one device while their graphics or processor behavior tells another story. The WebGL texture constraint is one example: it looks for a mismatch that a real browsing session does not normally create.

Biometric and behavioral interactions check whether the visitor’s actions look human. Real visitors produce imperfect, varied behavior: pauses, hesitation, natural movement, and interactions shaped by reading and decision-making. Scripts can send clicks and scrolls, but they struggle to reproduce the varied timing, movement, and hesitation of real people. Checks in this category include impossible tab speed, robotic linear mouse movements, absence of humanlike mouse tremor, superhuman input speed, and grid-aligned movement patterns.

Click behavior includes ghost click detection, which catches click activity that happens without the natural sequence of human intent. Trap behavior includes honeypot interactions, which watch for bots that respond to hidden or intentionally deceptive page elements. Engagement behavior checks for absence of clicks or scrolling, highlighting sessions that stay too static to match a real browsing journey. Session behavior catches visit lengths that are too short, too long, or too uniform to be human.

When a signal from one category looks suspicious, signals from other categories provide independent evidence. A WebGL mismatch from hardware fingerprinting plus a ghost click from click behavior plus an unnatural session duration from session behavior—that combination is far more convincing than any single signal alone.

Key Facts About BotRefund’s Corroboration Approach

FactDetail
Number of independent checks106 independent checks used to build a picture of whether a visit is human or automated
Single-signal policyA single anomaly is not a bot verdict; signals are kept as evidence, not verdicts
Cross-checking processEach signal is cross-checked against independent browser, network, device, and behavior data
Decision modelA prediction AI weighs the complete pattern instead of trusting a raw rule
Reported accuracy99% accuracy, attributed to corroboration rather than one browser tell
Signal categoriesHardware and GPU fingerprinting, biometric and behavioral interactions, click, pointer, motion, speed, path, engagement, and session behavior

Practical Scenarios: When One Signal Fires but the User Is Real

Scenario 1: Corporate VPN User Triggers a WebGL Anomaly

A finance worker on a locked-down corporate laptop visits your site. The corporate image standardizes graphics drivers, which produces a WebGL texture constraint mismatch. A single-signal system blocks the visit. A corroboration system notes the mismatch, then checks behavioral signals: the visitor scrolls naturally, moves the mouse with typical human jitter, clicks at realistic intervals, and spends two minutes reading a page. The prediction AI weighs the full pattern and classifies the session as human. The WebGL anomaly is logged as evidence but does not block.

Scenario 2: Privacy-Focused User Triggers a Fingerprint Mismatch

A visitor uses a browser extension that randomizes canvas and WebGL fingerprints to prevent tracking. The hardware fingerprinting checks flag the mismatch. But the visitor’s behavioral signals—varied click timing, natural mouse paths with tiny imperfections, realistic session duration—all look human. The prediction AI sees one anomalous hardware signal against a wall of normal behavioral signals and classifies the session as human.

Scenario 3: Bot Triggers One Obvious Signal and Several Subtle Ones

A headless browser visits your site. It triggers impossible tab speed because it sends clicks faster than a human could. That alone is suspicious. Corroboration reveals more: no mouse movement, no scrolling, grid-aligned movement patterns, absence of humanlike mouse tremor, and an unnaturally short session duration. Multiple independent categories agree. The prediction AI classifies the session as a bot with high confidence.

In this scenario, the bot might have been caught on the first signal alone. But corroboration does more than catch bots—it builds the evidence trail. BotRefund captures video proof for each detected bot, which matters when you file refund requests with Google or Meta for invalid clicks.

Scenario 4: Mobile User on a Slow Connection Triggers a Timing Anomaly

A mobile visitor on a slow cellular connection shows unusual timing patterns—long pauses between interactions, sudden bursts of activity when the page loads. A timing-based check flags this as suspicious. But the visitor’s device fingerprint matches a known phone model, the touch interactions have natural variation, and the session duration is realistic for someone reading content on a slow connection. Corroboration prevents a false positive.

Limitations: When Corroboration Does Not Fully Solve the Problem

Corroboration reduces false positives, but it does not eliminate them. Some limitations remain.

Sophisticated bots mimic multiple signals. Modern bots use headless browsers like Puppeteer, Selenium, or Playwright, and some route traffic through residential proxies to bypass geolocation firewalls. Human-in-the-loop CAPTCHA solving services can bypass verification gates. If a bot produces humanlike behavioral signals across multiple categories, corroboration may not catch it. The prediction AI still needs to find the subtle mismatches that remain—timing distributions, input speed distributions, and engagement depth.

More signals mean more processing. Running 106 independent checks per session requires client-side and server-side resources. BotRefund states that setup takes about one minute with no credit card required, but the computational cost of corroboration is real. Systems with fewer checks are faster but less accurate.

Corroboration cannot fix a bad signal. If one of your checks is poorly designed—flagging too aggressively or measuring the wrong thing—corroboration helps by diluting its influence, but it does not fix the underlying check. You still need each individual signal to be as accurate as possible.

Edge cases exist. Some real users will trigger multiple suspicious signals simultaneously. A power user with aggressive privacy settings on an unusual device behind a corporate VPN might look suspicious across several categories. Corroboration reduces this risk but cannot reduce it to zero. The prediction AI must weigh the pattern, not count the flags.

Terminology: Key Terms for Understanding Corroboration

False positive: A real human visitor classified as a bot. This is the primary risk of single-signal detection.

False negative: A bot classified as a human. This is the primary risk of being too lenient.

Independent signal: A check that measures a different aspect of the session—hardware, behavior, network, device—so that a root cause in one category is unlikely to affect another.

Corroboration: The practice of requiring multiple independent signals to agree before classifying a session, so that one anomaly alone does not trigger a verdict.

Prediction AI: A model that weighs the complete pattern of signals rather than applying a raw rule to each one. BotRefund uses this as the final step after collecting and cross-checking evidence.

Evidence vs. verdict: Evidence is a signal that adds one objective fact about the visit. A verdict is the decision to classify the session as bot or human. BotRefund keeps each signal as evidence, not a verdict, until corroboration is complete.

How This Connects to Ad Spend Recovery

False positives are not just a technical problem. When you block real users, you lose conversions. When you fail to catch bots, you waste ad spend on automated clicks. BotRefund states that bot clicks steal up to 20% of Google and Meta ad budgets, and the platform proves bot clicks, negotiates with Google and Meta, and gets your money back.

Corroboration matters here because the proof you submit for a refund needs to be accurate. If your detection system produces false positives, your refund claims include real users misclassified as bots, which weakens your case. If your system misses bots, you leave money on the table. Corroboration—106 independent checks feeding a prediction AI—aims to keep both error rates low.

BotRefund also notes that it recovers bot-click refunds from Google Ads spend dating back to 2017, and that its audit trails are accepted by Meta ad reps. The evidence trail from corroboration is what makes those refund requests credible.

FAQ: Common Questions About Corroboration and False Positives

Why does BotRefund use 106 checks instead of fewer, stronger ones?

More independent checks give the prediction AI more data to weigh. A single strong check can still produce false positives when a real user has an unusual but legitimate configuration. Multiple checks spread the risk: if one check misfires, others provide context that prevents a wrong call.

How does corroboration handle a bot that mimics human behavior?

Corroboration makes it harder for a bot to pass, because the bot must mimic human behavior across all 106 checks, not just one. But sophisticated bots using headless browsers and residential proxies can still slip through. The prediction AI looks for subtle patterns—input speed distributions, timing consistency, engagement depth—that are difficult to fake across every category.

When should I worry about false positives?

Worry when your detection system blocks visitors based on a single signal, especially hardware or network signals that legitimate users can trigger through privacy tools, corporate networks, or unusual devices. If you see real users reporting that they cannot access your site, check whether your system is treating one anomaly as a verdict.

What does it cost to add corroboration-based detection?

BotRefund states that you can add it to your website in about one minute with no credit card required, and offers a free bot audit. Pricing depends on your ad spend range, which you can select on their pricing page. Check with BotRefund directly for current pricing details.

What should I compare when choosing a bot detection system?

Compare the number of independent checks, whether the system treats single signals as evidence or verdicts, whether it uses a prediction model or raw rules, how it handles known false-positive triggers like privacy tools and corporate VPNs, and whether it produces evidence trails you can use for ad platform refund requests.

Can corroboration eliminate false positives entirely?

No. Corroboration reduces false positives by adding context, but edge cases remain. Some real users will trigger multiple suspicious signals. The goal is to minimize false positives while keeping false negatives low enough to catch the bots that matter—especially the ones clicking your paid ads.

How does corroboration help with Google Ads refund requests?

Google requires proof that clicks were invalid before issuing billing credits. Corroboration produces a stronger evidence trail because each flagged session is backed by multiple independent signals, not one check. BotRefund captures video proof for each detected bot and exports detailed client-side behavioral proof logs to support Google invalid click disputes.

Further reading and comparison sources

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

How BotRefund can help

BotRefund uses 106 independent checks across hardware fingerprinting, biometric and behavioral interactions, click behavior, pointer behavior, motion behavior, speed behavior, path behavior, engagement behavior, and session behavior. Each signal is treated as evidence—not a verdict—and cross-checked against independent browser, network, device, and behavior data before a prediction AI weighs the complete pattern.

This corroboration approach is what BotRefund credits for its reported 99% accuracy. The platform also captures video proof for each detected bot and exports client-side behavioral proof logs, which support Google Ads and Meta refund requests for invalid clicks.

One limitation: sophisticated bots using headless browsers, residential proxies, and human-in-the-loop CAPTCHA solving can still mimic multiple signals. Corroboration reduces but does not eliminate false positives and false negatives. Setup takes about one minute with no credit card required, and a free bot audit is available.

Get free bot audit