Seatext library / BotRefund evidence

Graphics Card Behavior Detection vs IP-Based Methods: Which Catches More Bots?

Graphics card behavior detection (WebGL fingerprinting) catches sophisticated bots that spoof IP addresses, but it requires client-side execution and more processing. IP-based methods are simpler and cheaper but fail against residential proxies and VPNs....

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

Graphics card behavior detection is better at catching advanced bots that rotate residential IPs or spoof headers, because it measures hardware-level signals that are expensive to fake consistently. IP-based methods are faster, cheaper, and easier to deploy at the network edge, but they miss bots that use clean residential proxies or compromised devices. The practical answer: use IP reputation as a first filter, then layer GPU fingerprinting for traffic that passes the IP check.

Criterion Graphics Card Behavior Detection (WebGL/GPU Fingerprinting) IP-Based Detection
What it measures Hardware rendering quirks: WebGL texture limits, shader precision, GPU vendor/renderer strings, canvas fingerprint, audio context behavior. These reflect the actual GPU and driver stack. Source IP reputation, ASN, geolocation, proxy/VPN/Tor exit lists, connection velocity, subnet behavior.
Evasion difficulty High. Spoofing WebGL consistently requires matching driver bugs, texture limits, and timing across browser versions. Headless browsers often leak real GPU or fail to emulate quirks. Low to medium. Residential proxy networks (IoT, mobile) provide clean IPs. VPNs and Tor exits are cataloged but rotate fast. Compromised home routers look like legitimate users.
Deployment Client-side JavaScript or WebAssembly. Needs browser execution; blocked by strict CSP, ad blockers, or privacy tools. Adds ~10-50ms per page load. Server-side or edge (CDN/WAF). No client code. Works on first packet. Zero client latency.
False-positive risk Moderate. Privacy tools (Tor Browser, Brave, CanvasBlocker), corporate VDI, rare GPU/driver combos, and virtual machines can look anomalous. Must be one signal among many. Moderate. Shared offices, universities, mobile carrier CGNAT, and corporate VPNs concentrate many users on one IP. Legitimate traffic from data-center IPs (CI/CD, monitoring) gets flagged.
Cost model Per-session or per-MAU pricing for fingerprinting SDKs; some open-source libraries exist but need maintenance. BotRefund includes it as one of 106 signals in its platform. IP reputation feeds (subscription), WAF rules, or cloud provider threat intelligence. Often included in CDN/WAF tiers.
Best fit High-value pages: checkout, login, lead forms, ad landing pages. Situations where one sophisticated bot costs more than the detection overhead. High-volume edges: CDN, load balancer, API gateway. First-line filtering for obvious scrapers, credential stuffing, and known bad actors.

Takeaway: IP checks are a necessary first layer — they stop the noisy 80% of bots cheaply. GPU fingerprinting catches the quiet 20% that look like real users on the network layer. Neither wins alone.

What graphics card behavior detection actually measures

When a browser renders a page, it talks to the GPU through WebGL, WebGPU, Canvas 2D, and AudioContext APIs. Each GPU model, driver version, and OS combination produces subtle, measurable differences: maximum texture size, supported extensions, shader precision, rendering timing, and even floating-point rounding in vertex shaders. A headless Chrome instance running on a server-grade GPU (or software renderer like SwiftShader) will report different limits than a real user's laptop with an integrated Intel Iris or discrete NVIDIA card.

BotRefund's WebGL Texture Constraint check is one of 106 independent signals. It looks for mismatches between the claimed device (user-agent, screen resolution, platform) and what the GPU actually reports. For example, a browser claiming to be an iPhone 15 on Safari but reporting a desktop NVIDIA renderer with 16384 max texture size is a red flag. The signal is kept as evidence, not a verdict — privacy tools, corporate VDI, and unusual but legitimate devices can produce anomalies. BotRefund cross-checks this against browser, network, device, and behavioral signals before its AI model weighs the complete pattern.

How IP-based detection works

IP-based methods operate at the network layer. They check the source IP against reputation databases: known proxy/VPN/Tor exit nodes, data-center ASNs, hosting providers, and abuse history. They also analyze connection patterns: request velocity, geographic impossibility (same IP in London and Sydney within an hour), subnet clustering, and protocol anomalies (missing TLS fingerprints, odd header order).

These checks run at the edge — CDN, WAF, or load balancer — before the request hits your application. They add no client-side latency and work even if the client blocks JavaScript. The trade-off: they only see the network identity, not the device. A botnet routing through 10,000 compromised home routers (residential proxies) looks like 10,000 legitimate users from different ISPs and cities.

Why the comparison matters for bot detection

Ad fraud networks have evolved. According to BotRefund's analysis of current trends, fraudsters now use AI-generated mouse curvature, click intervals, and scroll patterns to mimic human behavior, while routing clicks through residential proxy botnets built on hijacked IoT devices. This defeats both basic behavioral rules and IP reputation lists. The IP looks clean (residential ASN, no abuse history). The behavior looks human (curved mouse, variable timing). But the GPU fingerprint often betrays the automation: the same WebGL renderer string appears across thousands of "different" devices, or the texture limits match a known server GPU.

