Session Frequency is how often a user returns and starts a new session within a defined time window. In practice, it’s the average number of sessions per unique user over a period (day, week, month), or—if you want a more behavioral view—the distribution of inter-visit gaps. It sits next to recency in the classic “how recently, how often” duo and helps you see whether your product is habit-forming or just a one-off stop.
How to calculate Session Frequency
The simplest, KPI-friendly form is sessions per user for a chosen period:
Formula (period-level):
Session Frequency = Total Sessions / Unique Visitors
Optional normalization per day:
Sessions per User per Day = Total Sessions / (Unique Visitors × Number of Days)
Where Unique Visitors means deduped people (by stable user ID if possible). See unique visitor and cohort analysis for deeper cuts.
Mini-example:
30-day period, 12,000 sessions and 3,000 unique visitors:
- Session Frequency (30-day) = 12,000 / 3,000 = 4.0 sessions/user
- Per-day = 4.0 / 30 ≈ 0.133 sessions/user/day
Example distribution (quick read)
Bucketing tells you where the habit is forming—not just the mean.
Bucket (30 days) | Users | Share |
---|---|---|
1 session | 1,050 | 35% |
2–3 sessions | 900 | 30% |
4–7 sessions | 600 | 20% |
8+ sessions | 450 | 15% |
Same average, wildly different behavior profiles—this is why distribution matters.
Why Session Frequency matters
- Retention signal: Rising frequency usually precedes higher LTV and lower churn.
- Channel quality: Compare frequency by acquisition source to find repeat-friendly traffic.
- Product loops: Feature launches that move users from the “2–3” bucket to “4–7” are real wins.
- Alerting: Sudden drops can hint at auth issues, tracking breaks, or UX regressions.
Implementation notes (avoid traps)
- Define the window (7/30/90 days) and stick to it for comparability.
- Use user IDs when possible to avoid cross-device double-counting.
- Exclude bots and internal traffic; align with your session timeout rules.