Cross-device tracking: sessies koppelen zonder login
Hoe ons device-identificatiealgoritme anonieme sessies over browsers en apparaten heen verbindt met probabilistische signaalmatching en grafiekanalyse.
Wanneer een gebruiker uw site 's ochtends op de laptop bezoekt en 's middags op de telefoon, zien de meeste analyticsplatforms twee volledig gescheiden bezoekers. Ons device-identificatiealgoritme kan deze sessies probabilistisch koppelen — zonder login te vereisen — door signaaloverlap te analyseren en device graphs op te bouwen.
Het cross-device-probleem
Traditionele fingerprinting genereert een unieke ID per browserinstantie. Chrome op een laptop produceert de ene ID; Safari op een iPhone een andere. Zelfs op hetzelfde apparaat genereren verschillende browsers verschillende fingerprints, omdat ze verschillende user agents, verschillende feature-ondersteuning en verschillende rendering-eigenschappen hebben.
Maar gebruikers denken niet in browsers. Ze denken in sessies. Ze beginnen een aankoop op hun telefoon tijdens de lunch en ronden die thuis af op hun laptop. Ze onderzoeken een product op hun tablet en kopen het op hun desktop. Voor fraudedetectie en personalisatie is het cruciaal om te begrijpen dat deze sessies bij dezelfde persoon horen.
Probabilistische signaalmatching
Onze cross-device koppeling is opgebouwd rond een persoonsgrafiek met drie soorten nodes: de bezoeker (één browserprofiel), het apparaat (de machine onder meerdere browserprofielen) en een gehashte identifier die is afgeleid van een ondertekend e-mailadres of telefoonnummer dat uw eigen applicatie aan ons doorgeeft. De edges tussen die nodes zijn wat twee sessies tot één persoon samenvoegt.
Bewust afwezig in dat rijtje: het IP-adres en de ASN. Een gedeeld netwerk is het verleidelijke signaal en het verkeerde — een kantoor, een campus of carrier-grade NAT zet duizenden onderling ongerelateerde mensen achter één adres, dus een edge op basis van IP levert precies de soort onjuiste koppeling op die het duurst is om ongedaan te maken. De deterministische edges die we wel gebruiken — hetzelfde apparaat, dezelfde gehashte identifier, dezelfde canonieke bezoekerswortel — zijn edges die een gedeeld netwerk niet uit het niets kan vervalsen.
Daarbovenop zit een begrensde probabilistische component: bevestigde gedragsparen van een bezoeker kunnen als aanhechtingskandidaten worden overwogen, gelimiteerd tot een klein aantal per bezoeker en alleen boven een confidence-ondergrens. Dat verbreedt een cluster dat deterministische edges al verankeren; het start er zelf geen.
Opbouw van de device graph
Elke bevestigde koppeling of koppeling met hoge waarschijnlijkheid tussen sessies creëert een edge in een device graph. De grafiek verbindt browserinstanties met device-nodes, en device-nodes met persoon-nodes. Naarmate er in de loop van de tijd meer sessies samenkomen, wordt de grafiek steeds nauwkeuriger.
De opbouw van de grafiek hanteert een conservatieve aanpak. Een deterministische edge — hetzelfde apparaat dat onder twee browserprofielen wordt herleid, of dezelfde gehashte identifier die voor twee accounts is aangeleverd — maakt de koppeling meteen. Alles wat zwakker is geldt als kandidaat in plaats van als koppeling, moet een confidence-ondergrens halen en wordt gelimiteerd zodat één bezoeker geen onbegrensd cluster achter zich aan kan trekken. Een bezoeker of brug in quarantaine wordt volledig overgeslagen in plaats van op verdenking samengevoegd.
Toepassingen voor fraudedetectie
Cross-device koppeling is bijzonder krachtig voor fraudedetectie. Een fraudeur die accounts beheert over meerdere browserprofielen wordt geïdentificeerd wanneer die profielen daaronder tot hetzelfde apparaat herleid worden, of wanneer dezelfde ondertekende identifier achter twee van de accounts opduikt. Een gestolen creditcard die wordt gebruikt op een apparaat dat nooit met de device graph van de kaarthouder is geassocieerd, zet direct een waarschuwing in gang.
We hebben fraudenetwerken gezien waarbij één enkele operator tientallen virtuele machines draait om nepaccounts aan te maken. Elke VM toont een andere browser-fingerprint, maar ze draaien allemaal op dezelfde fysieke hardware, en het is de herleiding naar het apparaat die ze weer tot één machine samenvouwt. Die gedeelde device-node is de edge waarop de grafiek wordt gebouwd — hij legt het netwerk bloot vanuit één enkel gedetecteerd account, zonder enig beroep op een gedeeld adres.
Privacy-vriendelijk ontwerp
Cross-device koppeling roept terechte privacyzorgen op. Onze aanpak beperkt die door middel van verschillende ontwerpkeuzes. Ten eerste staat de laag standaard uit — het is niets wat met een deployment meekomt, het wordt bewust voor een workspace ingeschakeld, en tot dat moment wordt er helemaal geen persoonsgrafiek opgebouwd. Ten tweede vindt koppeling server-side plaats en wordt die nooit aan de browser blootgesteld, zodat de grafiek met koppelingen niet vanaf de client te lezen is en de modus aan onze kant wordt ingesteld in plaats van door iets wat de pagina kan meesturen. Ten derde bestaat de identifier-edge alleen als uw eigen applicatie ervoor kiest een ondertekend e-mailadres of telefoonnummer aan te leveren — wij leiden die niet af uit de bezoeker. Ten vierde kunnen gebruikers via uw privacy-interface transparantie krijgen over gekoppelde apparaten.
Nauwkeurigheidsmetrieken
De afweging is bewust en valt uit ten gunste van precision boven recall: we missen liever een koppeling dan dat we een onjuiste aanmaken. Die voorkeur is zichtbaar in het ontwerp in plaats van in een opvallend cijfer — deterministische edges maken koppelingen, zwakke signalen verbreden alleen clusters die al verankerd zijn, bruggen in quarantaine worden overgeslagen en elk cluster is gelimiteerd. Een gemiste koppeling kost u een fraudepatroon dat u later langs een andere weg alsnog had gevonden. Een onjuiste koppeling voegt twee echte klanten samen tot één persoon, en die fout werkt door in elke beslissing die daarna wordt genomen.
Meet het op uw eigen verkeer voordat u erop vertrouwt. Cross-device recall hangt af van hoeveel van uw gebruikers überhaupt inloggen — de identifier-edge is de sterkste die beschikbaar is, en die bestaat alleen waar uw applicatie hem aanlevert.