navigator.cpuPerformance is a tier Chromium assigns to the core count it reports
cpuPerformance is an integer from 0 to 4 that Chromium's rules allow for the reported core count, and a Google Chrome claim at 152 or later exposes it in a secure context. N/A on non-Chromium engines and outside secure contexts (severity: warn).
What a detector infers
Chromium 152 shipped navigator.cpuPerformance, a tier from 0 (unknown) to 4 (ultra). The browser computes it from two inputs: the CPU model string and the number of logical processors — and that number is exactly what navigator.hardwareConcurrency reports.
Chromium's own rules make the core count alone decide which tiers are reachable: one core is always low; two to four can be low, mid or high depending on the model; five to seven are always high; eight to twelve are high or ultra; thirteen or more are always ultra (a placeholder computed at startup is included in these bounds).
So a machine reporting 4 threads and tier 4, or 16 threads and tier 2, is two numbers from two different sources — the common result of overriding hardwareConcurrency on a machine whose new tier API still reports the host. No table of CPUs is involved, so nothing here rots. Measured on genuine Chrome 153 with 16 threads: tier 4.
How to resolve it
Derive the tier from the same CPU the persona claims: if hardwareConcurrency is overridden, override cpuPerformance to a tier Chromium assigns that core count. The one genuine way to reach any other tier is the CpuPerformanceTierOverride enterprise policy.
Nearby checks in Navigator identity
- no other engine's properties exist on this one, even holding undefined
legacy-engine-props-absentThere is a difference between a property that returns undefined and a property that does not exist, and only one of them is what a real… - navigator.deviceMemory is a power-of-two spec value
device-memory-boundsnavigator.deviceMemory does not report actual RAM — the spec requires the UA to quantise it to a coarse power-of-two rung before exposing… - navigator.hardwareConcurrency is plausible
hardware-concurrencyThis is an info-severity observation, not a scored failure — it reports navigator.hardwareConcurrency and only notes whether the value is an… - the machine delivers no more parallelism than it claims cores
hardware-concurrency-vs-parallelismThe plain hardwareConcurrency row can only ask whether the number looks sane, because no second API reports a core count. - the Keyboard API's presence matches the claimed engine and form factor
keyboard-api-vs-platformThe Keyboard API — navigator.keyboard, with getLayoutMap and lock — ships in desktop Chromium and nowhere else: not in Gecko, not in WebKit… - browser-brand and context hints agree with a fresh realm
brand-hints-vs-realmSome of the cheapest signals to fake are the ones that say which browser this is: navigator.brave exists only in Brave, window.duckduckgo… - location.origin is the serialisation of its own protocol, host and port
location-origin-coherenceAn origin is not stored next to a URL, it is serialised from it: for an http or https document, origin is exactly the scheme, followed by… - navigator.vendor is the constant the measured engine compiles in
navigator-vendor-vs-enginenavigator.vendor is not a preference or a setting — it is a string constant compiled into the engine.
Clearcote is a browser built for fingerprint coherence
It is a Chromium fork, maintained by the same people who wrote this reference. It ships as a compiled browser rather than as a stealth script injected into someone else's — which is a description of how it is built, and is not an argument about how it behaves on this check.
This audit takes no position on how Clearcote scores on Navigator identity checks, on this one, or anywhere else. It has no baseline corpus of other people's fingerprints to rank you against and no vendor scoreboard — nearly every check is self-referential, asking one browser the same question through two independent APIs and reporting whether both answers can be true at once. It runs identically on any browser, including ours. Run it on yours and read the result yourself.
See the other checks in Navigator identity — the family cpu-performance-vs-hardware belongs to.
