Un visitor ID, quelle que soit la façon dont ils reviennent
L'agent transforme plus de 100 signaux de l'appareil en visitor ID sur le serveur. Le mode incognito, les cookies effacés et les mises à jour du navigateur ne créent pas un nouveau visiteur.
Ce qu'un visiteur de retour peut modifier
L'ID correspond à l'appareil, et non au cookie ni à la connexion.
| Ils reviennent avec | Même visitor ID | Pourquoi |
|---|---|---|
| Une fenêtre privée ou de navigation incognito | Identique | Le stockage est vide, pas le matériel. |
| Cookies et données du site effacés | Identique | L'ancre matérielle et l'empreinte correspondent toujours. |
| Une mise à jour du navigateur | Identique | Une nouvelle version modifie quelques signaux ; la correspondance floue les absorbe. |
| Un VPN ou une nouvelle adresse IP | Identique | L'IP ne fait pas partie de l'ID. Elle apparaît plutôt dans les flags. |
| Un nouveau compte sur le même appareil | Identique | C'est ainsi que les multi-comptes apparaissent : un appareil, plusieurs external IDs. |
| Autre navigateur sur le même appareil | Nouveau visiteur | Chaque navigateur affiche différemment, c'est donc une autre empreinte. |
| Un autre appareil | Nouveau visiteur | L'ID est l'appareil. |
Correspondance dans l'ordre
Chaque identification est vérifiée auprès des visiteurs du projet, de la correspondance la plus sûre à la moins sûre, et l'événement indique laquelle a été retenue.
- ID stocké
- ID conservé par l'agent dans le stockage et un cookie first-party, tant que le matériel correspond.
- Ancrage matériel
- Graphiques, cœurs, mémoire et plateforme, que la mise à jour du navigateur ou le vidage du stockage ne modifie pas.
- Empreinte connue
- Exactement les mêmes signaux déjà vus dans votre projet.
- Correspondance approximative
- Composant par composant face aux visiteurs récents sur le même matériel, avec une marge sur le meilleur suivant.
- Sensible au bruit
- Canvas et audio sont exclus lorsqu'un navigateur les randomise, comme Brave et les fenêtres privées.
import { start } from 'zeno-id'
const agent = start({ publicKey: 'pk_...' })
// A stable ID per device, and whether it was seen before.
const { visitorId, returning, requestId } = await agent.get({
externalId: user.id,
action: 'login',
})Plus de 100 signaux
Collecté à partir de zéro, sans adresses réseau WebRTC.
Rendu
Canvas, fournisseur et renderer WebGL, extensions et paramètres, adaptateur WebGPU et audio.
Appareil
Écran, profondeur de couleur, ratio de pixels, cœurs, mémoire, tactile, plateforme, client hints, polices et voix.
Paramètres
Fuseau horaire, langues, calendrier, préférences multimédias, quota de stockage et états des autorisations.
Intégrité
Traces d'automatisation, natives remplacées et valeurs qui diffèrent entre la page, un worker et un iframe.
Transparent sur les limites
Un ID sur lequel fonder vos décisions car il indique son degré de certitude.
Un ID par projet
L'ID est haché avec votre projet, donc le même appareil a un autre ID ailleurs. Personne ne peut suivre vos visiteurs d'un service à l'autre.
Confiance à chaque événement
Fiabilité de la correspondance, de 0 à 1. Une correspondance approximative sur un appareil courant obtient un score plus bas qu'un ID enregistré sur un matériel rare.
Une piste, jamais une preuve
Des appareils identiques, comme le même modèle de téléphone avec le même OS, peuvent partager un ID. Vérifiez un ID partagé avec les external IDs, flags et la connexion.
Identifiez votre premier visiteur aujourd'hui
Installez l'agent, lisez l'événement sur votre serveur et c'est terminé.