Hardware Concurrency refers to the navigator.hardwareConcurrency property that reveals the number of logical processor cores available to your browser.
💡 Key Point: This simple number (like 4, 8, or 16) helps identify your device and must be consistent with other hardware fingerprints.
🔬 How It Works
// Get CPU core count
const cores = navigator.hardwareConcurrency;
console.log(cores); // e.g., 8
This returns the number of logical processors, which includes:
- Physical CPU cores
- Hyper-threading virtual cores
📊 Common Values
| Device Type | Typical Values |
|---|---|
| Budget Laptop | 2-4 cores |
| Mid-range Desktop | 4-8 cores |
| High-end Desktop | 8-16+ cores |
| Mobile Phone | 4-8 cores |
| Server/Workstation | 16-64+ cores |
🛡️ Spoofing Considerations
When spoofing hardware concurrency:
- Match Device Profile: A mobile device shouldn't report 32 cores
- Use Common Values: 4, 8, 12, 16 are most common
- Be Consistent: Should match device memory and other specs
- Avoid Extremes: 1 core or 128 cores are suspicious
🔍 Why It Matters
Hardware concurrency is used for:
- Device fingerprinting
- Web Worker optimization
- Performance profiling
- Bot detection (VMs often have unusual core counts)
❓ FAQ
Can websites see my exact CPU model?
▼
Not directly through hardwareConcurrency. However, combined with WebGL (which can reveal GPU info) and performance benchmarks, they can make educated guesses.