The Hackle ID

What is the Hackle ID? How does the Hackle ID uniquely identify users?

Analyzing user data is critical for accurately identifying unique users. Depending on the characteristics of the service, there can be cases where a user can either be logged in or logged out and cases where a single user can use multiple devices to use a particular service.

To accurately identify and track unique users that use the service, Hackle uses a combination of the User ID and Device ID as the Hackle ID. This article explains how the Hackle ID works.

Hackle ID

Let's look at different possible situations when assigning a Hackle ID to users. Each scenario below explains a different situation of using the User ID and/or Device ID in order to create or reuse a Hackle ID.

Cases where there are only non-logged-in users

If there is no User ID (when users do not have to log in to use the service), a new Hackle ID is created and assigned for each new Device ID.

Device IDUser IDHackle ID
Anull1
Bnull2
Anull1
Anull1
Cnull3
Bnull2
Cnull3
  • Since the first event occurred on device A and there was no past history of device A using the service, we assign a new Hackle ID of 1.
  • The second event occurred on device B and there was also no past history of device B using the service, and hence we assign another new Hackle ID of 2.
  • The third event occurred on device A and is assigned the previously assigned Hackle ID of 1.

Cases where users initially use the service without logging in and then log in at the later stages

Without User IDs, events without User ID that occurred previously on the same Device ID are assumed to be the same user. In this case, the same Hackle ID is assigned.

In cases where there are no User IDs, Events that occurred previously on the same Device ID are assumed to be the same user. In this case, the same Hackle ID is assigned for the same Device ID.

Device IDUser IDHackle ID
Dnull4
Dnull4
DJay4
  • The first two events occurred without a User ID on device D and were assigned the Hackle ID, 4.
  • The third event is the first event in which the User ID, Jay, was sent together from device D. This User ID is assigned to the same Hackle ID as the previous event. Hence, all three events are recorded as being caused by the same user Jay.

Cases where a logged in user uses multiple devices

User ID takes priority over Device ID when assigning Hackle ID.

Device IDUser IDHackle ID
ELyle5
FLyle5
GLyle5
  • Lyle triggered an event on device E and was assigned the Hackle ID of 5.
  • If User ID is Lyle, Hackle ID 5 will be assigned to the user regardless of the Device ID that she uses.

Cases when the same device is used by multiple users

If an event without a User ID occurs on the same device after a Device ID and User ID are assigned to the same Hackle ID, it is assumed that the event was raised by the same last user and assigns the Hackle ID of the last user as the Hackle ID of the new event.

Device IDUser IDHackle ID
HMark6
Hnull6
HAlley7
Hnull7
Hnull7
  • Mark fires an event on device H and is assigned a Hackle ID of 6.
  • The following event was sent without a User ID on Device H but is assigned to the same Hackle ID of 6 because Mark was the last user on device H.
  • The third event is caused by Alley who is using device H and is assigned to Hackle ID 7.
  • The following two events are assumed to be raised by Alley, the last user who was using device H, although there is no information collected for User ID, the following two actions are also assigned to Hackle ID 7.

Cases when one user changes his/her device and logs in to use the service

Device IDUser IDHackle ID
YJamie8
Znull9
ZJamie8
Znull8
  • Jamie fires an event on device Y and is assigned the Hackle ID, 8.
  • An event without a User ID has occurred on device Z, and a Hackle ID of 9 is assigned to that specific user who fired the event.
  • After Jamie logs in from device Z, an event including User ID occurs and Jamie's Hackle ID of 8 is assigned to the user who fired this event.
  • Afterwards, the event is fired without a User ID on device Z, and since Jamie is the last user who used the Device ID, the Hackle ID of 8 is assigned.