Sessione nell’analitica mobile: definizione, misurazione e metriche chiave

Autore: IT Sectr Pubblicato: 2026-04-21 Tempo di lettura: 10 min

La sessione nell’analitica mobile è un periodo di interazione continua dell’utente con l’applicazione, limitato nel tempo. Questa metrica funge da base per calcolare fidelizzazione, coinvolgimento e LTV. Secondo Adjust, 2025, la durata mediana di una sessione nelle app è di 4–7 minuti, ma varia notevolmente in base alla categoria. Comprendere le metriche di sessione è fondamentale per valutare la qualità dell’esperienza utente.

Punti chiave

  • Sessione — periodo continuo di interazione dell’utente con l’app senza una lunga pausa.
  • Durata della sessione (Session Duration) — metrica chiave di coinvolgimento, misurata in minuti.
  • Intervallo tra sessioni (Session Interval) — mostra quanto spesso l’utente torna all’app.
  • iOS e Android definiscono inizio e fine della sessione in modo diverso a causa delle differenze nel ciclo di vita dell’app.
  • Analisi delle sessioni consente di segmentare il pubblico per livello di coinvolgimento e identificare scenari problematici.

Cos’è una sessione nell’analitica mobile?

Una sessione è un periodo di tempo durante il quale un utente interagisce attivamente con l’app. La sessione inizia all’apertura dell’app (o al ritorno dallo sfondo) e termina dopo un periodo di inattività o chiusura.

Diverse piattaforme di analisi definiscono i limiti della sessione in modo differente. Firebase Analytics considera una sessione completata dopo 30 minuti di inattività, AppsFlyer dopo 60 minuti, Amplitude dopo 5 minuti o all’evento session_end. Non esiste uno standard unico.

Perché le sessioni sono importanti

Le metriche basate sulle sessioni sono il fondamento per calcolare la fidelizzazione (Retention Rate), la profondità di coinvolgimento (Stickiness Ratio) e la distribuzione degli utenti per frequenza d’uso (Session Frequency). Senza una corretta definizione della sessione, tutte le metriche derivate saranno imprecise.

Secondo Mixpanel (2024), le app che hanno migliorato la Session Duration del 15% hanno registrato una crescita del LTV del 22% in un trimestre. Questa è una correlazione diretta tra il tempo trascorso nell’app e la monetizzazione.

Come si misura una sessione?

La misurazione della sessione si basa sugli eventi del ciclo di vita dell’app: apertura (session_start) e chiusura (session_end). Tra di essi, vengono registrate tutte le azioni dell’utente.

kotlin
// Tracker di sessioni base per 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
    }
}

Il codice traccia inizio e fine della sessione tramite callback di sistema. Il parametro SESSION_TIMEOUT (30 minuti) determina quando un ritorno dallo sfondo è considerato una nuova sessione e non una continuazione della precedente.

Regole di timeout per piattaforma

PiattaformaTimeout sessioneMetodo di determinazione
Firebase Analytics30 minAutomatico, senza personalizzazione
Amplitude5 min (predefinito)Configurabile tramite SDK
AppsFlyer60 minIntervallo fisso
Mixpanel30 minConfigurabile tramite l’opzione minimumSessionDuration
Adjust60 minAutomatico, legato al ciclo di vita

La scelta del timeout influisce sulle metriche: un timeout breve (5 min) crea più sessioni, uno lungo (60 min) fonde le interazioni. L’importante è stabilire una regola e non modificarla quando si confrontano i periodi.

Metriche chiave della sessione

L’analisi delle sessioni si basa su quattro metriche di base. Ognuna rivela un aspetto specifico del comportamento dell’utente.

Session Duration

La durata della sessione è il tempo medio che un utente trascorre nell’app per visita. Per le app di notizie, la norma è di 2–4 minuti; per i giochi, 8–15 minuti; per i servizi di streaming, 20+ minuti. Se la Session Duration diminuisce, è un segnale di problemi con i contenuti o le prestazioni.

Session Interval

L’intervallo tra sessioni è il tempo tra la fine della sessione precedente e l’inizio della successiva. Un intervallo breve (minuti o ore) indica un elevato coinvolgimento. Un intervallo lungo (giorni) segnala scarso interesse o un caso d’uso utilitario in cui l’app è raramente necessaria.

