Phiên trong phân tích di động là khoảng thời gian tương tác liên tục của người dùng với ứng dụng, bị giới hạn về thời gian. Chỉ số này là cơ sở để tính toán tỷ lệ giữ chân, mức độ tương tác và LTV. Theo Adjust, 2025, độ dài trung vị của phiên trong các ứng dụng là 4–7 phút, nhưng thay đổi nhiều theo danh mục. Hiểu các chỉ số phiên là rất quan trọng để đánh giá chất lượng trải nghiệm người dùng.
Ý chính
Một phiên là khoảng thời gian mà người dùng tương tác tích cực với ứng dụng. Phiên bắt đầu khi mở ứng dụng (hoặc quay lại từ nền) và kết thúc sau một khoảng thời gian không hoạt động hoặc đóng ứng dụng.
Các nền tảng phân tích khác nhau định nghĩa ranh giới phiên khác nhau. Firebase Analytics coi phiên kết thúc sau 30 phút không hoạt động, AppsFlyer sau 60 phút, Amplitude sau 5 phút hoặc tại sự kiện session_end. Không có một tiêu chuẩn duy nhất.
Các chỉ số dựa trên phiên là nền tảng để tính tỷ lệ giữ chân (Retention Rate), độ sâu tương tác (Stickiness Ratio) và phân bố người dùng theo tần suất sử dụng (Session Frequency). Nếu không có định nghĩa phiên chính xác, tất cả các chỉ số phái sinh sẽ không chính xác.
Theo Mixpanel (2024), các ứng dụng cải thiện Session Duration thêm % đã có mức tăng trưởng LTV là 22% trong một quý. Đây là mối tương quan trực tiếp giữa thời gian trong ứng dụng và khả năng kiếm tiền.
Việc đo lường phiên dựa trên các sự kiện vòng đời ứng dụng: mở (session_start) và đóng (session_end). Giữa chúng, tất cả hành động của người dùng đều được ghi lại.
// Trình theo dõi phiên cơ bản cho 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
}
}
Mã theo dõi điểm bắt đầu và kết thúc phiên thông qua các callback hệ thống. Tham số SESSION_TIMEOUT (30 phút) xác định khi nào việc quay lại từ nền được coi là phiên mới chứ không phải tiếp nối phiên trước.
| Nền tảng | Timeout phiên | Phương pháp xác định |
|---|---|---|
| Firebase Analytics | 30 phút | Tự động, không tùy chỉnh |
| Amplitude | 5 phút (mặc định) | Có thể cấu hình qua SDK |
| AppsFlyer | 60 phút | Khoảng cố định |
| Mixpanel | 30 phút | Có thể cấu hình qua tùy chọn minimumSessionDuration |
| Adjust | 60 phút | Tự động, gắn với vòng đời |
Việc chọn timeout ảnh hưởng đến các chỉ số: timeout ngắn (5 phút) tạo nhiều phiên hơn, timeout dài (60 phút) hợp nhất các tương tác. Điều quan trọng là thiết lập một quy tắc và không thay đổi nó khi so sánh các giai đoạn.
Phân tích phiên dựa trên bốn chỉ số cơ bản. Mỗi chỉ số tiết lộ một khía cạnh cụ thể của hành vi người dùng.
Thời lượng phiên là thời gian trung bình người dùng dành trong ứng dụng mỗi lần truy cập. Đối với ứng dụng tin tức, định mức là 2–4 phút; đối với trò chơi, 8–15 phút; đối với dịch vụ phát trực tuyến, 20+ phút. Nếu Session Duration giảm, đó là dấu hiệu của vấn đề về nội dung hoặc hiệu suất.
Khoảng cách phiên là thời gian giữa kết thúc phiên trước và bắt đầu phiên tiếp theo. Khoảng cách ngắn (phút hoặc giờ) cho thấy mức độ tương tác cao. Khoảng cách dài (ngày) cho thấy sự quan tâm thấp hoặc trường hợp sử dụng tiện ích khi ứng dụng hiếm khi được cần đến.
Số phiên trên mỗi người dùng trong một khoảng thời gian (ngày, tuần, tháng) là chỉ báo của độ dính. Công thức: DAU / MAU (Người dùng hoạt động hàng ngày / Người dùng hoạt động hàng tháng). Giá trị trên 20% được coi là tốt, trên 50% — xuất sắc đối với hầu hết các danh mục ứng dụng.
Độ sâu phiên là số lượng màn hình hoặc hành động trong một phiên duy nhất. Nó cho thấy người dùng khám phá chức năng của ứng dụng ở mức độ sâu như thế nào. Độ sâu thấp kết hợp với thời lượng cao cho thấy vấn đề về điều hướng.
Sự khác biệt về nền tảng trong vòng đời ứng dụng ảnh hưởng trực tiếp đến định nghĩa phiên. iOS và Android xử lý trạng thái nền và thông báo khác nhau.
Trên Android, phiên bắt đầu khi onStart() của Activity đầu tiên được gọi và kết thúc tại onStop() của Activity cuối cùng. Tuy nhiên, hệ thống có thể kết thúc tiến trình ở nền, làm kết thúc phiên một cách sai lệch. Nên sử dụng Application.ActivityLifecycleCallbacks để theo dõi đáng tin cậy.
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()
}
}
})
}
}
Bộ đếm activityReferences xác định người dùng có nhìn thấy ít nhất một màn hình hay không. Khi nó đạt 0, ứng dụng đã chuyển sang nền và phiên kết thúc.
Trên iOS, phiên được gắn với các phương thức applicationDidBecomeActive và applicationDidEnterBackground. Các thông báo push có thể làm tăng số lượng phiên một cách giả tạo — điều này cần được tính đến trong phân tích.
Ví dụ Swift:
import UIKit
class AppDelegate: UIResponder, UIApplicationDelegate {
func applicationDidBecomeActive(_ application: UIApplication) {
Analytics.trackSessionStart()
}
func applicationDidEnterBackground(_ application: UIApplication) {
Analytics.trackSessionEnd()
}
}
Lưu ý: trên iOS, việc chuyển đổi giữa các ứng dụng (App Switcher) không kết thúc phiên — chỉ việc chuyển sang nền sâu hoặc vuốt để đóng mới kết thúc phiên.
Phân tích phiên không chỉ dừng lại ở việc đếm đơn thuần. Phân khúc và phân tích nhóm thuần tập cho thấy các mô hình tương tác không thể thấy trong dữ liệu tổng hợp.
Nhóm người dùng theo tuần cài đặt và xem số phiên trung bình trong 7 ngày đầu. Nếu nhóm cài đặt gần nhất có Sessions Per User thấp hơn các nhóm cũ, đó là dấu hiệu suy giảm chất lượng hướng dẫn hoặc chất lượng lưu lượng truy cập.
Các bất thường trong chỉ số phiên là dấu hiệu sớm của vấn đề. Sự gia tăng đột biến của các phiên ngắn (dưới 5 giây) sau khi phát hành cho thấy lỗi khởi động. Session Duration giảm 30% trong một ngày có thể cho thấy sự cố máy chủ hoặc thay đổi API. Thiết lập giám sát với ngưỡng: nếu Session Duration trung bình giảm hơn 2 độ lệch chuẩn so với trung bình động 7 ngày, hãy kích hoạt cảnh báo.
Sử dụng phân khúc theo phiên bản ứng dụng trong các báo cáo phiên. Phiên bản 3.2.0 hiển thị Session Duration 4 phút, phiên bản 3.2.1 hiển thị 2 phút. Nguyên nhân là thay đổi trong quá trình hướng dẫn. Quay lại phiên bản sẽ khôi phục chỉ số. Nếu không có phân khúc theo phiên bản, bạn sẽ thấy mức giảm trung bình nhưng không tìm được nguyên nhân gốc rễ.
Người dùng cao cấp (5+ phiên mỗi ngày) — đối tượng chính của bạn. Người dùng thông thường (1–2 phiên mỗi tuần) — nhóm cần tái kích hoạt. Người dùng không hoạt động (0 phiên trong 30 ngày) — ứng viên cho tiếp thị lại hoặc hủy đăng ký nhận thông báo push.
Cho mỗi phân khúc, hãy tính các chỉ số riêng: Session Duration cho người dùng cao cấp cho thấy độ sâu sử dụng, trong khi cho người dùng thông thường cho thấy rào cản gia nhập. Theo Amplitude (2024), các ứng dụng cá nhân hóa nội dung theo phân khúc phiên sẽ tăng Session Duration trung bình 18% mỗi tháng.
Tỷ lệ giữ chân được tính thông qua các phiên: một người dùng được giữ lại vào Ngày N nếu họ có ít nhất một phiên. Tuy nhiên, các sản phẩm khác nhau yêu cầu định nghĩa khác nhau. Đối với mạng xã hội, một phiên có thể là 1 giây; đối với dịch vụ phát trực tuyến, có thể là 15 phút.
Sử dụng các phiên gỡ cài đặt như chỉ báo chất lượng: nếu sau khi cập nhật số lượng phiên ngắn (dưới 10 giây) tăng lên, người dùng không tìm thấy chức năng cần thiết. Đây là tín hiệu sớm của vấn đề UX trước khi số lượng gỡ cài đặt tăng.
Liên kết các phiên với nguồn lưu lượng truy cập: người dùng từ các kênh trả phí sẽ có nhiều phiên hơn và Session Duration dài hơn. Nếu lưu lượng tự nhiên cho thấy Session Duration cao hơn 40% so với lưu lượng trả phí, thì có vấn đề về chất lượng nhắm mục tiêu. Quy kết phiên giúp tối ưu hóa ngân sách thu hút.
Câu hỏi thường gặp
Thời lượng phiên trung bình phụ thuộc vào danh mục: trò chơi — 8–15 phút, mạng xã hội — 5–10 phút, tiện ích — 1–3 phút. Xu hướng quan trọng hơn: nếu Session Duration giảm 20% trong một tháng, cần kiểm tra UX.
Nhiều SDK phân tích không kích hoạt sự kiện kết thúc khi thu nhỏ — chúng chờ timeout. Nếu người dùng thu nhỏ ứng dụng trong 1 phút và quay lại, nó được tính là một phiên. Chỉ sau timeout (30–60 phút) một phiên mới mới bắt đầu.
Tỷ lệ giữ chân của người dùng vào Ngày N được tính là tỷ lệ người cài đặt có ít nhất một phiên vào ngày đó. Nếu các phiên không được theo dõi chính xác, tỷ lệ giữ chân sẽ bị đánh giá thấp hoặc cao một cách hệ thống.
Có, hoạt động nền (phát nhạc, điều hướng, đồng bộ) có thể giữ ứng dụng ở trạng thái hoạt động. Tốt hơn nên tách biệt các phiên tiền cảnh (người dùng nhìn thấy màn hình) khỏi các phiên xử lý (công việc nền không có giao diện người dùng).
Đối với dịch vụ đăng ký (phát trực tuyến, thể dục, giáo dục), nên chọn timeout 5–10 phút. Người dùng thường quay lại sau một khoảng nghỉ ngắn — và mỗi lần tạm dừng nên được tính là phiên mới để không làm sai lệch Session Duration.
Tổng kết
Chúng tôi sẽ phát triển ứng dụng di động chìa khóa trao tay
IT Sectr tạo các ứng dụng iOS và Android cho các công ty khởi nghiệp và doanh nghiệp từ năm 2017. Chúng tôi sẽ tư vấn và đề xuất giải pháp tốt nhất cho bạn.
Đọc thêm