Expand my Community achievements bar.

Time between events, across visits


Level 2

I'm trying to understand the time between Adobe Analytics events. Sometimes those events are happening in different visits, sometimes they are within the same visit. 

I've found documentation for time-based tracking of events



but I'm not sure either will work with multiple visits.


Does anybody have ideas?


Ideally, I'd like to be able to track time between Analytics events in hours, even between visits. If there's a method (in reporting?) that uses the primary visitor ID instead of the cookie, I'd also be interested in that - such method would obviously require a first-party identifier. I'm Interested in all solutions for implementation, processing, or reporting. Maybe a calculated metric that can subtract the time of the first event from the time of the second? Not sure if that's available.

5 Replies


Community Advisor

I'm not sure this it would be possible across visits. 


You could use sequential segments to sort of bucket scenarios (within 1 day, within 2 days, etc.)   But once a visitor meets that definition, Only After Sequence could include other metrics you don't mean to include.


Or, probably better, you could use eVars set to expire at certain intervals.  Fire the eVar on the first event and then you could report on activities that then happened within certain timeframe(s) from that event.


Community Advisor

Hey @evan9 

The second plugin (getTimeBetweenEvents) you've mentioned above would work across visits. If you look at the example calls, they've shown how it can be used to get the time in seconds, hours or even days. 


Look at the fmt parameter which would return the value in seconds, hours, days etc. which itself means it works across visits. I am pretty sure it will work across visits. Give it a try and let me know if you face any issues.


As for your second query, there is a way to use a first party id to identify unique visitors. It involves passing the first party identifier into s.visitorID variable in your code. Though, please keep in mind, Adobe does not recommend using this variable as it has its own set of challenges. One for instance is, if you have a site which has some parts where the user can be unauthenticated before becoming known, then in that scenario, when your user logs in, they are treated as different to the unauthenticated part of their journey and the journey is broken cause post login, they are being identified as a totally different user based on the first party ID. Here's a link to the documentation: https://experienceleague.adobe.com/docs/analytics/implementation/vars/config-vars/visitorid.html?lan...


Hope the above helps.









Community Advisor

Technically speaking, the getTimeBetweenEvents should work over multiple visits, since I see in the documentation about having the data in days.... but I also know that this was created before the decline of cookies, and I don't know offhand how susceptible these cookies are going to be to browsers that actively delete cookies (particularly cookies set by JS).


If you are processing Raw Data Exports, you have a lot more control via SQL to identify users and calculate time between events based on actual timestamps... but I would only suggest that if you already have a process in place.. since getting data feeds and processes set up is a major undertaking.


Community Advisor

@Jennifer_Dungan The cookie expiration is definitely a nightmare with even first party cookies on the mercy of browsers like safari. Would definitely impact almost all of the plugins we currently have.


Community Advisor

Yeah, and most of these plugins haven't been updated since the "death of cookies" started....


Which makes me question most of these type of solutions... I mean, you could try using local storage, but I believe that some privacy modes block the use of local storage objects... 


Adobe Workspace however, isn't really designed to calculate time between two specific events.... Hence why I suggested Raw Data Feeds, but that's a lot of work to get set up if not in place already...