Sessions Per User

Il numero di sessioni per utente in un periodo (giorno, settimana, mese) è un indicatore di Stickiness. Formula: DAU / MAU (utenti attivi giornalieri / utenti attivi mensili). Un valore superiore al 20% è considerato buono, superiore al 50% — eccellente per la maggior parte delle categorie di app.

Session Depth

La profondità della sessione è il numero di schermate o azioni in una singola sessione. Mostra quanto profondamente l’utente esplora le funzionalità dell’app. Una profondità bassa con durata elevata indica problemi di navigazione.

  • Session Duration — tempo nell’app per visita
  • Session Interval — frequenza di ritorno
  • Sessions Per User — livello di coinvolgimento
  • Session Depth — qualità dell’interazione

Sessione in iOS e Android

Le differenze di piattaforma nel ciclo di vita dell’app influenzano direttamente la definizione della sessione. iOS e Android gestiscono gli stati di sfondo e le notifiche in modo diverso.

Android — ciclo di vita dell’Activity

Su Android, una sessione inizia quando viene chiamato onStart() della prima Activity e termina con onStop() dell’ultima Activity. Tuttavia, il sistema può terminare il processo in background, interrompendo falsamente la sessione. Si consiglia di utilizzare Application.ActivityLifecycleCallbacks per un tracciamento affidabile.

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()
                }
            }
        })
    }
}

Il contatore activityReferences determina se l’utente vede almeno una schermata. Quando raggiunge 0, l’app è passata in background e la sessione è terminata.

iOS — UIApplicationDelegate

Su iOS, una sessione è legata ai metodi applicationDidBecomeActive e applicationDidEnterBackground. I tocchi sulle notifiche push possono gonfiare artificialmente il conteggio delle sessioni — questo deve essere considerato nell’analisi.

Esempio in Swift:

swift
import UIKit

class AppDelegate: UIResponder, UIApplicationDelegate {

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

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

Nota: su iOS, il passaggio tra le app (App Switcher) non termina la sessione — solo il passaggio in background profondo o lo swipe per chiudere la attiva.

Come analizzare le sessioni utente?

L’analisi delle sessioni va oltre il semplice conteggio. La segmentazione e l’analisi di coorte rivelano modelli di coinvolgimento che non possono essere visti nei dati aggregati.

Analisi di coorte delle sessioni

Raggruppa gli utenti per settimana di installazione e osserva il numero medio di sessioni nei primi 7 giorni. Se la coorte di installazione più recente ha Sessions Per User inferiore rispetto a quelle precedenti, è un segnale di deterioramento dell’onboarding o della qualità del traffico.

