FingerprintJS

Understanding our 99.5% accuracy

FingerprintJS Pro combines dozens of browser attributes to create a unique and stable visitorID. Attributes include screen resolution, operating system, IP address, loaded fonts, and other information that your browser can access. Individual attributes may not be accurate on their own, but when many are added together the result is unique for most website visitors. For example, lots of browsers run on Macs, but not as many have an IP address in Nebraska, and fewer still have a Wingdings font – each of these attributes add up to help make a fingerprint. With the help of a machine learning system and a few other identifiers, FingerprintJS Pro can recognize a returning browser through its visitorID 99.5% of the time.

How FingerprintJS Pro tests accuracy

As part of its normal operation, FingerprintJS Pro saves a cookie to each visitor’s browser.

We can identify cookied browsers with 100% accuracy and can use that as a reference to check the accuracy of all other identification methods. Below are the formulas for the accuracy of visitorIDs without a cookie, and the total accuracy of the FingerprintJS Pro system.

Across all our customers, the visitorID method give an average accuracy of 99.5%.

Why FingerprintJS Pro is better than cookies alone

Cookies are accurate, but are not always available. Users can delete cookies or browse in incognito mode. FingerprintJS Pro is a better way to identify browsers because it can generate a unique visitorID without cookies. Another benefit is that Pro can store the history of every attribute that we use to identify browsers. If a user switches to incognito mode, all those attributes remain the same and identification is easy. If a user upgrades their browser some attributes change but enough remain the same that we can still identify the browser.

Factors that influence accuracy

Sometimes a visitor to a website will have all the same browser attributes as another different visitor. If we aren’t able to find a difference between the two visitors, we may give that visitor’s browser the same visitorID. This situation is known as a false positive. Pro customers typically see a false positive rate around 0.5%.

Accuracy of the open source version

The FingerprintJS open source version is a JavaScript library that puts together browser attributes to generate a unique and stable hash. The open source version is less accurate than the Pro version because it does not store any history or use the server side identification methods included in the Pro version. The open source version might not be able to tell the difference between two or more browsers of the same version on the same platform because the attributes available to JavaScript are all the same. The Pro version has techniques to solve for this. See other differences between open source and Pro versions here.

FingerprintJS Pro, the market leader

In a recent browser fingerprinting study from KTH Royal Institute of Technology, only 33.6% of users were correctly identified. Other studies from the Electronic Frontier Foundation and Inria saw fingerprint accuracy between 80-90%, but those studies predate current web privacy policies and technologies. FingerprintJS Pro’s 99.5% accuracy is higher than any other service on the market. Through browser fingerprinting and other techniques, FingerprintJS Pro provides best-in-class identification accuracy while complying with GDPR and CCPA rules.

Updated 2 months ago



Understanding our 99.5% accuracy


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.