Сесія в мобільній аналітиці: що це, як вимірюється та які метрики

Автор: IT Sectr Опубліковано: 2026-04-21 Час читання: 10 хв

Сесія в мобільній аналітиці — це період неперервної взаємодії користувача з додатком, обмежений часом. Ця метрика служить основою для розрахунку утримання, залученості та LTV. За даними Adjust, 2025, медіанна довжина сесії в додатках становить 4–7 хвилин, але сильно варіюється між категоріями. Розуміння сесійних метрик критично важливе для оцінки якості користувацького досвіду.

Головне

  • Сесія — неперервний період взаємодії користувача з додатком без тривалої перерви.
  • Тривалість сесії (Session Duration) — ключова метрика залученості, вимірюється в хвилинах.
  • Інтервал між сесіями (Session Interval) — показує, як часто користувач повертається в додаток.
  • iOS та Android по-різному визначають початок і кінець сесії через відмінності в життєвому циклі додатка.
  • Аналіз сесій дозволяє сегментувати аудиторію за рівнем залученості та виявляти проблемні сценарії.

Що таке сесія в мобільній аналітиці?

Сесія — це період часу, протягом якого користувач активно взаємодіє з додатком. Сесія починається з моменту відкриття додатка (або повернення з фону) і закінчується після періоду бездіяльності або закриття.

Різні аналітичні платформи по-різному визначають межі сесії. Firebase Analytics вважає сесію завершеною після 30 хвилин бездіяльності, AppsFlyer — після 60 хвилин, Amplitude — після 5 хвилин або події session_end. Єдиного стандарту не існує.

Чому сесії важливі

Метрики на основі сесій — основа для розрахунку утримання (Retention Rate), глибини залученості (Stickiness Ratio) та розподілу користувачів за частотою використання (Session Frequency). Без коректного визначення сесії всі похідні метрики будуть неправильними.

За даними Mixpanel (2024), додатки, які покращили Session Duration на 15%, показали зростання LTV на 22% протягом кварталу. Це пряма кореляція між часом в додатку та монетизацією.

Як вимірюється сесія?

Вимірювання сесії базується на подіях життєвого циклу додатка: відкриття (session_start) та закриття (session_end). Пміж ними реєструються всі дії користувача.

kotlin
// Базовий трекер сесій для Android
class SessionTracker {

    private var sessionStart: Long = 0L
    private val SESSION_TIMEOUT = 30 * 60 * 1000L

    fun onAppOpened() {
        sessionStart = System.currentTimeMillis()
        Analytics.logEvent("session_start")
    }

    fun onAppClosed() {
        val duration = System.currentTimeMillis() - sessionStart
        Analytics.logEvent("session_end") {
            param("duration_ms", duration)
        }
    }

    fun isNewSession(lastActive: Long): Boolean {
        return (System.currentTimeMillis() - lastActive) > SESSION_TIMEOUT
    }
}

Код відстежує початок і кінець сесії через системні зворотні виклики. Параметр SESSION_TIMEOUT (30 хвилин) визначає, коли повернення з фону вважається новою сесією, а не продовженням попередньої.

Правила таймауту за платформами

ПлатформаТаймаут сесіїСпосіб визначення
Firebase Analytics30 хвАвтоматично, без кастомізації
Amplitude5 хв (типово)Налаштовується через SDK
AppsFlyer60 хвФіксований інтервал
Mixpanel30 хвНалаштовується через опцію minimumSessionDuration
Adjust60 хвАвтоматично, прив’язано до життєвого циклу

Вибір таймауту впливає на метрики: короткий таймаут (5 хв) створює більше сесій, довгий (60 хв) об’єднує взаємодії. Головне — зафіксувати правило і не змінювати його при порівнянні періодів.

Ключові метрики сесій

Аналіз сесій спирається на чотири базові метрики. Кожна розкриває певний аспект поведінки користувача.

Session Duration

Тривалість сесії — це середній час, який користувач проводить в додатку за один візит. Для новинних додатків норма становить 2–4 хвилини, для ігор — 8–15 хвилин, для стрімінгових сервісів — 20+ хвилин. Якщо Session Duration падає, це сигнал проблем з контентом або продуктивністю.

