Seatext library / BotRefund evidence
What to Do When You Detect Browser Spoofing: Immediate Steps and Escalation
When you detect browser spoofing, block the request immediately, require additional verification such as a CAPTCHA or multi-factor challenge, and flag the session for manual review if the risk score is high. The response...
✓ Built for advertisers who need clear, refund-ready traffic evidence.
When your detection system flags a spoofed browser, the first move is to stop the current request. Block the action the visitor attempted — login, checkout, form submit, or ad click — and present a challenge that a real human can pass but a script cannot. If the session carries a high risk score, send it to a review queue instead of letting it continue automatically.
What browser spoofing detection actually tells you
A spoofing alert means the browser's declared identity — user agent, platform, language, timezone — conflicts with what the client-side environment actually reveals. BotRefund's prediction AI evaluates 106 browser, network, hardware, and behavior signals together before classifying traffic as human or bot. No single signal decides the outcome; the pattern across all signals does.
Common mismatches include a Chrome user agent on a device that lacks Chrome-only APIs, a claimed desktop resolution that does not match the reported screen size, or a timezone offset that disagrees with the IP geolocation. These inconsistencies are what the detection engine surfaces.
Immediate response steps
- Block the sensitive action. Stop the login attempt, purchase, form submission, or ad click that triggered the check.
- Issue a human verification challenge. Use a CAPTCHA, a device-based biometric prompt, or a multi-factor authentication step. Choose a challenge that matches the value of the action.
- Log the full signal set. Record the 106 signals — network vectors like WebRTC leak and DNS tunnel leak, evasion traps like CDP debugger leak and native patching, and behavioral signals like pointer tremor and session duration — so analysts can review the pattern later.
- Assign a risk score. Combine the spoofing signals with behavioral anomalies such as superhuman input speed (<1 ms), grid-aligned mouse movements, or absent scroll activity. Higher scores trigger stricter responses.
- Route by score. Low score: allow after challenge. Medium score: require step-up authentication. High score: block and queue for manual review.
Verification: confirm it's not a false positive
Before you treat a session as malicious, verify the detection against a second signal source. Check whether the same visitor ID appears in your analytics with normal behavior elsewhere. Compare the flagged session's click IDs (GCLID for Google, FBCLID for Meta) against your CRM outcomes — real leads usually show follow-up activity. BotRefund captures these click IDs and links them to behavioral proof of invalidity, which you need for refund disputes.
If the visitor completes the challenge and subsequent behavior looks human — natural mouse tremor, varied scroll depth, realistic session length — you can downgrade the risk and allow the session. Keep the log for pattern analysis.
Escalation paths based on risk level
| Risk level | Typical signals | Action | Follow-up |
|---|---|---|---|
| Low | Single mismatch (e.g., language header vs. IP) | Allow after CAPTCHA | Monitor for repeat mismatches |
| Medium | Multiple mismatches + automation properties detected | Require MFA or device auth | Flag session; review conversion outcome in 24h |
| High | Full evasion profile: WebRTC leak, CDP debugger leak, rebrowser leaks, superhuman speed, grid-aligned movement | Block and queue for manual review | Submit click IDs to ad platform for refund; add IP/subnet to blocklist if pattern repeats |
The table above reflects a practical decision framework. Adjust thresholds to your traffic volume and the cost of a false block versus a missed bot.
Hypothetical scenario: e-commerce checkout spike
Imagine a flash sale at 2 PM. Your checkout conversion rate drops from 3.2% to 0.4% in ten minutes. The detection dashboard shows 200 sessions flagged for spoofing in that window — 180 show WebRTC network leaks, 165 show automation properties, and 150 have superhuman input speed. You block all 200 checkouts, require MFA for the 20 medium-risk sessions, and let the 5 low-risk sessions through after CAPTCHA. Within an hour, your CRM shows zero orders from the blocked sessions and three legitimate orders from the challenged ones. You export the 200 GCLIDs and FBCLIDs, attach the behavioral evidence logs, and file refund claims with Google and Meta. This is the workflow BotRefund automates: detect, block, capture evidence, negotiate refund.
How BotRefund helps with spoofing detection and response
BotRefund's prediction AI evaluates the full pattern of 106 signals — network, VPN, and geolocation evasion vectors plus evasion, debugger, and anti-stealth traps — before deciding whether a visit is human or automated. The platform captures Google Click IDs (GCLIDs) and Meta Click IDs (FBCLIDs) linked to behavioral proof, then generates compliance-ready refund reports you can submit directly to Google and Meta. It also protects your conversion pixels in real time so Smart Bidding algorithms do not optimize toward bot traffic. Installation takes about one minute with no credit card required.
Limitation: BotRefund focuses on paid traffic environments (Google Ads, Meta Ads). If your spoofing problem is primarily on organic or direct traffic, you still need the detection signals but the refund recovery path does not apply. The platform also requires JavaScript execution on the landing page; visitors who block scripts will not be fully evaluated.
Key facts
| Fact | Detail | Source |
|---|---|---|
| Signal count | 106 browser, network, hardware, and behavior signals evaluated together | S1 |
| Classification accuracy | 99% accuracy claimed for human vs. bot classification | S1 |
| Network evasion vectors | WebRTC leak, DNS tunnel leak, DNS challenge blocked, timezone evasion, latency mismatch, suspicious ports, UTC timezone bias, languages mismatch, netprobe telemetry missing, IP inconsistency, OS/TCP TTL mismatch, HTTP user-agent mismatch, accept-language mismatch, HTTP protocol mismatch, DNS routing mismatch | S1 |
| Evasion and anti-stealth traps | CDP debugger leak, native patching, engine mismatch, rebrowser leaks, JS engine mismatch, automation properties | S1 |
| Behavioral signals | Ghost click detection, trap behavior, honeypot interactions, pointer behavior (robotic linear movements, absence of tremor), motion behavior, speed behavior (superhuman <1ms), path behavior (grid-aligned), engagement behavior (absence of clicks/scroll), session behavior (unnatural durations) | S2 |
| Refund success rate | 83% refund success rate for high-volume advertisers | S2 |
| Ad spend recovery | Recovers Google and Meta ad spend dating back to 2017 | S2 |
| Installation time | About one minute, no credit card required | S2 |
Limitations and when this advice does not apply
- Non-JavaScript environments. If your users or bots disable JavaScript, client-side signal collection fails. Server-side heuristics (IP reputation, request rate, header analysis) become your only layer.
- Privacy-focused browsers. Hardened browsers like Tor or Brave with fingerprinting protections can trigger false mismatches. Maintain an allowlist for known privacy tools or accept a higher false-positive rate on that segment.
- Organic and direct traffic. Refund recovery only works for paid clicks with click IDs (GCLID, FBCLID). Spoofed organic visits still waste server resources and skew analytics but cannot be refunded.
- Sophisticated residential proxy botnets. Click farms using real mobile devices on residential IPs with genuine browser engines can pass many client-side checks. Behavioral signals (tremor, scroll, session flow) become the primary discriminator.
- Single-page applications with heavy caching. If the detection script loads after the critical action, you miss the spoofing signal. Place the script in the document head and ensure it runs before any form or checkout handler.
Terminology quick reference
- Browser spoofing: Faking browser properties (user agent, navigator object, screen, timezone) to impersonate a different environment.
- WebRTC leak: Exposure of the visitor's real local IP address through WebRTC peer connections, revealing a mismatch with the claimed proxy/VPN IP.
- CDP debugger leak: Traces left by the Chrome DevTools Protocol when automation tools like Puppeteer or Playwright attach to the browser.
- Rebrowser leaks: Artifacts from tools that wrap browsers to mask automation fingerprints.
- GCLID / FBCLID: Google Click ID and Facebook Click ID — unique identifiers appended to landing-page URLs that link a click to an ad platform's billing record.
- Pixel poisoning: Invalid traffic triggering conversion pixels, causing the ad platform's optimization algorithms to target more bot-like users.
FAQ
Should I block every spoofed session automatically?
No. Automatic blocks on low-confidence signals create false positives that frustrate real users. Use a tiered response: challenge first, block only when multiple high-confidence signals align.
What if the visitor passes the CAPTCHA but still looks automated?
CAPTCHA farms exist. Treat a passed CAPTCHA as one signal, not proof of humanity. Continue monitoring behavioral signals — mouse tremor, scroll variance, session flow — and re-score the session in real time.
How do I get refunds for spoofed ad clicks?
Collect the click IDs (GCLID for Google, FBCLID for Meta) from the flagged sessions. Pair each ID with the behavioral evidence log (spoofing signals + automation traces). Submit the package through the ad platform's invalid traffic dispute process. BotRefund automates this evidence capture and report generation.
Does spoofing detection slow down my page?
Client-side fingerprinting adds a few milliseconds. BotRefund's script loads asynchronously and runs in under 50 ms on typical devices. The refund recovery and pixel protection usually outweigh the minimal latency.
Can I use these signals without BotRefund?
Yes. Open-source libraries like FingerprintJS collect many of the same raw signals. The gap is the prediction AI that weighs 106 signals together, the real-time pixel protection, and the automated refund evidence pipeline. You can build the detection layer yourself; the response and recovery layer is harder to replicate.
What about mobile app traffic (in-app browsers)?
In-app browsers (Facebook, Instagram, TikTok) restrict some APIs. WebRTC and certain navigator properties may be unavailable. Adjust your signal expectations for that traffic segment and rely more heavily on behavioral signals that do work — touch timing, scroll physics, session flow.
How often should I update my detection rules?
Bot tooling evolves weekly. If you maintain your own rules, review them at least monthly. Managed platforms like BotRefund update their signal weights and evasion traps continuously as new automation frameworks appear.
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.