What BrowserScan checks
BrowserScan groups its checks into several families. On the network side it reports the IP address and IP-derived geolocation, and tests for a WebRTC leak, DNS leak, open ports and HTTP/2, SSL and TLS characteristics. On the fingerprint side it reads canvas, WebGL and AudioContext values and computes a visitor hash. It also cross-checks values that should agree - most notably the IP-based timezone against the JavaScript timezone - and inspects the user-agent and Client Hints, fonts, screen, media devices and incognito state. A dedicated section handles bot and automation detection.
How the authenticity score works
BrowserScan presents its top-level result as an authenticity percentage - a clean, real browser shows 100%. The model is consistency-based: the score reflects how well all the collected signals agree with each other and with a normal browser, and inconsistencies such as a timezone that does not match the IP, tampered navigator values, a WebRTC or DNS leak, or automation flags pull the number down. One important caveat: the exact deduction algorithm and per-signal weights are not publicly documented. The "starts at 100% and deducts per inconsistency" description is observed behaviour rather than a published specification, so the precise number should be read as a rough indicator, not an audited measurement.
How it compares to CreepJS and FingerprintJS
BrowserScan and CreepJS are both hosted self-test dashboards - you visit them to read what your own browser leaks and how consistent it is. BrowserScan is broader on the network side (IP, WebRTC, DNS, ports, TLS) and uses a black-box authenticity score; CreepJS is open source and goes deeper on JavaScript-API consistency and "lie" detection. FingerprintJS is a different kind of thing entirely: not a test page but a library a site embeds to generate a stable visitor ID. BrowserScan is closely associated with the multi-profile browser vendor AdsPower, though it does not formally publish its corporate ownership.