  • Giorno 0 — installazione + prima sessione
  • Giorni 1–3 — periodo di attivazione (previste 3+ sessioni)
  • Giorni 7–30 — formazione dell’abitudine (1–2 sessioni stabili al giorno)
  • Giorno 30+ — fidelizzazione degli utenti fedeli

Anomalie delle sessioni: come rilevarle

Le anomalie nelle metriche di sessione sono indicatori precoci di problemi. Un improvviso aumento di sessioni brevi (meno di 5 secondi) dopo un rilascio indica un bug di avvio. Un calo del 30% della Session Duration in un giorno può indicare un guasto del server o un cambiamento dell’API. Imposta un monitoraggio con soglie: se la durata media della Session Duration scende di oltre 2 deviazioni standard dalla media mobile di 7 giorni, attiva un avviso.

Utilizza la segmentazione per versione dell’app nei report delle sessioni. La versione 3.2.0 mostra una Session Duration di 4 minuti, la versione 3.2.1 mostra 2 minuti. La causa è un cambiamento nell’onboarding. Il rollback della versione ripristina la metrica. Senza segmentazione per versione, vedresti un calo medio ma non troveresti la causa principale.

Segmentazione per frequenza di sessione

Power Users (5+ sessioni al giorno) — il tuo pubblico chiave. Casual Users (1–2 sessioni a settimana) — un gruppo da riattivare. Dormant Users (0 sessioni in 30 giorni) — candidati per retargeting o disiscrizione dalle notifiche push.

Per ogni segmento, calcola metriche separate: la Session Duration per i Power Users mostra la profondità d’uso, mentre per i Casual Users mostra le barriere all’ingresso. Secondo Amplitude (2024), le app che personalizzano i contenuti per segmento di sessione aumentano la Session Duration in media del 18% al mese.

Utilizzo delle sessioni nei report di fidelizzazione

La fidelizzazione viene calcolata attraverso le sessioni: un utente è fidelizzato al Giorno N se ha avuto almeno una sessione. Tuttavia, prodotti diversi richiedono definizioni diverse. Per i social network, una sessione può durare 1 secondo, per un servizio di streaming 15 minuti.

Utilizza le sessioni di disinstallazione come indicatore di qualità: se dopo un aggiornamento il numero di sessioni brevi (meno di 10 secondi) aumenta, gli utenti non trovano la funzionalità necessaria. Questo è un segnale precoce di problemi UX prima dell’aumento delle disinstallazioni.

Attribuzione del traffico basata sulle sessioni

Collega le sessioni alle fonti di traffico: gli utenti provenienti da canali a pagamento dovrebbero avere più sessioni e una Session Duration più lunga. Se il traffico organico mostra una Session Duration superiore del 40% rispetto a quello a pagamento, c’è un problema di qualità del targeting. L’attribuzione delle sessioni aiuta a ottimizzare il budget di acquisizione.

Domande frequenti

Quanto dovrebbe durare una sessione media in un’app mobile?

La durata media della sessione dipende dalla categoria: giochi — 8–15 minuti, social media — 5–10 minuti, utilità — 1–3 minuti. Il trend è più importante: se la Session Duration cala del 20% in un mese, è necessario un audit UX.

Perché la sessione non termina quando si minimizza l’app?

Molti SDK di analisi non attivano un evento di fine in caso di minimizzazione — attendono un timeout. Se l’utente minimizza l’app per 1 minuto e torna, viene conteggiato come una singola sessione. Solo dopo il timeout (30–60 min) inizia una nuova sessione.

Come sono correlate le sessioni alla fidelizzazione?

La fidelizzazione di un utente al Giorno N viene calcolata come proporzione di installatori che hanno avuto almeno una sessione quel giorno. Se le sessioni non vengono tracciate correttamente, la fidelizzazione sarà sistematicamente sottostimata o sovrastimata.

L’attività in background influisce sul conteggio delle sessioni?

Sì, l’attività in background (riproduzione musicale, navigazione, sincronizzazione) può mantenere l’app in uno stato attivo. È meglio separare le sessioni in primo piano (l’utente vede lo schermo) dalle sessioni di elaborazione (lavoro in background senza interfaccia utente).

Quale timeout di sessione dovrei scegliere per un’app in abbonamento?

Per i servizi in abbonamento (streaming, fitness, istruzione), si consiglia un timeout di 5–10 minuti. Gli utenti spesso tornano dopo una breve pausa — ogni pausa dovrebbe essere conteggiata come una nuova sessione per non distorcere la Session Duration.

Riepilogo

  • Sessione — elemento fondamentale dell’analitica mobile, definisce il periodo di interazione dell’utente con l’app.
  • Timeout della sessione varia da 5 a 60 minuti a seconda della piattaforma e delle impostazioni SDK.
  • Session Duration — metrica di coinvolgimento; la norma dipende dalla categoria dell’app.
  • Session Interval mostra la frequenza di ritorno e aiuta a identificare i casi d’uso utilitari.
  • iOS e Android richiedono approcci di tracciamento diversi a causa delle differenze nel ciclo di vita.
  • Analisi di coorte delle sessioni rivela il deterioramento dell’onboarding o della qualità del traffico.
  • Segmentazione per frequenza di sessione consente la personalizzazione dei contenuti e aumenta il coinvolgimento.

Svilupperemo un'applicazione mobile chiavi in mano

IT Sectr crea applicazioni iOS e Android per startup e aziende dal 2017. Ti consulteremo e ti proporremo la soluzione migliore.

Discuti il progetto

Leggi anche