Session Interval

Інтервал між сесіями — час між закінченням попередньої сесії та початком наступної. Короткий інтервал (хвилини або години) вказує на високу залученість. Довгий інтервал (дні) вказує на низький інтерес або утилітарний сценарій використання, коли додаток потрібний рідко.

Sessions Per User

Кількість сесій на користувача за період (день, тиждень, місяць) — індикатор липкості (Stickiness). Формула: DAU / MAU (денні активні користувачі / місячні активні користувачі). Значення вище 20% вважається хорошим, вище 50% — відмінним для більшості категорій додатків.

Session Depth

Глибина сесії — кількість екранів або дій за одну сесію. Показує, наскільки глибоко користувач занурюється в функціонал додатка. Низька глибина при високій тривалості вказує на проблеми з навігацією.

  • Session Duration — час в додатку за візит
  • Session Interval — частота повернень
  • Sessions Per User — рівень залученості
  • Session Depth — якість взаємодії

Сесія в iOS та Android

Платформені відмінності в життєвому циклі додатка безпосередньо впливають на визначення сесії. iOS та Android по-різному обробляють фонові стани та сповіщення.

Android — життєвий цикл Activity

На Android сесія починається при виклику onStart() першого Activity і закінчується при onStop() останнього Activity. Однак система може знищити процес в фоні, що помилково завершує сесію. Рекомендується використовувати Application.ActivityLifecycleCallbacks для надійного відстеження.

kotlin
class AnalyticsApp : Application() {

    private var activityReferences = 0

    override fun onCreate() {
        super.onCreate()
        registerActivityLifecycleCallbacks(object : ActivityLifecycleCallbacks {
            override fun onActivityStarted(act: Activity) {
                if (++activityReferences == 1) {
                    Analytics.trackSessionStart()
                }
            }
            override fun onActivityStopped(act: Activity) {
                if (--activityReferences == 0) {
                    Analytics.trackSessionEnd()
                }
            }
        })
    }
}

Лічильник activityReferences визначає, чи бачить користувач хоча б один екран. Коли він стає 0, додаток пішов у фон і сесія завершена.

iOS — UIApplicationDelegate

На iOS сесія прив’язана до методів applicationDidBecomeActive та applicationDidEnterBackground. Натискання на push-повідомлення може штучно збільшити кількість сесій — це необхідно враховувати в аналітиці.

Приклад на Swift:

swift
import UIKit

class AppDelegate: UIResponder, UIApplicationDelegate {

    func applicationDidBecomeActive(_ application: UIApplication) {
        Analytics.trackSessionStart()
    }

    func applicationDidEnterBackground(_ application: UIApplication) {
        Analytics.trackSessionEnd()
    }
}

Зверніть увагу: на iOS перемикання між додатками (App Switcher) не завершує сесію — спрацює тільки перехід у глибокий фон або проведення для закриття.

Як аналізувати користувацькі сесії?

Аналіз сесій виходить за межі простого підрахунку. Сегментація та когортний аналіз розкривають патерни залученості, які невидні на агрегованих даних.

Когортний аналіз сесій

Групуйте користувачів за тижнем встановлення та подивіться на середню кількість сесій за перші 7 днів. Якщо у найновішої когорти встановлень показник Sessions Per User нижчий, ніж у старих, це сигнал погіршення онбордингу або якості трафіку.

  • День 0 — встановлення + перша сесія
  • Дні 1–3 — період активації (очікується 3+ сесій)
  • Дні 7–30 — формування звички (1–2 стабільні сесії на день)
  • День 30+ — утримання лояльних користувачів

Аномалії сесій: як їх виявляти

Аномалії в сесійних метриках — ранні індикатори проблем. Раптове зростання кількості коротких сесій (до 5 секунд) після релізу вказує на баг при запуску. Падіння Session Duration на 30% за день може вказувати на збій сервера або зміну API. Налаштуйте моніторинг з порогами: якщо середня Session Duration впала більше ніж на 2 стандартні відхилення від 7-денного ковзного середнього — спрацьовуйте алерт.

