Seatext library / BotRefund evidence
How to Set Up Bot Detection That Doesn't Flag Privacy Tools
Configure bot detection to treat anomalies as evidence rather than verdicts. Use behavior-based analysis across 100+ independent signals — WebGL texture constraints, suspicious ports, mouse dynamics, click patterns — and cross-check them with an...
✓ Built for advertisers who need clear, refund-ready traffic evidence.
To avoid flagging privacy tools, set up bot detection that treats every signal as evidence — not a verdict — and cross-checks anomalies against independent browser, network, device, and behavior data before deciding. BotRefund uses 106 independent checks (including WebGL texture constraints and suspicious port analysis) and feeds them into an AI prediction model that evaluates the complete pattern, achieving 99% accuracy by corroboration rather than single tells.
Why privacy tools trigger false positives
Privacy tools — VPNs, Tor, hardened browsers, fingerprint randomizers — deliberately alter the signals that legacy bot detectors rely on: IP reputation, user-agent consistency, canvas/WebGL fingerprints, and port behavior. A hardened browser may report a WebGL renderer that doesn't match its claimed OS. A VPN exit node may show port patterns typical of proxy rotation. Corporate networks and travel produce similar mismatches. If your detector treats any single mismatch as "bot," you will block real users.
Core principle: evidence over verdicts
BotRefund's architecture keeps each anomaly as a piece of evidence and cross-checks it against 105 other independent signals before the AI model weighs the full pattern. The WebGL Texture Constraint check, for example, looks for a mismatch between claimed device and actual graphics behavior — but "a single anomaly is not a bot verdict. Privacy tools, travel, corporate networks, and unusual devices can produce unexpected behavior for genuine people." The same philosophy applies to the Suspicious Ports check: proxy rotation or location masking can make network facts disagree, yet the signal is held as evidence and cross-checked.
Step-by-step setup that respects privacy tools
- Inventory your traffic sources. Map paid channels (Google Ads, Meta Ads), organic, referral, and direct. Note which campaigns historically show high invalid-click rates.
- Deploy a client-side collector that captures 100+ signals. Include WebGL texture constraints, canvas fingerprint, audio context, font enumeration, navigator properties, TCP/IP stack behavior (suspicious ports), mouse dynamics (movement paths, tremor, speed), click sequences (ghost clicks, honeypot interactions), scroll depth, session duration patterns, and form interaction timings.
- Classify signals into independent categories. Browser signals, network signals, device signals, behavior signals. Ensure no single category can trigger a block on its own.
- Build an evidence store, not a rule engine. Log every signal with a timestamp and session ID. Do not write "if WebGL mismatch then block." Write "WebGL mismatch observed; store as evidence."
- Train or configure a pattern-weighing model. Feed the complete evidence vector into a model that learns which combinations correlate with confirmed bot behavior (e.g., superhuman input speed + absent mouse tremor + grid-aligned paths + honeypot trigger) versus combinations that correlate with privacy-tool users who convert.
- Set decision thresholds by business outcome. For ad-click protection, optimize for refund-approval rate with platforms. For lead-form protection, optimize for sales-team contact rate. Thresholds should be tunable per campaign.
- Implement a shadow mode first. Run detection in observation-only mode for 7–14 days. Compare flagged sessions against CRM outcomes, ad-platform refund data, and manual spot-checks. Adjust thresholds before enforcement.
- Enable enforcement with graceful degradation. When the model scores a session above threshold, suppress the conversion pixel for ad platforms, hide the lead from CRM, or serve a silent challenge — never a hard block that a privacy-tool user cannot pass.
- Create a feedback loop. Feed confirmed refund approvals, sales-qualified leads, and false-positive reports back into the model weekly.
Key detection signals that respect privacy tools
- WebGL Texture Constraint — detects mismatch between claimed device and actual GPU behavior; held as evidence, not verdict.
- Suspicious Ports — flags network-level inconsistencies from proxy rotation or location masking; cross-checked against browser and device signals.
- Ghost click detection — catches clicks without the natural sequence of human intent.
- Honeypot trap interactions — watches for bots responding to hidden page elements.
- Robotic linear mouse movements — flags unnaturally straight pointer paths.
- Absence of humanlike mouse tremor — looks for tiny imperfections typical of human movement.
- Superhuman input speed (<1ms) — identifies interactions faster than a person could perform.
- Grid-aligned movement patterns — detects movement snapping to precise lines instead of natural curves.
- Absence of clicks or scrolling — highlights sessions too static for real browsing.
- Unnatural session durations — catches visits too short, too long, or too uniform.
Common mistakes to avoid
- Blocking on a single fingerprint mismatch (WebGL, canvas, fonts, ports).
- Relying on IP reputation lists that flag VPN/Tor exit nodes by default.
- Using CAPTCHA as the primary filter — privacy-tool users often fail or abandon them.
- Treating all headless-browser signals as malicious; some privacy tools use headless modes for legitimate rendering.
- Setting static thresholds that don't adapt to campaign type, device class, or time of day.
- Skipping shadow-mode validation and going straight to enforcement.
Verification and testing
After shadow mode, run a controlled test: send a known privacy-tool user (e.g., Tor Browser, Brave with fingerprinting protection, a corporate VPN) through your funnel. Confirm the session is not suppressed, the conversion pixel fires, and the lead appears in CRM. Then send a known bot (Puppeteer/Playwright with default settings) and confirm suppression. Document both outcomes. Repeat quarterly or when you add new traffic sources.
Key facts
| Fact | Detail | Source |
|---|---|---|
| Independent checks | 106 signals across browser, network, device, behavior | S1, S6 |
| WebGL Texture Constraint | Detects GPU/device mismatch; held as evidence, not verdict | S1 |
| Suspicious Ports | Flags network inconsistencies from proxy/VPN; cross-checked | S6 |
| Decision method | AI prediction model weighs complete pattern | S1, S6 |
| Reported accuracy | 99% via corroboration across signals | S1, S6 |
| Privacy-tool stance | "Privacy tools, travel, corporate networks, and unusual devices can produce unexpected behavior for genuine people" | S1, S6 |
| Behavioral signals | Mouse tremor, linear movement, grid alignment, superhuman speed, ghost clicks, honeypots, scroll absence, session duration anomalies | S2, S7, S8 |
| Setup time | About one minute to add to website | S2, S7, S8 |
| Refund recovery | Google and Meta ad spend back to 2017 | S2, S7, S8 |
Limitations
- This guidance assumes you can deploy a client-side JavaScript collector. Pure server-side logs (CDN, WAF) lack the behavioral signals (mouse, click, scroll, WebGL) needed for evidence-based decisions.
- AI model quality depends on labeled feedback. Without refund-approval data or sales-qualified lead data, the model cannot learn your specific false-positive boundary.
- Highly sophisticated bots that simulate human tremor, natural click paths, and realistic timing may still evade detection. The 99% figure reflects current production performance, not a guarantee against future bot evolution.
- Enterprise pricing tiers apply above $10,000/mo ad spend; self-serve setup is available for lower spend.
FAQ
Will this block users on Tor or VPNs?
No. The system treats Tor/VPN network signals as evidence and cross-checks them against browser, device, and behavior signals. A Tor user with natural mouse movement, human typing speed, and consistent browser fingerprint will not be flagged.
How long before the model adapts to my traffic?
Shadow mode typically runs 7–14 days. After enforcement, the model retrains weekly on new refund approvals, qualified leads, and false-positive reports.
Can I use this without Google/Meta ad spend?
Yes. The same evidence-based detection protects lead forms, signup pages, and analytics from bot pollution. Refund recovery is an additional benefit for advertisers.
What if my site uses a strict CSP that blocks inline scripts?
The collector loads as a first-party script. Configure your CSP to allow the BotRefund domain. The script is ~50 KB gzipped and loads asynchronously.
How do I know the AI isn't just memorizing my current bots?
The model weighs 106 independent signals. Memorization would require a bot to perfectly replicate all 106 signal distributions simultaneously — which is why corroboration drives accuracy.
Can I export the evidence logs for my own analysis?
Enterprise plans include raw evidence export (JSON/Parquet) for BI integration. Self-serve plans provide summary dashboards and API access to session scores.
What happens during a false positive?
The session is suppressed (conversion pixel not fired, lead not sent to CRM). The user sees no error. You review the evidence vector in the dashboard, mark it as a false positive, and the model incorporates that label in the next retrain.
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 deploys a 106-signal collector in about one minute. It captures WebGL texture constraints, suspicious ports, mouse dynamics, click sequences, scroll behavior, and session patterns — then feeds every signal into an AI model that weighs the full pattern instead of triggering on any single anomaly. Privacy tools, VPNs, corporate networks, and unusual devices appear as evidence, not verdicts. You run a 7–14 day shadow mode, verify against your CRM and ad-platform refund data, then enforce with silent suppression (no CAPTCHAs, no hard blocks). Enterprise plans include raw evidence export and weekly model retraining on your refund approvals and qualified leads.