One device. One free trial. Checked on the server.

  • Web apps
  • iOS apps
  • Android apps
FingerPrint Checker / Decision preview
Device identification and fraud signals for web and native apps

Know who came back.

FingerPrint Checker gives every browser and every Android, iOS and macOS app install a stable, server-verified device ID, and reports what your server needs to decide: Smart Signals, bot and AI-agent classification, and allow, verify or deny for free trials, coupons and anonymous limits.

A free plan every month. No card required.

Live demo

See what we see about your browser, right now

Run it once and this page shows the visitor ID, location, network and trust score FingerPrint Checker reads from the browser you are using.

Running this sends your browser's signals and your IP address to FingerPrint Checker, which keeps them for up to 180 days after your last visit to recognise this browser. Nothing is used for advertising.

Live result from this browser. Your backend reads the same event with its secret key.

The launch film

One household, one claim, in three minutes

A private window, a new email, the phone on the same Wi-Fi, your app: watch every trick get the same answer. Then see what else FingerPrint Checker protects, and how it plugs into your backend.

Watch on YouTube
Build with AI

Set it up with one command.

One command starts the FingerPrint Checker CLI and MCP server, so your AI coding assistant can work with your projects directly.

npx -y @fingerprintchecker/cli
Read the AI guide
Any browser, any device

Web, mobile and server, covered.

Open-source SDKs for the client and the server, plus wrappers for the frameworks you already use.

Browsers and apps

  • Web
  • Android
  • iOS
  • macOS

Frameworks

  • React
  • Vue
  • Flutter
  • React Native

Server SDKs

  • Node
  • Python
  • Go
  • Java
  • PHP
  • .NET
See all SDK libraries
Smart Signals

Everything the server learns about a visit.

Each event carries the signals your backend needs to decide, from the network, the browser and recent activity.

Network

VPN, proxy, Tor, hosting networks and blocklists.

Browser

Tampering, privacy browsers and virtual machines.

Activity

How fast one visitor keeps coming back.

Mobile apps

Root or jailbreak, hooking, emulators, MitM, location spoofing and cloned apps.

Recorded, not scored yet

Signals reach you through the server API and webhooks only, never through the browser or the app.

Explore Smart Signals
Not all bots are bad

Tell good bots from bad ones, and spot AI agents.

Every visit is classified as a good bot, a bad bot or not detected. AI agents are named, and bots that sign their requests can be verified with Web Bot Auth. Our public directory lists 142 known bots.

Good bots

Search engines and other crawlers you want to let in.

Bad bots

Scrapers and automation you want to stop.

Not detected

Visits that show no sign of a bot.

AI agents

Assistants and agents that browse for their users, identified by name.

One household, one free trial

Every browser. Every device. Every app.

People who abuse free trials try another browser, then the laptop, then the phone, then your app. Once one of them has claimed, FingerPrint Checker refuses the rest.

Every browser on one computer

Different browsers on the same computer and network get the same device ID, so a second browser never earns a second trial.

Every device on one Wi-Fi

Once a desktop, laptop, tablet or phone has claimed at home, the others on that network are refused, even after they switch to mobile data.

Your website and your apps

Put your web project and your iOS and Android apps in one claim group and they share one limit: claimed on the website means refused in the app.

Caught later, too

A phone that claimed on mobile data and later joins the same home Wi-Fi is flagged, and your backend can list those claims through the API.

Built for your backend

An API, webhooks and rules you control.

Whatever you can do in the console, your code can do too.

Events API and search

Read and search events by visitor, IP range and date.

Webhooks

Have every event pushed to your server.

Sealed results

An encrypted result that only your server can open.

Request filters

Filter out requests you do not want to process.

Rules

Turn signals into allow, verify or deny decisions your way.

Cloudflare proxy

Serve the agent through a Cloudflare Worker you deploy.

OpenAPI

A machine-readable spec for the whole API.

Developer documentation
Your team

Made for more than one person.

Give everyone the access they need and keep test traffic apart from production.

Roles

Owner, admin, billing, editor and viewer.

Audit log

See who changed what, and when.

Test and production

Separate environments for each project.

Management keys

Automate project setup with keys of your own.

Create a free account
Privacy by design

Signals in. Decisions out. Nothing more.

Browsers and apps only collect raw signals. Normalising, hashing, matching and scoring all happen on the server, so a forged client cannot mint its own identity. On Android and iOS, Play Integrity and App Attest prove the request came from your real app. Device records expire after 180 days without a visit.

Read our privacy policy

Pricing

Pay for checks, not seats.

Start free and move to Pro when you grow. Only decisions count, and you are never billed for usage you did not buy.

Free

$0 / month

For trying the service and small projects.

  • 1,000 checks per month
  • Hard stop when the checks are used up
  • 7-day event retention
  • No card required
Start for free

Pro

Billing period

$49 / month

or $490 per year

For products with steady sign-ups.

  • 20,000 checks per month
  • No rollover
  • 30-day event retention
  • 14-day free trial, no card
  • Prepaid add-ons: $2 per 1,000 checks, minimum 10,000
  • Add-on checks are valid for 12 months from purchase.
  • Optional auto-recharge
Start your free trial

Enterprise

Custom

For high volume and longer retention.

  • From 500,000 checks per month
  • 90-day event retention
Contact sales

Identify calls are free; only decisions count. You are never billed for usage you did not buy: there are no overage invoices.

Full pricing details

A few things worth knowing.

What does FingerPrint Checker do?

It gives every browser and app install a stable device ID and reports Smart Signals for each visit. Your server reads them and decides: allow, verify or deny, for example one free trial per device.

How do I get the results on my server?

The browser or app only receives a visitor ID, an event ID and a sealed result. Signals reach your backend through the events API, with your secret key, and through webhooks. Server SDKs exist for Node, Python, Go, Java, PHP and .NET.

Can it detect bots and AI agents?

Yes. Each visit is classified as a good bot, a bad bot or not detected, and AI agents are identified by name. Bots that sign their requests can be verified with Web Bot Auth. Bot checks are free.

Do mobile apps get risk signals?

Yes. Root or jailbreak, hooking, emulators, MitM, location spoofing and cloned apps are recorded and returned through the server API. They are not scored yet, so today they do not change the trust score.

Can my team use it?

Yes. Add people as owner, admin, billing, editor or viewer, keep test and production environments apart, review the audit log, and use management keys to automate setup.

Is there a CLI or an MCP server?

Run npx -y @fingerprintchecker/cli to start the CLI, which also works as an MCP server for your AI coding assistant.

What is free, and what do you store?

Identifying a device, reading and searching events and bot checks are free; only decisions count. Every account starts on a Free plan with a monthly allowance of checks, and Pro and prepaid add-ons give you more. You are never billed for usage you did not buy. Device records are deleted after 180 days without a visit; events are kept for 7 to 90 days, depending on your plan. Add-on checks are valid for 12 months from purchase.

Give every free offer to the people it was meant for.

Start for free

A free plan every month. No card required.