Використовуйте сегментацію за версією додатка в сесійних звітах. Версія 3.2.0 показує Session Duration 4 хвилини, версія 3.2.1 — 2 хвилини. Причина — зміна в онбордингу. Відкат версії відновлює метрику. Без сегментації за версією ви б бачили середнє падіння, але не знайшли б першопричину.

Сегментація за частотою сесій

Power Users (5+ сесій на день) — ваша ключова аудиторія. Casual Users (1–2 сесії на тиждень) — група для реактивації. Dormant Users (0 сесій за 30 днів) — кандидати для ретаргетингу або відписки від push-повідомлень.

Для кожного сегменту рахуйте окремі метрики: Session Duration для Power Users показує глибину використання, а для Casual Users — бар’єри входу. За даними Amplitude (2024), додатки, які персоналізують контент під сегмент сесій, збільшують Session Duration в середньому на 18% за місяць.

Використання сесій в звітах про утримання

Утримання розраховується через сесії: користувач утриманий на День N, якщо в нього була хоча б одна сесія. Однак різні продукти потребують різних визначень. Для соціальних мереж сесія може тривати 1 секунду, а для стрімінгового сервісу — 15 хвилин.

Використовуйте сесії деінсталяції як індикатор якості: якщо після оновлення кількість коротких сесій (менше 10 секунд) зросла, користувачі не знаходять потрібний функціонал. Це ранній сигнал UX-проблеми до зростання деінсталяцій.

Сесійна атрибуція трафіку

Пов’яжіть сесії з джерелами трафіку: користувачі з платних каналів повинні мати більше сесій та більшу Session Duration. Якщо органічний трафік показує Session Duration на 40% вищу за платний, проблема в якості таргетингу. Сесійна атрибуція допомагає оптимізувати бюджет на залучення.

Часто задавані питання

Скільки має тривати середня сесія в мобільному додатку?

Середня тривалість сесії залежить від категорії: ігри — 8–15 хвилин, соцмережі — 5–10 хвилин, утиліти — 1–3 хвилини. Важливіший тренд: якщо Session Duration падає на 20% за місяць, потрібен аудит UX.

Чому сесія не завершується при згортанні додатка?

Багато аналітичних SDK не фіксують подію завершення при згортанні — вони чекають таймаут. Якщо користувач згорнув додаток на 1 хвилину і повернувся, це вважається однією сесією. Тільки після таймауту (30–60 хв) починається нова сесія.

Як сесії пов’язані з утриманням?

Утримання користувача на День N розраховується як частка тих, хто встановив і мав хоча б одну сесію цього дня. Якщо сесії не відстежуються коректно, утримання буде систематично занижено або завищено.

Чи впливає фонова активність на підрахунок сесій?

Так, фонова активність (програвання музики, навігація, синхронізація) може утримувати додаток в активному стані. Краще відокремлювати форграунд-сесії (користувач бачить екран) від процесорних сесій (фонова робота без інтерфейсу).

Який таймаут сесії вибрати для підписного додатка?

Для підписних сервісів (стрімінг, фітнес, освіта) рекомендується таймаут 5–10 хвилин. Користувачі часто повертаються після короткої перерви — і кожна пауза має вважатися новою сесією, щоб не спотворювати Session Duration.

Підсумки

  • Сесія — базовий елемент мобільної аналітики, що визначає період взаємодії користувача з додатком.
  • Таймаут сесії коливається від 5 до 60 хвилин залежно від платформи та налаштувань SDK.
  • Session Duration — метрика залученості, норма залежить від категорії додатка.
  • Session Interval показує частоту повернень та допомагає виявляти утилітарні сценарії.
  • iOS та Android потребують різних підходів до відстеження через відмінності в життєвому циклі.
  • Когортний аналіз сесій виявляє погіршення онбордингу або якості трафіку.
  • Сегментація за частотою сесій дозволяє персоналізувати контент та підвищувати залученість.

Ми розробимо мобільний застосунок під ключ

IT Sectr створює застосунки для iOS та Android для стартапів і бізнесу з 2017 року. Ми проконсультуємо вас і запропонуємо найкраще рішення.

Обговорити проект

Читайте також