Know your users.
Classify your traffic.

Three SDKs for three trust problems — fingerprint browsers, classify API callers, track CLI usage. All running at the edge.

Your device fingerprint

Scanning
Canvasunique hashWebGLfingerprintedAudiosampledTLSverifiedFonts14 detectedScreencapturedWebRTCcheckedVPNcleanHeadlessnegativeRTTconsistentASNresidentialIP RepcleanTimezonematchedGPUhashedPlatformvalidatedPluginsenumeratedCanvasunique hashWebGLfingerprintedAudiosampledTLSverifiedFonts14 detectedScreencapturedWebRTCcheckedVPNcleanHeadlessnegativeRTTconsistentASNresidentialIP RepcleanTimezonematchedGPUhashedPlatformvalidatedPluginsenumerated

99.2%

Identification accuracy

41

Browser signals per visit

<50ms

Edge response time

Zero

PII collected. Ever.

Works with your stack

ReactReact
Next.jsNext.js
VueVue
SvelteSvelte
Node.jsNode.js
PythonPython
HonoHono
VercelVercel
AWSAWS
WordPressWordPress

Three products, one platform

Browser, server, and CLI.
Each solving a different trust problem.

Know who's visiting — even without cookies

Recognize returning visitors with 99%+ accuracy using 41 browser signals + edge network analysis. Canvas rendering, GPU quirks, font stacks, and transport-layer fingerprints fuse into a stable ID that survives cookie clears and incognito mode.

  • 41 browser signals + edge network analysis, fused at the edge
  • Stable visitor ID across sessions and devices
  • Bot detection, headless browser classification
  • Web3 wallet detection and Sybil scoring

99.2%

Accuracy

41

Browser signals

<50ms

p99 latency

Try the live demo
$ npm i @fingerprintiq/js

import FingerprintIQ from '@fingerprintiq/js';

const fiq = new FingerprintIQ({ apiKey });
const result = await fiq.identify();

// result.visitorId → "iq_01kn8f3a2b..."
// result.confidence → 0.992
// result.botProbability → 0.003
New

Web3 wallet intelligence — live demo

Spot MetaMask, Phantom, Rabby and 15+ others without a single popup. Look upvitalik.ethand get portfolio, wallet age, and sybil score back.

Open demo →

Every device is unique

Your browser leaves
a fingerprint

Canvas rendering, GPU characteristics, font stacks, audio processing, screen geometry — every device produces a unique combination of signals. We scan and fuse them into a stable identity, even across sessions.

99.2%

Identification accuracy

41

Browser signals

<50ms

Edge response time

0%

PII stored

Why FingerprintIQ

One platform covering browser, server, and CLI — with signals that can't be faked.

Edge Network Analysis

JA4/TLS fingerprinting, RTT geo-coherence, ASN classification, and HTTP fingerprint analysis run before JavaScript executes and cannot be spoofed by browser extensions.

Edge Performance

Sub-10ms identification at 300+ edge PoPs. No round-trip to a centralized API.

API Caller Classification

Every request to your API is classified as browser, bot, AI agent, CLI tool, or scraper — before your application code runs.

41 Browser Signals

Canvas, WebGL, WebGPU, audio, fonts, WASM timing, math precision, DOMRect, headless detection — collected in parallel, then fused with edge network analysis for 99%+ accuracy.

Web3 Native

Wallet extension detection, Sybil risk scoring, on-chain enrichment.

CLI Analytics

Track command usage, machine fingerprints, and adoption metrics for your CLI tools — no PII, no guilt.

Privacy by Default

No PII stored anywhere. No emails, no IP addresses. DO_NOT_TRACK respected across all products.

New · Web3 intelligence

Wallet detection, ENS, and on-chain
reputation in one SDK.

See which wallets a visitor has installed without ever opening a popup, look up any ENS name, and pull portfolio, wallet age, and sybil-cluster signals for any EVM address — from the same drop-in SDK.

