Orange textured background

Blog

Browser fingerprinting, explained.

Use-case guides, developer explainers, and technical deep-dives on device signal collection, anti-fraud, and privacy. 11 posts published.

Research

How to match a device across browsers without a server

Matching the same device across Chrome, Safari, Firefox, and Brave is usually framed as a server-side correlation problem. Partition the signal set by what varies between browsers and the cross-browser identifier becomes deterministic and computable client-side. The hard part is the partition, not the match.

9 min read

Use case

How to stop referral-program fraud: self-referrals and referral rings

Referral programs pay real credit per signup, so the dominant abuse is self-referral and referral rings: one person or a handful of devices behind many 'distinct' referees. Cross-browser device matching links the referee back to the referrer and collapses the ring, even across browser switches and incognito.

8 min read

Use case

How to detect bots and anti-detect browsers without a CAPTCHA

Bots and anti-detect browsers are two unrelated threats that a single fingerprint hash misses. Benny returns two independent scores on every call, an automation likelihood for drivers and a spoof likelihood for forged browsers, so you can gate both client-side without a CAPTCHA.

8 min read

Concept

Comparing two device fingerprints: 6 match modes and when to use each

Most fingerprinting libraries hand you a hash and ask you to write the comparison logic. The six built-in modes in compareFingerprints cover the full range from exact hash equality to hardware-only cross-browser matching, each with fuzzy tolerance, a numeric score, and a diff vector.

9 min read

Use case

How to detect duplicate signups and multi-accounting

Multi-accounting survives every identity check users control: new email addresses, VPNs, cookie clears, different browsers. A hardware-bound device fingerprint with cross-browser comparison is the durable key that catches the same device regardless of how the account layer is reset.

8 min read

Concept

Do device fingerprints work in incognito mode?

Incognito mode prevents cookies and local storage from persisting, but hardware-bound and most engine-bound browser signals are still readable. A well-constructed fingerprint survives private browsing on every major desktop browser, with one notable caveat on iOS.

6 min read

Concept

The best browser fingerprinting libraries, compared

A practical comparison of the leading browser fingerprinting libraries. FingerprintJS has the widest signal set, ThumbmarkJS and ClientJS are simple drop-ins, CreepJS is a research tool, and Benny the Doorman adds a cross-browser hardware ID and free anti-spoof. Here is how to choose.

9 min read

Concept

Fingerprint vs cookies vs IP for identifying users

Cookies are easy to set and easy to clear. IP addresses are free but shared and unstable. Device fingerprints survive cookie clears and browser switches but are probabilistic. This guide compares all three across persistence, cross-browser reach, accuracy, and privacy, and shows when to layer them for durable identity.

7 min read

Concept

Why one fingerprint hash is not enough: hardware vs engine identity

Most fingerprinting libraries return one hash that shifts whenever the browser shifts. Splitting signals into hardware-bound and engine-bound categories produces a second, stable hash that survives browser switches, incognito mode, and cookie clearing on the same physical device.

7 min read

Concept

What is a device fingerprint?

A device fingerprint is a stable identifier derived from the properties a device and browser reveal, hashed into a compact ID that recognizes a returning device without a cookie. This guide covers how they are built, how unique they are, what they are used for, and how to generate one in JavaScript.

8 min read