FingerprintJS is the most advanced
open-source fraud detection JS library

Need more speed and accuracy? Try FingerprintJS Pro

Why use FingerprintJS?

FingerprintJS has a unique approach to prevent fraud on your website. The library generates a unique identifier of a browser without using cookies or any information that can be easily reset by a malicious user. By storing this identifier in your database you will get an accurate idea if someone is trying to use the same device (computer, tablet or phone) to register twice, submit a vote multiple times, use multiple credit cards or perform any other type of suspicious activity.

Advanced identification methods

FingerprintJS employs the most advanced methods of identification available: canvas fingerprinting, audio sampling, WebGL fingerprinting, font detection and browser plugin probing. Every method will help you catch more bad actors on your website.

Fast performance

You can run FingerprintJS for every user, even those on low-powered mobile devices. The library will automatically detect browser features and selectively query browser parameters that are available. The Pro version has even faster detection (80-100ms) via greater customizability.

Easy to use API

Written in vanilla JS with zero dependencies, this library can be dropped into any page or used as a module in your build system. Install it via your favorite package manager and you're ready to go.

How It Works

FingerprintJS collects all the unique features from a device/browser passing them through a hash function to provide a unique identifier.


It collects the unique features from a browser via the client JS


It processes all collected data to normalize any minor changes


It hashes the processed data to produce a unique identifier