Detected passively

MetaMaskPhantomRabbyCoinbaseRainbowBackpack+12 more
$ curl /v1/wallet/vitalik.eth
net_worth_usd: 4.2M
wallet_age_days: 3651
labels: ["whale", "defi_user"]

How It Works

Three steps to production. Pick your product.

Get started
1
$ npm i @fingerprintiq/js

import FingerprintIQ from '@fingerprintiq/js';

Install the browser SDK

One npm package. Works with React, Vue, Svelte, or vanilla JS.

2
const fiq = new FingerprintIQ({ apiKey });
const result = await fiq.identify();

Call identify()

Three lines of code. Collects 41 browser signals, then fuses them with edge TLS/ASN/RTT analysis.

3
{
"visitorId": "iq_01kn...",
"confidence": 0.992,
"botProbability": 0.003,
"verdicts": { ... }
}

Get a stable visitor ID

Confidence score, bot probability, and detection verdicts. Sub-50ms.

Honest pricing. No traps.

Every plan includes Identify, Sentinel, and Pulse. No feature gating.

Free

$0/mo

For evaluation and indie projects.

  • 25,000 identifications/mo
  • All 41 browser signals
  • Sentinel API classification included
  • Pulse CLI analytics included
  • Dashboard included
  • Community support
Get started free
Popular

Growth

$49/mo

For growing products and startups.

  • 500,000 identifications/mo
  • All 41 browser signals
  • Sentinel + Pulse unlimited
  • Dashboard + API access
  • 1,000 req/sec rate limit
  • Priority support
  • Webhook alerts
Start free trial

Scale

$149/mo

For high-volume and mid-market.

  • 5,000,000 identifications/mo
  • All 41 browser signals
  • Sentinel + Pulse unlimited
  • Web3 add-on included
  • Custom rate limits
  • Dedicated support
  • SLA guarantee
Get started

All plans include a permanent free tier. No credit card required to start.

Frequently asked
questions

Common questions about Identify, Sentinel, and Pulse.

Our multi-layer approach combining 41 browser signals with edge network analysis (JA4/TLS, RTT, ASN, HTTP fingerprints) achieves 99%+ accuracy. Unlike client-only solutions, those edge checks cannot be spoofed by browser extensions.

Identify is a browser SDK that fingerprints visitors on the client side. Sentinel is server middleware that classifies API callers (browser vs. bot vs. AI agent vs. CLI tool) using TLS and header analysis. Pulse is a lightweight analytics library for CLI tools that tracks command usage without collecting PII. They're independent products — use one or all three.

Yes, permanently. 25,000 identifications per month, all 41 browser signals included, no credit card required. Sentinel and Pulse are included in every plan.

FingerprintJS open-source is client-only (~60% accuracy). Their Pro product starts at $100/month. We combine 41 browser signals with proprietary edge network analysis at a fraction of the price. We also offer API caller classification (Sentinel) and CLI analytics (Pulse), which FingerprintJS doesn't have.

Sentinel classifies requests into seven categories: BROWSER_HUMAN, BROWSER_AUTOMATED, AI_AGENT, CLI_TOOL, SDK_CLIENT, BOT_SCRAPER, and UNKNOWN. Each classification includes a confidence score and TLS fingerprint details.

No. We never store IP addresses, email addresses, or any personally identifiable information. Visitor IDs are derived from device signals only. Pulse for CLI tools also collects zero PII — it fingerprints machines, not people.

Yes. If a user has DO_NOT_TRACK set or is running in a CI environment, Pulse automatically skips telemetry. No configuration needed.

Each product is a separate npm package. Identify: import the SDK and call identify(). Sentinel: add middleware to your Hono app. Pulse: initialize with your tool name and call track() per command. Full TypeScript support across all three.

Start building with FingerprintIQ

Fingerprint browsers, classify API callers, or track CLI usage. Pick one product or use all three.