LTV vs. Activity data

At a glance: Data in AppsFlyer is either Lifetime Value (LTV) or Activity. LTV data is related to installs occurring during the specified date range. Activity data is all events occurring during the specified date range.

LTV vs. Activity

There are two methods for analyzing user event data. Event data relates to actions performed by users post-installation, such as in-app purchases, registrations, and level completions. In AppsFlyer, event data is available grouped by the user acquisition date or the event chronological date.

  • Data grouped by user acquisition date is referred to as Lifetime Value (LTV).
  • Data grouped chronologically is referred to as Activity.

It's important to understand what they mean and where they're found. Note that installs are neither LTV nor activity.

Activity data

  • Activity data are the events performed by active app users during a specified date range.
  • Because activity data shows a breakdown of chronological events, it's useful for measuring the overall performance of media sources during specific date ranges. For example, use activity data to see how many purchase events were performed by all app users during a specific month.
  • Use activity data to compare user behavior in the current month relative to a previous month.

LTV data

  • LTV data are the events performed during the lifetime of a user who converted/installed the app in a specific date range. For example, use LTV data to see the ROI up to the present day of users who installed your app during a specific month. Events performed by users who converted/installed the app before the specified date range are not shown in LTV data, even if the event occurred within that range. 
  • LTV data is a tool that shows the quality of users from different media sources. Campaign optimization depends on LTV data.

Advertisers find both types of data useful but for different purposes. For this reason, both are available. 

  • What data can you use to compare media sources?
  • Which pages and reports can you compare in AppsFlyer?
  • How do you compare LTV and activity data?

The train analogy

This analogy will help you understand the difference between LTV and activity data. 

Activity: Imagine you're watching a passing train. As the train passes, you see only the actions performed by the passengers on the train as they pass by. This is activity data.


LTV: Now imagine, that you board a train as an observer. The train is divided into railroad cars.

  • You board the car with other passengers at the departure platform. This is the install.
  • During the journey, you're able to observe all the actions performed by the passengers in the car. You observe the actions of these passengers until a passenger deboards the train, this is an uninstall.
  • You aren't able to view the actions of passengers in other railroad cars because they boarded the train before or after you. This then is LTV.


AppsFlyer dashboards—LTV or activity?

The dashboards enable marketers to optimize their non-organic traffic. Most of the dashboards and reports in the platform are LTV-based as marketers typically measure performance on an LTV basis.

Let’s explore which data is LTV and which is Activity.

Overview dashboard

  • The Overview dashboard display is LTV.
  • Views available: User acquisition, retargeting, unified
  • Metrics available: User acquisition, retargeting, revenue, and campaign costs
  • Charts: Use acquisition trend, installs, lifetime loyal users, and lifetime revenue

These columns in the table are calculated using LTV data: 

  • Sessions
  • Loyal users (number and rate)
  • Revenue
  • ROI
  • ARPU
  • Uninstalls (number and rate)
  • All in-app events columns

SKAN Overview

The SKAN Overview dashboard shows SKAN-attributed marketing performance reported via iOS SKAN postbacks and additional data points during an initial user activity window, analyzed and aggregated by AppsFlyer. The default activity window is 24 hours. 

  • The SKAN Overview dashboard is LTV 
  • Data can be filtered by install date or postback arrival date
  • Metrics available: Installs, touchpoints, revenue, advertising costs, and click-to-install rate


Protect360 dashboard

Protect360 has both installs and in-app events dashboard views. 

Installs dashboard (CPI) data provides LTV-based insights about fraudulent installs, blocked in real-time, and identified post-attribution. You can drill down to further examine the fraud events by using the filtering and grouping options.

In-app events (CPA) dashboard data provides activity-based insights about fraudulent in-app events, blocked in real-time, and identified post-attribution. You can drill down to further examine the fraud events by using the filtering and grouping options.

Activity dashboard

