Snowplow Automatic Tracking behavior for pages left overnight


I was curious about how Snowplow Automatic Tracking (particuarly for pageView/page ping events) works for pages left open overnight for a single user.

Based on the enableActivityTracking documentation and my understanding of browser behavior, I imagine it would depend on the user’s local machine:

  • If a user’s local machine runs out of RAM overnight and the tab is in the background, then the browser will kill the tab, and if the user comes back to the tab the next day then a pageView event will trigger (and subsequent page ping events)
  • If a user leaves the page open with focus on the page overnight, then page ping events will continue to trigger; the page will not trigger a new pageView event the next day (since focus will prevent most browsers from killing the page)

Would y’all say those scenarios are accurate (and the complete set of possible scenarios)?

Thanks in advance for the advice!

This might vary by browser but if the browser reloads the page entirely (and with it re-executes the Javascript) then yes we’d expect to see another page view + subsequent page pings.

Page ping events should only trigger if there’s activity (e.g., mouse movement, keyboard presses, regaining focus / resizing etc) if there’s activity within that heart beat period or “window of activity” between page pings. If there’s no activity in this period but the window is still in focus page pings shouldn’t fire. If the page isn’t reloaded you should still have the same page view event and the page pings should gracefully resume once the user is back active on the page the next day.