Seatext library / BotRefund evidence
CPU Concurrency Detection vs Browser Fingerprinting: Which Is Better?
CPU concurrency detection is a targeted signal that catches mismatches between a device's reported and actual processor behavior, making it harder to spoof than static fingerprints. Browser fingerprinting collects a broad set of device...
✓ Built for advertisers who need clear, refund-ready traffic evidence.
CPU concurrency detection and browser fingerprinting both help flag bots, but they work differently. CPU concurrency detection looks for inconsistencies in how a browser reports its processor capabilities, while browser fingerprinting gathers a wide range of device and browser attributes. Neither is perfect alone; the most reliable systems use both. Here's why.
CPU concurrency detection is a focused check that asks a browser how many CPU cores it can use, then compares that answer to other device signals. Browser fingerprinting is broader: it assembles a profile from screen size, fonts, plugins, GPU, timezone, and dozens of other data points. The key difference is that fingerprinting gives a snapshot, while concurrency detection probes for contradictions. Because spoofing concurrency correctly requires matching real hardware behavior, it's more dynamic and harder to fake than static attributes. Yet a single concurrency check offers less data than a full fingerprint. So the honest answer is: use both, not either-or.
| Criteria | CPU Concurrency Detection | Browser Fingerprinting | Plain-Language Takeaway |
|---|---|---|---|
| What it measures | Number of CPU cores the browser reports, compared against other hardware signals | Screen, fonts, GPU, timezone, plugins, and many other browser/device attributes | Concurrency is a single signal; fingerprinting is a composite profile. |
| Spoof resistance | Harder to spoof because it requires consistent hardware emulation | Easier to spoof with static spoofing tools that fake known attributes | Concurrency checks are more resilient against basic bot browsers. |
| Data volume | Minimal—just one data point | Rich—dozens of data points form a unique identifier | Fingerprinting offers more data but also more noise. |
| False positive risk | Lower when used alone, but still can flag virtual machines or privacy tools | Higher because many human devices share similar attributes | Both need cross-checking to avoid blocking real users. |
| Role in detection | Acts as independent evidence in a larger pattern | Provides baseline identification and cross-session tracking | Best used together—concurrency adds a dynamic layer to static fingerprints. |
| Best fit | Real-time screening and anomaly detection | Establishing device identity and long-term tracking | Use concurrency for immediate flags, fingerprinting for matching and profiling. |
What Is CPU Concurrency Detection?
CPU concurrency detection uses the browser's navigator.hardwareConcurrency property, which reports the number of logical processors available to the device. A normal browser returns a number that matches the physical hardware. An automated browser or virtual machine might misreport this number, or report a value that conflicts with other details like GPU or memory. The CPU Concurrency Lie check looks for exactly that mismatch.
As BotRefund explains, it's “one of 106 independent checks” used to build a reliable picture of whether a visit is human or automated. The check “looks for a mismatch that a real browsing session does not normally create.” A real browser reports hardware, graphics, fonts, and operating-system details that naturally fit together. A spoofed profile might claim one device while its processor behavior tells another story.
How CPU Concurrency Detection Works
The browser exposes the core count via JavaScript. A detection script also collects other hardware-related signals like device memory, GPU renderer, and platform. It then compares them. If the core count doesn't match the expected range for that GPU or platform, it raises an anomaly.
But a single anomaly isn't a verdict. As BotRefund notes, “A single anomaly is not a bot verdict.” Privacy tools, travel, corporate networks, and unusual devices can produce unexpected behavior for genuine people. So the signal is kept as evidence, not a final answer. It's cross-checked against independent browser, network, device, and behavior data. Only when multiple signals agree does the system classify the session.
What Is Browser Fingerprinting?
Browser fingerprinting is the practice of collecting a wide set of browser attributes to create a near-unique identifier. These attributes include screen resolution, color depth, installed fonts, timezone, language, canvas rendering, WebGL data, and more. When combined, they often form a fingerprint that stays consistent across sessions.
This technique is used for both tracking and fraud detection. A fingerprint can help you recognize a returning device even after cookies are cleared. However, it also creates privacy concerns, and browser makers have added protections that limit some fingerprinting capabilities.
How Browser Fingerprinting Works
A script queries dozens of properties. For example, it reads screen dimensions, enumerates fonts via a canvas test, captures a WebGL renderer string, and notes the timezone offset. These values are hashed together into a string that looks random.
Because many attributes are shared by thousands of devices, no single one identifies a user. But the combination becomes distinguishing. The more attributes you collect, the lower the collision rate. Yet that also increases the chance of false matches when devices share similar configurations.
Key Differences Between the Two
CPU concurrency detection is a dynamic check. It asks a question and evaluates the consistency of the answer with other hardware data. It's harder to fake because you must emulate real hardware behavior—not just set a string. Browser fingerprinting, by contrast, collects static attributes that a bot can mimic by injecting spoofed values.
Concurrency detection also has a narrower scope. It tells you whether the processor claim is plausible. Fingerprinting gives you a rich identity vector that can be used to track a device across sessions. But a sophisticated bot can rotate fingerprints or use tools that emulate a real device's full profile.
In practice, the two complement each other. Concurrency checks catch bots that haven't bothered to emulate hardware perfectly. Fingerprinting catches bots that reuse the same spoofed profile. Together, they cover more attack patterns.
When to Use CPU Concurrency Detection
Use CPU concurrency detection when you want a lightweight, real-time signal that's hard to spoof. It's ideal for screening every session without slowing the page. It works well as part of a larger detection engine, like the one BotRefund uses, where it contributes objective facts about the visit.
It's especially useful against headless browsers and virtual machines. These environments often have mismatched hardware reports. A sudden spike in sessions with the same core count, or core counts that don't match the GPU, can indicate automated traffic.
When to Use Browser Fingerprinting
Use browser fingerprinting when you need to identify and track a device across visits. It's valuable for building a risk profile over time, detecting account sharing, or flagging repeated abuse from the same machine. It also helps in fraud investigation because you can link seemingly unrelated sessions.
However, fingerprinting alone is not a strong bot detector. Many bots use real browser engines and can spoof basic attributes. You need to combine fingerprinting with behavioral checks and server-side signals to reduce false positives and catch advanced bots.
Combining Both for Better Bot Detection
The strongest approach is to treat CPU concurrency detection as one piece of evidence and fingerprinting as another, then feed the whole pattern into a prediction model. BotRefund does exactly this: it sends the concurrency signal into its AI, which evaluates the complete picture across browser, network, device, and behavior evidence.
Combining the two also reduces errors. A single mismatch in concurrency might be a false positive, but if fingerprinting also shows inconsistent fonts or an unusual GPU, the case is stronger. Conversely, a fingerprint that's too generic might trigger a flag, but if concurrency is normal and behavior is human, the user is likely genuine.
When you combine, you also improve resilience. Bots that try to spoof one signal often miss another. A multi-layered system forces attackers to emulate every detail correctly—a much harder task.
Limitations and Real-World Considerations
No detection method is perfect. CPU concurrency detection can be bypassed if the bot uses a real browser with a real hardware profile. Virtual machines used by legitimate users, such as cloud desktops or privacy-focused setups, may also trigger false flags. Browser fingerprinting suffers from the opposite problem: legitimate users on the same hardware (e.g., the same enterprise-issued laptop) may share near-identical fingerprints, leading to false matches.
Privacy regulations may restrict how much data you can collect. Browser fingerprinting in particular can raise GDPR and CCPA concerns if it's used for tracking without consent. CPU concurrency detection, being a single low-entropy signal, is less invasive but still requires transparency if used for security.
The bottom line: don't rely on a single signal. Use concurrency as a corroborating check, not a standalone verdict. And always validate against other sources like IP reputation, behavior patterns, and session context.
Frequently Asked Questions
Is CPU concurrency detection better than browser fingerprinting?
No single signal is “better” in all cases. Concurrency detection is harder to spoof and gives a quick anomaly flag, while fingerprinting offers richer identity data. For reliable bot detection, you need both.
Can bots spoof navigator.hardwareConcurrency?
Yes, but it's harder than spoofing a static string. To spoof it correctly, the bot must also adjust other hardware signals like GPU and memory so they fit together. Many bots don't bother, which is why concurrency checks catch them.
Does browser fingerprinting work on mobile devices?
Yes, but mobile fingerprints are less varied. Many phones share the same GPU, screen size, and OS. Concurrency values also tend to be similar across a phone model, so the detective power is lower.
How many signals do I need for accurate detection?
There's no fixed number. BotRefund uses 106 independent checks, including concurrency and behavior signals. The more independent signals you have, the more opportunities to catch mismatches—but each adds complexity and potential false positives.
Will using both slow down my website?
Usually not. Concurrency checks and fingerprinting scripts run in milliseconds. The bigger cost is server-side analysis. A production system can collect signals client-side and process them asynchronously.
What's the biggest risk with browser fingerprinting?
False positives. Legitimate users on similar devices can look identical, and privacy tools alter fingerprints. That's why you need cross-checking and a human-friendly fallback, like a CAPTCHA, rather than hard blocks.
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.