Seatext library / BotRefund evidence
Why Single-Signal Bot Detection Fails: How Attackers Evade One Check and What Works Instead
Single-signal bot detection fails because attackers can spoof or rotate the one attribute you're checking — user agent, IP reputation, or a single browser API — without touching the rest of the session. When...
✓ Built for advertisers who need clear, refund-ready traffic evidence.
Single-signal bot detection is easy to evade because an attacker only needs to falsify the one data point your rule inspects. If you block based on a headless Chrome flag, the bot patches that flag. If you filter on data-center IPs, the bot routes through a residential proxy. If you look for a missing navigator.webdriver property, the script defines it. The cost to the attacker is a few lines of code; the cost to you is a never-ending rule-update cycle.
BotRefund's own detection pages state it plainly: "A single anomaly is not a bot verdict." Privacy tools, corporate networks, travel, and unusual devices can all trigger one odd signal for a real person. Treating any single signal as a verdict produces false positives and gives attackers a clear target to spoof. The alternative is corroboration — collecting many independent signals (browser, network, device, behavior) and weighing the complete pattern instead of trusting a raw rule.
Why Single Signals Fail: The Spoofing Problem
Every bot detection signal is a fact about the visitor's environment: the browser's JavaScript APIs, the network's IP reputation, the device's hardware fingerprints, the user's mouse movements and click timing. A single-signal rule says "if this fact looks automated, block." The attacker's job is to make that one fact look human.
Because browsers are programmable, almost any single fact can be overridden. Automation frameworks (Puppeteer, Playwright, Selenium) and anti-detect browsers let scripts:
- Define or delete
navigator.webdriverand related properties - Patch
console.debugand other developer-tool APIs to match a real browser - Spoof screen resolution, color depth, and hardware concurrency
- Rotate user-agent strings and client hints
- Inject realistic mouse curves, click delays, and scroll jitter
When your defense checks only one of these, the attacker fixes that one. The rest of the session can remain visibly automated, but the gate opens because the single ticket was punched.
How Attackers Evade Specific Checks
The source pack describes several of BotRefund's 106 independent checks. Each illustrates a different evasion surface:
Console Debug Evaluator (browser API integrity)
Automation tools often patch or hide browser APIs to avoid detection. The Console Debug Evaluator looks for mismatches that appear when the browser is checked from another angle — for example, a patched API that behaves inconsistently when probed differently. An attacker who knows this check exists can ensure the patched API behaves consistently across all probes, or can avoid patching it entirely and instead run a real browser with a remote-debugging port.
Suspicious Ports (network coherence)
This check looks for disagreements between connection, location, language, and timing signals. A bot using a proxy rotation service may present a residential IP from one region while the browser's timezone and language headers say another. The evasion is to synchronize all network-layer signals: use a proxy exit node that matches the spoofed timezone, language, and ISP ASN.
window.open Tamper (behavioral biometrics)
Scripts can send clicks and scrolls, but they struggle to reproduce the varied timing, hesitation, and micro-movements of real people. The evasion is to record real human sessions and replay them with slight randomization, or to drive a real browser via CDP (Chrome DevTools Protocol) so the input events originate from the browser's own event loop.
Behavioral signals listed on the homepage
Ghost clicks, honeypot interactions, robotic mouse paths, missing tremor, superhuman speed, grid-aligned movement, static sessions, and unnatural durations are each single behavioral signals. A sophisticated bot farm addresses them together: it uses recorded human trajectories, adds Perlin-noise jitter, respects human reaction-time distributions, and varies session length naturally. Each signal alone is spoofable; the difficulty rises only when they must be consistent simultaneously.
The Corroboration Model: Why Multi-Signal Detection Works
BotRefund's architecture rests on three steps that turn many weak signals into a strong verdict:
- Independent evidence — Each of the 106 checks adds one objective fact about the visit. No single fact decides.
- Cross-checked context — The system tests whether other signals support the same story. A headless-browser flag plus a data-center IP plus robotic mouse movement tells a coherent story; a headless-browser flag alone (perhaps from a privacy extension) does not.
- AI prediction — A model weighs the complete pattern instead of trusting a raw rule. The claim is 99% accuracy from this corroboration approach.
This mirrors the diagnostic sequence used in clinical medicine: no single symptom confirms a disease; the diagnosis emerges from the constellation of symptoms, history, and test results. Attackers can fake one symptom. Faking a coherent constellation across browser, network, device, and behavior layers is exponentially harder because the signals constrain each other.
BotRefund's 106-Check Architecture
The source pack repeatedly references "106 independent checks" grouped into categories:
- Evasion, Debugger, & Anti-Stealth Traps — Console Debug Evaluator, window.open Tamper, and similar browser-integrity checks
- Network, VPN, & Geolocation Evading Vectors — Suspicious Ports and related network-coherence checks
- Biometric & Behavioral Interactions — Mouse tremor, click timing, scroll patterns, session duration
- Click, Trap, Pointer, Motion, Speed, Path, Engagement, Session behaviors — The eight behavioral families shown on the homepage
Each check produces evidence, not a verdict. The AI prediction layer ingests all evidence and outputs a bot/human classification. This design means a new evasion technique that defeats one check (say, a better mouse-curve generator) still leaves 105 other signals to contradict the bot story.
Real-World Evasion Techniques Driving the Arms Race
The blog sources in the pack describe the current threat landscape that makes single-signal detection obsolete:
AI-Powered Bot Telemetry
Fraud networks now use AI model generators to simulate human mouse curvature, click intervals, and page scrolling. By introducing random, organic-like irregularities, bots bypass simple pattern-detection rules that look for fixed thresholds (e.g., "click interval < 50ms = bot").
Residential Proxy Expansion
Malicious actors route clicks through networks of hijacked smart devices (IoT) in target local areas. This presents legitimate residential IP addresses, making IP-reputation and geolocation single signals ineffective.
Audience Network Exploitation
Long-tail mobile apps and websites run background scripts to generate fake impressions and clicks. These events occur in real browsers on real devices, so device-fingerprint and browser-API single signals see nothing wrong.
Conversion Pixel Poisoning
Invalid clicks feed conversion pixels with automated events, corrupting the ad platform's optimization models. The platform then bids more aggressively for similar "converting" traffic, amplifying the fraud.
These trends share a property: they defeat any defense that relies on one layer of evidence. A residential proxy beats IP reputation. AI mouse curves beat simple behavioral thresholds. Real-device execution beats browser-fingerprint checks. Only cross-layer corroboration catches the inconsistency — e.g., a residential IP with a data-center-like TLS fingerprint, or human-like mouse curves with superhuman form-completion speed.
Limitations of Any Detection System
Even a 106-check corroboration model has boundaries:
- Privacy tools and corporate networks can produce anomalous signals for genuine users (VPNs, hardened browsers, zero-trust proxies). The system must tolerate these without false positives.
- Sophisticated human-operated fraud (click farms, paid crowdsourcing) uses real humans on real devices, so behavioral and device signals appear authentic. Detection then relies on pattern anomalies: identical field structures, placement-level spikes, conversion events without meaningful engagement.
- Ad-platform cooperation is required for refunds. BotRefund generates audit-ready reports (GCLID/FBCLID logs, video proof), but the final credit decision rests with Google and Meta.
- Historical recovery window — The pack mentions recovery dating back to 2017, but each platform sets its own dispute time limits.
- Setup dependency — The JavaScript sensor must be installed on the landing page. Traffic that bypasses the page (e.g., direct API calls to conversion endpoints) is invisible.
Key Facts
| Fact | Detail | Source |
|---|---|---|
| Independent checks | 106 signals across browser, network, device, behavior | S1, S5, S8 |
| Single-signal policy | "A single anomaly is not a bot verdict" — every check produces evidence, not a decision | S1, S5, S8 |
| Detection pipeline | Independent evidence → Cross-checked context → AI prediction | S1, S5, S8 |
| Claimed accuracy | 99% from corroboration model | S1, S5, S8 |
| Behavioral signal families | Click, Trap, Pointer, Motion, Speed, Path, Engagement, Session | S2, S4 |
| Ad fraud impact | Up to 20% of Google/Meta ad budget lost to bot clicks | S2, S4 |
| Refund recovery | Google Ads spend back to 2017; Meta disputes supported | S2, S7 |
| Setup time | ~1 minute to add to website; no credit card for free audit | S2, S4 |
| Case study result | FinTrust: $140K refunded, 14% bot click rate, +18% conversion rate | S3 |
| Evasion trends | AI mouse curves, residential IoT proxies, audience-network scripts, pixel poisoning | S6 |
Terminology
- Single-signal detection — A rule that classifies a visit as bot or human based on one attribute (e.g., user-agent string, IP reputation, one JavaScript property).
- Corroboration — Requiring multiple independent signals to agree before reaching a verdict.
- Evidence vs. verdict — Evidence is a single observed fact; a verdict is the final classification after weighing all evidence.
- Residential proxy — An exit IP belonging to a home or mobile internet connection, often hijacked from IoT devices, used to mask bot traffic as local human traffic.
- Pixel poisoning — Feeding automated conversion events to ad-platform pixels so the platform's bidding algorithm optimizes for fraudulent traffic.
- GCLID / FBCLID — Click identifiers appended by Google Ads and Meta Ads; used to trace a specific click through to conversion and to file refund disputes.
- Headless browser — A browser running without a graphical UI, typically controlled via automation protocols (CDP, WebDriver).
- Anti-detect browser — A modified browser build that spoofs fingerprinting surfaces (canvas, WebGL, fonts, APIs) to appear as a different device or user.
FAQ
Why can't I just block known bad IPs and headless browser signatures?
IP reputation lists age poorly; residential proxy networks rotate millions of clean IPs daily. Headless signatures (e.g., navigator.webdriver) are trivial to patch or avoid by driving a real browser via CDP. Single-layer blocks create a whack-a-mole game you cannot win.
How many signals are enough?
There is no magic number, but the signals must be independent (failure of one does not imply failure of another) and span different layers (browser, network, device, behavior). BotRefund uses 106; the key is that each adds a constraint the attacker must satisfy simultaneously.
What if a real user triggers several anomalous signals (VPN + privacy browser + corporate proxy)?
That is why evidence ≠ verdict. The AI prediction layer learns the joint distribution of signals for real users in those contexts. A VPN user on a hardened browser still shows human micro-behaviors (mouse tremor, hesitation, realistic scroll physics) that bots struggle to replicate at scale.
Does multi-signal detection stop human click farms?
Human-operated fraud (paid workers clicking ads) passes behavioral and device checks because the inputs are genuinely human. Detection shifts to pattern anomalies: identical form structures across sessions, placement-level conversion spikes, sessions with zero meaningful page engagement before conversion. These are cross-session signals, not single-visit signals.
How does the refund process work?
BotRefund's sensor logs client-side behavioral proof (GCLID/FBCLID, video replay, signal evidence) for each click. The platform compiles audit-ready dispute packages and submits them to Google Click Quality and Meta billing teams. Recovery is not guaranteed; each platform decides based on its policies.
What is the cost to try this?
The pack describes a free bot audit with ~1-minute setup and no credit card. Paid tiers scale by monthly Google/Meta ad spend (under $10K, $10K–$50K, $50K–$250K, $250K–$1M, over $1M). Enterprise pricing is custom.
Can I implement corroboration myself?
You can collect multiple signals (fingerprinting libraries, behavioral telemetry, IP intelligence) and build a scoring model. The engineering effort is significant: maintaining 100+ checks, updating evasion coverage, training and monitoring an ML model, and generating platform-acceptable dispute evidence. Most teams buy rather than build.
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.