Skip to content

Migrate to tracio.ai

Move off any device fingerprinting provider with about half an hour of integration work and a day or two of parallel running. tracio.ai is not a drop-in endpoint swap: you install our SDK, switch server-side reads to webhooks, and visitor IDs start fresh.

Why Teams Switch to tracio.ai

300+ browser signals — roughly twice what FingerprintJS Pro collects
Invisible bot detection and behavioral analysis — no CAPTCHAs, no friction
MIT-licensed client SDK — audit every signal we collect
Anti-detect browsers surfaced by the spoofing they perform, not by a brand list
About 30 minutes of integration work, then a parallel run on your own traffic
Rollback is a single deploy — reinstall your previous SDK

Migrating From

FingerprintJS Pro

~133 signals

Roughly double the browser signals (300+), anti-detect spoofing scored 0–100, MIT-licensed SDK

Castle

an undisclosed number of signals

A dedicated device engine for pre-login traffic, published pricing, full raw-signal access

SEON

an undisclosed number of signals

A deeper device layer beneath identity enrichment, confidence scoring, signed webhooks

reCAPTCHA

no published signals

Zero user friction, no Google data sharing, headless and automation-framework detection

Migration Steps

Five steps from your current provider to tracio.ai. About 30 minutes of integration work, plus a day or two of parallel running before you cut over.

1

Create Your tracio.ai Account

2 minutes

Sign up and get your API key. Your Free plan includes 2,500 free API calls — enough to run a complete parallel comparison against your current provider.

2

Install the tracio.ai SDK

5 minutes

Add @tracio/sdk alongside your existing fingerprinting SDK. This is a code change, not an endpoint swap — tracio.ai ships its own client and its own result shape. Running both at once lets you compare on production traffic without disrupting it.

npm install @tracio/sdk
3

Switch Server-Side Reads to Webhooks

15 minutes

Identification results are pushed to your server as signed webhooks the moment a visitor is identified, so most integrations retire their polling loop entirely. If you still need to read a visit after the fact, the Server API answers by requestId from the Pro plan up. Either way the payload is our own flat camelCase document, so you map the fields once.

// Before (competitor) — poll by requestId
const resp = await fetch("https://api.competitor.io/events/" + requestId, {
  headers: { "Auth-API-Key": COMPETITOR_API_KEY }
});

// After (tracio.ai) — receive a signed webhook per identification
app.post("/webhook/tracio", (req, res) => {
  // verify req.headers["x-tracio-signature"], then act on req.body
  const event = req.body; // { requestId, visitorId, bot, decision, ... }
  res.status(200).send("OK");
});
4

Run Parallel Comparison

24-48 hours

Run both SDKs simultaneously for 24-48 hours. Visitor IDs will not match between providers — each is computed from a different database — so compare what actually matters: whether the same physical device is recognized consistently across visits, and how the bot verdicts line up on your traffic.

5

Cut Over to tracio.ai

10 minutes

Remove the old SDK and keep your webhook handler as the server-side source of truth. There is no downtime — both SDKs run side by side until you drop the old one. Returning visitors start fresh in our database, so map them to your existing accounts with linkedId. If anything goes wrong, the rollback path is simply reinstalling the old SDK.

Ready to Switch?

Create your free account and start the migration. Our team is available to help with the webhook handler and the parallel run.