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)

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

Old browsers requirements

The JS agent requires a Promise polyfill to work in very old browsers like Internet Explorer 11 and Android Browser 4.4. Add a Promise polyfill before loading the JS agent. Examples for various installation methods:

Global variable
+ <script src="//cdn.jsdelivr.net/npm/[email protected]/dist/polyfill.min.js"></script>
  <script>
    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/[email protected]/dist/fp.min.js';
      document.head.appendChild(script);
    }).then(() =>
      // Start loading FingerprintJS here
    );
  </script>

If you use a synchronous loading:

+ <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/polyfill.min.js"></script>
  <script src="https://cdn.jsdelivr.net/npm/@fingerprintjs/[email protected]/dist/fp.min.js"></script>
  <script>
    // Start loading FingerprintJS here
  </script>
UMD
require(
    [
      'https://cdn.jsdelivr.net/npm/@fingerprintjs/[email protected]/dist/fp.umd.min.js',
+     'https://cdn.jsdelivr.net/npm/[email protected]/dist/polyfill.min.js',
    ],
    (FingerprintJS) => {
      // Start loading FingerprintJS here
    }
  );
ECMAScript module

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
CommonJS

Install the polyfill package first:

npm install promise-polyfill
yarn add promise-polyfill
+ require('promise-polyfill/src/polyfill');
  const FingerprintJS = require('@fingerprintjs/fingerprintjs-pro');

  // Start loading FingerprintJS here

Did this page help you?