The events data in the Activity dashboard are based on sessions and revenue and are activity-based. Meaning they're chronological and relevant to app users active during a specified date range.


Events dashboard

All of the data on this page, accessed from either the Top Events widget or from the Events link on the left bar, is LTV events data. For a more detailed explanation of the Events Page, click here.

Retention and cohort reports

Even if you select a single day of retention data, you can retrieve many days or weeks' worth of sessions data relevant only for the installs from that day, which is a KPI used for user quality. This is classic LTV. Click the links for a more detailed description of the Retention Report and Cohort Reports.

The Cohort Report is similar to the Retention Report but has more than the sessions metric. The report metrics, such as revenue, sessions, and in-app events are all LTV.


Downloadable reports

  • Performance reports: Similar to the Aggregate Performance Report table on the Overview dashboard the performance reports are LTV.
  • Raw data reportsRaw data reports are the primary source of activity data. These reports like installs, in-app events, postbacks, and uninstalls are defined and sequenced by activity date.

Retargeting reports

Retargeting reports, including the performance and raw data reports, similar to the UA reports are available. In the case of raw data reports, the following are available:

  • Retargeting in-app events 
  • Conversion (re-attribution, re-engagement) 

Fraud prevention reports

The rejected In-App Events report provides activity-based data.

Custom dashboard widgets

In conjunction with the Overview page of the dashboard, all the events data on the Custom Dashboard page is LTV-based.

Pivot tables and master API

AppsFlyer Pivot Table feature is based on the Master API, which can supply data from 3 different data groups: LTV, Activity, and Retention. When you create a Master API URL or a new Pivot table view, you select which event-related KPIs you want as LTV, activity, or both.

Comparing data sources

If you want to compare data from different parts of the AppsFlyer platform make sure that you compare reports of the same type, LTV or Activity. The following table summarizes which types of events data are available on the different dashboard pages and reports across AppsFlyer. 

Source Data type

Overview dashboard


SKAN Overview


Protect360 installs


Protect360 in-app events


Activity dashboard


Events dashboard






Performance reports


Raw-data reports


Retargeting reports


Fraud Prevention reports


Master API—campaign performance KPIs


Pivot table


Comparing AppsFlyer data with external data sources

The vast majority of data sources, including Google and Apple, display activity data, that aren't LTV data. Therefore, to compare data from external sources with AppsFlyer data, you would usually use AppsFlyer activity data available in the raw data reports.

Consider that Meta ads offers partial LTV data, limited to 28 days following the install.

Comparing LTV and activity data in AppsFlyer

There are two differences between LTV and activity data when looking at the same date range. The differences are:

  • A: Activity data includes events from installs that happened before the date range.
  • B: LTV data includes events that happened after the date range.

To compare the two types of data correctly we need to neutralize the differences. This can be achieved by retrieving LTV data from the activity data or vice versa.


Minor differences between similar sources are still possible due to differences in report generation time.

Retrieving LTV data out of raw activity data

  1. In AppsFlyer, from the side menu, select Report > Raw Data Export.
  2. Set the current day as the last day of the date range (difference B solved).
  3. Download the raw in-app events report.
  4. Use the Install Time column to filter out installs prior to the first day of the date range (difference A solved).


While activity data remains constant over time, LTV data changes when existing users perform new in-app events. The LTV data you see today may be different tomorrow for the same date range.

Retrieving activity data out of LTV data

To compare the LTV-based overview page with an external source, which is activity-based, you must overcome the two differences.

You can only do this by:

  1. Selecting sources that started sending installs within the specified date range on AppsFlyer (difference 1 solved).
    This ensures the activity data does not include events performed within the date range that belong to installs that happened prior to the date range.
  2. Setting the current day as the last day of the date range (difference 2 solved).
    This ensures the LTV data does not include events performed after the date range that belong to installs that happened within the date range.


When comparing any two data sources, whether both are in AppsFlyer or just one is, make sure to compare activity data with activity data, and LTV with LTV.