Browser support

FingerprintJS Pro supports all popular browsers. We use the following terminal command to decide which browsers to support:

npx browserslist "cover 96% in us, not IE < 11"

At the moment, the browsers are:

  • Internet Explorer 11 (see the section below)
  • Edge 93+
  • Chrome 49+
  • Firefox 52+
  • Desktop Safari 12.1+
  • Mobile Safari 10.3+
  • Samsung Internet 14.0+
  • Android Browser 4.4+ (see the section below)
  • Brave all versions

Other browsers may work, but we don't guarantee the correct operation.

Old browsers requirements

import() support

If you install JS agent using the CDN installation method with import, you may face an error because old browsers don't support import. Replace it with a <script> tag:

```diff
+ // Note that we use iife.min.js with older browsers
+ <script src="https://fpcdn.io/v3/<<browserToken>>/iife.min.js"></script>
  <script>
-   const fpPromise = import('https://fpcdn.io/v3/<<browserToken>>')
-     .then(FingerprintJS => FingerprintJS.load())
+   var fpPromise = FingerprintJS.load()

    // ...
  </script>
```

Polyfills

Very old browsers like Internet Explorer 11 and Android Browser 4.4
require a Promise polyfill to work. Add a Promise polyfill before loading the FingerprintJS agent. Examples for various installation methods:

Script tag

+ <script src="//cdn.jsdelivr.net/npm/[email protected]/dist/polyfill.min.js"></script>
  <script src="https://fpcdn.io/v3/<<browserToken>>/iife.min.js"></script>
  <script>
    var fpPromise = FingerprintJS.load()

    // ...
  </script>

UMD

require(
    [
      'https://fpcdn.io/v3/<<browserToken>>/umd.min.js',
+     'https://cdn.jsdelivr.net/npm/[email protected]/dist/polyfill.min.js',
    ],
    FingerprintJS => {
      // Start loading FingerprintJS here
    }
  );

NPM

Install the polyfill package first:

npm install promise-polyfill
yarn add promise-polyfill
+ import 'promise-polyfill/src/polyfill';
  import FingerprintJS from '@fingerprintjs/fingerprintjs-pro';

  // Start loading FingerprintJS here
+ require('promise-polyfill/src/polyfill');
  const FingerprintJS = require('@fingerprintjs/fingerprintjs-pro');

  // Start loading FingerprintJS here

Did this page help you?