Skip to content
    Back to Tips & Tricks
    Data Modelling01

    Sessionisation Is a Modelling Decision, Not a Default

    Written by Viktor KvantSenior Web AnalystSeptember 4, 20252 min read

    GA4's 30-minute session timeout is a vendor default, not an analytical truth. Make sessionisation a deliberate choice that reflects how people use your product.

    GA4 ends a session after 30 minutes of inactivity by default, and that threshold is arbitrary. It's a vendor default, not an analytical truth. Sessionisation logic should reflect actual usage patterns — and those vary enormously. For a news site, 5-minute timeouts surface re-engagement signals that 30-minute windows swallow. For a B2B SaaS tool with deep workflows, 60-minute windows prevent artificial session breaks during legitimate usage.

    In BigQuery, implement custom sessionisation with TIMESTAMP_DIFF and conditional aggregation over ordered event streams — don't rely on GA4's session_start events, which are generated client-side and miss edge cases like tab restoration and service worker reloads.

    The approach is straightforward: order events by user_pseudo_id and event_timestamp, compute the time gap between consecutive events using LAG(), then start a new session whenever the gap exceeds your chosen threshold (a running SUM of those new-session flags gives you the session number). Note that event_timestamp is an INT64 in microseconds, so convert it with TIMESTAMP_MICROS() before using TIMESTAMP_DIFF, or compare the raw differences against a threshold in microseconds (30 minutes = 1,800,000,000). This gives you full control over the definition and lets you compare different timeout values to find the one that best represents genuine user engagement in your specific context.

    Robin Signals lets you configure session logic at the property level, which is the correct architectural choice — your session definition should be a deliberate analytical decision, not a vendor default you inherited.

    The impact of getting this right is significant. Changing from 30-minute to 10-minute sessions on a media site can reveal that 35% of 'single-session' visits are actually multi-session engagement patterns — users who leave and return within the default window, producing one inflated session instead of the separate engagement moments they actually represent. That kind of discovery changes how engagement and retention are measured.

    Author

    Viktor Kvant

    Senior Web Analyst specialising in data ownership, advanced tracking implementations, and translating data into strategic business value.

    Connect on LinkedIn