Makes a website visitor identifier from a browser fingerprint.
Unlike cookies and local storage, fingerprint stays the same in incognito/private mode and even when browser data is purged.
Provides additional information and higher accuracy compared to Open Source FingerprintJS.
Quick start
Get a pro key:
- Register a new PRO account at dashboard.fingerprintjs.com/signup (there is a free trial)
- After registration go to the dashboard and select the created subscription
- Go the "API Keys" page in the navigation side bar on the left side of the page
- Copy a key with type "Public"
Install from CDN
<script>
const fpPromise = new Promise((resolve, reject) => {
const script = document.createElement('script')
script.onload = resolve
script.onerror = reject
script.async = true
script.src = 'https://cdn.jsdelivr.net/npm/'
+ '@fingerprintjs/fingerprintjs-pro@3/dist/fp.min.js'
document.head.appendChild(script)
})
.then(() => FingerprintJS.load({ apiKey: 'your-pro-key' }))
fpPromise
.then(fp => fp.get())
.then(result => {
const visitorId = result.visitorId
console.log(visitorId)
})
</script>
Run this code
Alternatively you can install from NPM to use with Webpack/Rollup/Browserify
npm i @fingerprintjs/fingerprintjs-pro
yarn add @fingerprintjs/fingerprintjs-pro
import FingerprintJS from '@fingerprintjs/fingerprintjs-pro'
const fpPromise = FingerprintJS.load({ apiKey: 'your-pro-key' })
;(async () => {
const fp = await fpPromise
const result = await fp.get()
const visitorId = result.visitorId
console.log(visitorId)
})()
Run this code
See also
🍿 Live demo
⏱ How to upgrade from Open Source to Pro in 30 seconds
⬆️ How to migrate from FingerprintJS Pro version 2
📕 FingerprintJS Pro documentation
▶️ Video: use FingerprintJS Pro to prevent multiple signups