Assess key device intelligence touchpoints
To make the most of Fingerprint, it’s important to know where it will be most useful on your platform. Are you focusing on stopping fraud or improving user experiences? Begin by finding the pages or actions on your site that need visitor identification. These are usually places where sensitive actions happen or where it’s important to understand user behavior. Common areas include:- Entry pages: Recognize anonymous visitors before they identify themselves, which supports personalization and gives you earlier context on who is using your site or app.
- Login pages: Protect against account takeover and credential stuffing by recognizing known visitors without friction while reserving step-up authentication for unfamiliar or suspicious ones.
- Signup pages: Catch repeat sign-ups from the same device or automated signups from bots, and block registrations from devices you have already banned.
- Transactions and checkouts: Catch payment fraud and card testing at high-value moments, and keep the device record as chargeback evidence.
- Account updates: Re-check the device when someone changes a password, email, or payout details.
Establish baselines for visitor behavior
Next, you should analyze your visitor traffic to understand what normal behavior looks like for your platform. You can do this by analyzing your current general analytics data, or by adding Fingerprint to a few key pages and identifying visitors without acting on the results, so you start collecting identification data right away. For example, is it normal for many devices to access a single account? If so, how many devices is typical? Do most users log in from the same device every time? Knowing these baselines helps you understand what’s normal and know when to raise red flags. The Fingerprint dashboard is a quick way to get oriented: the Overview page shows usage and unique visitors, while the Smart Signals page shows how often each Smart Signal fires. You can also export identification events to CSV or use the Server API to analyze them in your own tools. For deeper analysis, store identification events in your own systems, alongside the outcomes you already monitor, so you can join them together and look for real patterns. Consider what device characteristics are more unusual for your users. For instance, if most of your users don’t use VPNs or incognito mode, you may consider those behaviors as risky. Other signals worth checking your traffic against include residential proxies, anti-detect browsers, rare device configurations, and, on mobile, rooted or jailbroken devices and emulators. One way to evaluate these signals is to use Suspect Score, which rolls them into a single risk value. Once you have collected identification data, you can label past identifications with your own fraud outcomes, upload that to the Fingerprint dashboard, and get scoring weights tuned to your traffic, showing which signals actually predict fraud for you.Define responses for flagged activity
After you understand what normal and suspicious behavior looks like on your platform, the next step is to decide how to respond. Having a range of responses based on the level of risk helps balance security with user experience. Based on the data you get from Fingerprint, here are some options:- Allow the action: For visitors with no signs of suspicious behavior, allow the action to proceed without adding extra steps, like MFA. This keeps the experience smooth for legitimate users.
- Add extra friction: If something seems off, you can add steps to verify the action. For example, if a user tries to make a purchase from an unfamiliar device, you could send a one-time passcode before completing the transaction.
- Block the action: Stop the action completely for high-risk behavior, like a malicious bot trying to change account settings. This helps prevent unauthorized access or fraud.
- Manual review: In some use cases, it may make sense to flag the activity for manual review. This allows your team to look into the situation before making a final decision.
Prepare for data storage and system integrations
When implementing Fingerprint, plan how to store, manage, and integrate the IDs and device signals it provides. Fingerprint only retains visitor history for a limited time, ranging from 30 days to 90 days or longer, depending on your plan. In the dashboard, identification events are available for 3 months, and aggregate statistics are available for 12 months. Decide if this works for you or if you need to store the data longer in your own data storage.Staying compliant with data privacy lawsWhen storing identification data, make sure to consider your business needs as well as data regulations like GDPR, CCPA, and other applicable laws. Your workspace region is chosen when you create your workspace and cannot be changed later, so confirm which region you need before you set one up.Beyond storage, consider user consent requirements. Consent isn’t always required for legitimate interests, such as fraud prevention, but it may be required for use cases like personalization. To stay compliant, be sure to follow user consent and data residency rules.
Map out installation and API usage
A quick way to get started is the Fingerprint CLI. Runnpx fingerprint from your project root, and it will sign you in, detect your frontend and backend frameworks, provision your API keys, and write the integration into your code one step at a time.
To integrate manually, add the JavaScript agent to your website’s frontend code, either through the CDN or an SDK for your framework. For mobile apps, there are SDKs covering both native apps and multi-platform frameworks. From there, choose how to safely get Fingerprint results to your server: the Server API, Sealed Client Results, or Webhooks.
The Server API can be accessed directly or through one of the backend SDKs. Requests should be made from a backend server that can securely store and access secret keys.
With Sealed Client Results, you get a fully encrypted response payload from the JavaScript agent or mobile SDKs. This payload contains the same data available through the Server API, so you can skip the extra API call and decrypt it on your backend to reduce latency.
Fingerprint can also send you identification data using webhooks. If you choose this option, you’ll need to create an endpoint on your server to receive and handle these webhook events. Webhooks provide a great way to store the full historical record of your event data.
You should also decide where your response logic lives. You can choose to write it directly in your application code, or you can use the Rules Engine. The Rules Engine lets you define rules in the dashboard and returns a rule action for each identification event, so your fraud team can adjust them as needed without waiting for a code change. The Rules Engine decides the outcome, but your application applies it.
If your site runs on Cloudflare, Flow goes a step further by deploying a worker that handles the identification setup described above, with little to no changes to your application code. You can pair it with a ruleset to enforce your rules at the edge, or run it on its own to collect identification data without taking any action.