Pixel poisoning compounds the problem. Bots click ads, land on the site, and fire conversion pixels with valid GCLID/FBCLID parameters. The ad platform sees a "conversion" from a real-looking IP and user-agent. Without a hardware-level signal, the advertiser pays for fake leads and pollutes their optimization models.

Key trade-offs in practice

Coverage vs. precision

IP reputation covers 100% of traffic at the edge. GPU fingerprinting only covers traffic that executes JavaScript — typically 85-95% of real users, less if you have heavy bot traffic that blocks scripts. But the precision on that covered traffic is higher for sophisticated bots.

Latency and user experience

IP checks add zero perceived latency. GPU fingerprinting adds a small client-side computation (WebGL context creation, texture allocation, readback). On modern devices this is 10-30ms; on older mobile it can be 50-100ms. For a checkout page, that's acceptable. For a content page with millions of views, it adds up.

Maintenance burden

IP reputation feeds update daily; you subscribe and forget. GPU fingerprinting libraries need updates when browsers change WebGL behavior (e.g., Chrome's WebGL conformance fixes, Firefox's canvas privacy features, Safari's Intelligent Tracking Prevention). Open-source libraries like FingerprintJS or ClientJS require ongoing tuning. Managed platforms (BotRefund, Fingerprint, Castle) handle this but cost more.

Privacy and compliance

IP addresses are personal data under GDPR and CCPA. You need a lawful basis to process them for fraud prevention (legitimate interest usually works). GPU fingerprints are also personal data — they can uniquely identify a device. The same compliance obligations apply. Some privacy regulations treat fingerprinting as more intrusive because it's harder for users to control or opt out.

When each approach fits

Choose IP-based detection if:

  • You need to filter traffic before it hits your application (CDN/WAF edge).
  • Your main threat is volumetric scraping, credential stuffing from known bad IPs, or basic crawlers.
  • You have limited engineering resources for client-side integration.
  • You need to block entire ASNs or countries quickly.
  • Budget is tight and you can use included Cloudflare/AWS/Azure threat intelligence.

Choose GPU fingerprinting if:

  • You protect high-value actions: ad clicks, checkout, account creation, lead forms.
  • You see sophisticated bots that pass IP checks (residential proxies, clean IPs).
  • You need to link multiple sessions to the same physical device (multi-accounting, promo abuse).
  • You can tolerate a small client-side payload and have a tag manager or direct script injection.
  • You want evidence for ad-platform refund claims (BotRefund captures video proof per click).

Most teams need both

A layered architecture works best: IP reputation at the edge blocks known bad actors and reduces load. The remaining traffic gets GPU fingerprinting on sensitive pages. The fingerprinting result feeds back to the edge (via API or header) so future requests from that device can be challenged or blocked without re-running the full check.

Limitations and blind spots

GPU fingerprinting blind spots

  • Privacy-hardened browsers: Tor Browser, Brave with fingerprinting protection, Safari with ITP, and Firefox with resist.fingerprinting enabled deliberately normalize or randomize WebGL/Canvas outputs. They look suspicious but are legitimate users.
  • Virtual desktop infrastructure (VDI): Corporate environments (Citrix, VMware Horizon, Azure Virtual Desktop) present a shared GPU to many users. The fingerprint is identical across employees — not a bot signal.
  • Software renderers: SwiftShader, llvmpipe, and headless Chrome's --use-gl=swiftshader produce consistent but detectable signatures. Sophisticated bots can tune these to match common consumer GPUs.
  • Mobile webviews: In-app browsers (Instagram, TikTok, Facebook) often use system WebView with limited WebGL support. Fingerprinting libraries may misclassify them.

IP-based blind spots

  • Residential proxy networks: Millions of compromised home routers, mobile devices, and IoT gadgets sell clean residential IPs. They rotate per request or per session.
  • CGNAT and shared IPs: Mobile carriers and some ISPs put hundreds of users behind one IPv4. Blocking the IP blocks all of them.
  • Legitimate data-center traffic: Monitoring services, CI/CD bots, search engine crawlers (if not whitelisted), and partner APIs come from hosting ASNs.
  • IPv6 rotation: Mobile networks assign new IPv6 prefixes frequently. Reputation databases lag.

Decision framework: choosing your stack

  1. Map your threat model. What does a successful bot attack cost? Ad spend waste? Fake leads? Inventory hoarding? Account takeover? Rank the assets by value.
  2. Audit current coverage. What do you already have? CDN WAF rules? Cloud provider threat intel? Client-side analytics? Fraud scoring vendor?
  3. Start with IP at the edge. Enable managed threat intelligence on your CDN (Cloudflare Bot Management, AWS WAF Bot Control, Akamai Bot Manager). Block known bad ASNs, Tor, VPN exits. Log the rest.
  4. Add GPU fingerprinting on high-value pages. Deploy a managed SDK (BotRefund, Fingerprint, Castle) on checkout, login, lead forms, and ad landing pages. Use the 106-signal approach: GPU is one signal, combined with behavioral (mouse, scroll, timing), browser (JS engine, fonts, permissions), and network (WebRTC leak, timezone mismatch).
  5. Close the loop. Feed fingerprinting verdicts back to the edge via API or custom header. Build a blocklist of device IDs that failed verification. Challenge suspicious devices with CAPTCHA or step-up auth instead of hard blocking.
  6. Measure and iterate. Track false-positive rate (legitimate users challenged), bot catch rate (confirmed fraud stopped), and latency impact. Adjust thresholds per page value.

Key facts from BotRefund's detection architecture

Fact Detail
Total independent signals 106 checks across browser, network, device, and behavior layers
WebGL Texture Constraint role One hardware/GPU signal; looks for mismatch between claimed device and actual GPU capabilities
Signal handling philosophy Each signal is evidence, not a verdict; cross-checked against other layers before AI prediction
Reported AI accuracy 99% bot vs. human classification across the full signal set
Behavioral signals included Ghost clicks, honeypot traps, linear mouse movements, missing tremor, superhuman speed (<1ms), grid-aligned paths, static sessions, unnatural durations
Network signals included Suspicious ports, VPN/proxy/geolocation mismatches, WebRTC IP leaks
Advanced evasion checks Silent Audio Trap (CreepJS API consistency), Monitor Sync Anomaly (timing variance), JS Engine Mismatch
Refund capability Captures video proof per bot click; negotiates with Google and Meta for ad-spend recovery back to 2017
Setup time ~1 minute to add to website; no credit card for free audit

Terminology quick reference

  • WebGL fingerprinting: Extracting GPU/driver characteristics via the WebGL API (renderer string, extensions, texture limits, shader precision).
  • Canvas fingerprinting: Rendering a hidden canvas image and hashing the pixel output; varies by GPU, driver, OS, and font rendering.
  • Residential proxy: Proxy exit node on a consumer ISP network (home router, mobile phone, IoT device), not a data center.
  • CGNAT (Carrier-Grade NAT): ISP technique sharing one public IPv4 across many customers; common in mobile and some broadband.
  • ASN (Autonomous System Number): Identifier for a network operator (ISP, hosting provider, cloud). Used in IP reputation.
  • Pixel poisoning: Bots firing conversion pixels (GCLID/FBCLID) to corrupt ad-platform optimization models.
  • CreepJS: Open-source fingerprinting library that tests browser API consistency to detect automation frameworks.
  • SwiftShader: Google's software WebGL implementation used by headless Chrome; detectable via renderer string and performance profile.

FAQ

Can't bots just spoof the WebGL renderer string?

They can try. But spoofing one string isn't enough — the texture limits, extension list, shader behavior, and timing must all match a real device profile consistently. BotRefund's approach cross-checks the GPU signal against 105 other signals; a mismatched cluster triggers deeper scrutiny.

Does GPU fingerprinting work on mobile?

Yes. Mobile GPUs (Adreno, Mali, Apple GPU) have distinct WebGL signatures. However, in-app webviews (Instagram, TikTok) often restrict WebGL or use a different code path, which can reduce signal quality. Native app attestation (Play Integrity, App Attest) is stronger for mobile apps.

What about users who disable JavaScript?

GPU fingerprinting requires JS execution. Users with JS disabled (or strict NoScript) won't be fingerprinted. Fall back to IP reputation and server-side behavioral analysis (request patterns, header order, TLS fingerprint). This is a small fraction of legitimate traffic (<2% on most sites).

Is IP-based detection useless against modern bots?

Not useless — necessary but insufficient. It stops the low-effort 80%: data-center scrapers, known VPN/Tor, basic credential stuffing. The remaining 20% (residential proxies, compromised devices, AI-driven behavior) need device-level signals.

How much does GPU fingerprinting cost?

Managed platforms typically charge per monthly active user (MAU) or per verification. BotRefund includes it in a platform fee tied to ad-spend tiers (under $10K/mo, $10K-$50K, $50K-$250K, etc.). Open-source libraries are free but require engineering time to maintain and tune.

Can I use GPU fingerprinting for fraud evidence with Google/Meta?BotRefund captures video proof of each bot click (screen recording of the session) and packages it with the full signal set (including GPU fingerprint) for refund disputes. Google and Meta accept this evidence; BotRefund reports an approved refund rate across client claims.

What's the false-positive rate for GPU fingerprinting?

Depends on threshold and population. Privacy-hardened browsers, corporate VDI, and rare GPU/driver combos can flag. BotRefund treats each signal as evidence, not a verdict, and requires corroboration across layers. This keeps false positives low but means you need the full signal stack, not just one check.

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