Identification
- For websites, the visitor ID provided by the JavaScript agent identifies the browser interacting with your website. Every browser (e.g. Safari, Chrome, Firefox, etc) on the device gets a unique visitor ID even if they are on the same device.
- For mobile apps, the visitor ID provided by mobile SDKs identifies the mobile device interacting with your mobile app.
- For Android devices, see Android:Device Identifier
- iOS devices, see iOS:Device Identifier
Identification accuracy
In general, for mobile devices, the identification accuracy is higher than for browsers. This is because the native mobile SDKs can access several operating system properties that remain stable over a long time. These properties are typically not available to a Javascript agent operating from within a browser.Unlike the JavaScript agent for browsers, the mobile SDKs do not cache identification responses on the device.This is intentional. Many of the mobile Smart Signals used in fraud prevention (for example, MITM detection or active call detection) are only meaningful if they reflect the device’s current state at the time of the request. Caching a response on the SDK side would mean an app could act on a signal that no longer reflects that state, which reduces its value for time-sensitive risk decisions.If your mobile app needs to reduce the number of identification calls it makes, we recommend implementing caching at the application layer, where you control the cache duration and can decide which signals are safe to reuse for your specific use case and for how long. A common pattern is to cache the visitor ID for the duration of a user session and request a fresh identification on new sessions or before high-risk actions (e.g. login, checkout, payment).
Smart Signals for mobile devices
Smart Signals are actionable device intelligence signals that help you to make informed decisions about the device and thus prevent fraud. For a quick overview of the different Smart Signals available for each platform, see See Smart Signals setup and usage for information on how to receive these Smart Signals.Evading ad blockers
If your users’ mobile devices have ad-blocking mobile apps, they can block requests that your app makes to the Fingerprint domains. You can evade these ad-blocking mobile apps by proxying requests through your own domain. See Evading ad blockers with proxy integrations for more information.Privacy and data safety
When you publish your app to the App Store or Google Play, you must disclose information about the data collected and its usage. This requirement applies to your app as well as to the third-party SDKs the app uses. For iOS apps, Apple requires you to provide a privacy manifest file to declare the data that your app/SDK collects and the reasons for collecting the same. To learn more, see Privacy Manifest File Requirements for App Store. For Android apps, Google requires that the app’s privacy and security practices be made available to all its users. To learn more, see Data Safety Requirements for Google Play.Additional resources
- Want to see the iOS SDK in a demo app? Download the iOS Demo app from the App Store.
- Want to see the Android SDK in a demo app? Download the Android Demo app from Google Play.