[Beta] Getting started with Predict


At a glance: Determine if Predict is the right solution for you, and learn how to get on board.

Is Predict right for you?

Predict, AppsFlyer’s predictive analytics solution for iOS and SKAdNetwork, streamlines user acquisition campaign management by use of its sophisticated machine learning engine.

What's needed to make machine learning work for your apps? Data, data, and more data. So, the first step is to determine if your apps can provide the volume and quality of data that make accurate predictions possible.

You should also consider a few additional factors to ensure that you will be able to take full advantage of Predict’s features.


Our predictive analytics solution for Android is expected soon. We'll be in touch with more news as soon as it's available!

Data requirements

In order to make accurate predictions, Predict requires:

  • A sufficient length of historical data (an average of 3 months)
  • Sufficient data volume (at least 15 in-app events per day per user). For more information about how Predict uses in-app events to develop its user-level LTV predictions, see Introduction to Predict: How does it work?
  • Sufficient user base (at least 10,000 Daily Active Users and 2,000 daily Non-Organic Installs)

If your app generates (or can generate) that level of data, Predict may be right for you.

Additional factors

Predict provides maximum value to apps with the following characteristics:

  • An app in any vertical in which the majority of a newly-acquired user’s LTV is realized at least 48 hours post-install (for example, apps that incorporate in-app purchases, bookings, or later subscriptions)
  • Apps that allow revenue data to be reported to AppsFlyer – including ad revenue data
    • Predict uses this data in its predictions for pRevenue (total revenue), pARPU (Predicted Average Revenue Per User), and pROAS (Predicted Return On Ad Spend)
  • Apps integrated with AppsFlyer’s Xpend cost measurement solution.
    • Cost data is used in determining eCPI (effective Cost Per Install) and in predicting pROAS.

How to get on board

The Predict AI engine constructs a unique prediction model for each app, based on its historical first-party data. This means that (currently) the onboarding process is time intensive and allows only a handful of customers to get started during any given cycle.

The team is currently evaluating requests to participate in the Predict beta. Get in touch with your AppsFlyer CSM or Sales Representative if you’d like to be included. Once your apps are accepted as part of the beta, these are the steps for getting on board:

  1. Define additional in-app events
  2. Identify and describe ad revenue events
  3. Determine retention measurement dates
  4. Let the machine learning begin!

Define additional in-app events

The higher the number of in-app events defined per app, and the better these events reflect that app’s LTV logic, the more reliable the predicted KPIs will be. There is no limit to the number of events you can measure. In fact, quite the opposite: the more, the better!

What types of in-app events should be defined?

These are the factors to be considered when defining in-app events:

  • Timing: Of particular importance are events that take place within the first 48 hours of a newly-acquired user’s activity. But don’t stop there! For maximum accuracy and ongoing fine-tuning of each app’s unique prediction logic, Predict needs as many in-app event measurements as possible, throughout the entire user journey.
  • Quality: The quality of an event is determined by how closely it reflects the user journey and LTV calculation for each individual app.

So, the first step is to create a list of as many quality in-app events as possible. To streamline the implementation process, use our in-app event generator. This tool includes all of the typical in-app events per vertical and lets you modify the events according to your business needs. Once complete, share the file with your developer.


Get new in-app events set up for reporting to AppsFlyer as quickly as possible, since Predict requires 4 to 6 weeks of history in order to utilize them as part of its predictions.

Do new in-app events need to be added to the SDK?

You can report in-app events to AppsFlyer either via the AppsFlyer SDK or through server-to-server (S2S) integration. Even if you are currently reporting installs and in-app events to AppsFlyer via the SDK, you can set up additional in-app events to be reported via S2S. This may be a useful option if you wish to avoid updating the SDK and releasing a new version of your app.

Identify and describe ad revenue events

In order to effectively predict ad revenue, the Predict AI engine must be able to identify which in-app events are related to ad revenue. We will work with you in completing this process:

  1. The Predict team will create a spreadsheet of every in-app event defined for your app.
  2. We will ask you to identify which are ad revenue events and define the type of ad revenue they relate to (for example, banner ad, interstitial, ad view, rewarded video, etc.)

Determine retention measurement dates

In addition to pRevenue and other revenue-based predictions, Predict is able to predict the percentage of newly-acquired users who will still be using your app {x} number of days post-install.

During the onboarding process, you will be able to specify 3 dates (number of days post-install) for which you want us to predict retention.

  • Available retention measurement dates: Days 1, 3, 7, 14, 21, 28, and 30
  • Note: Predicted retention measurement is limited to 3 dates as a result of SKAdNetwork's 6-bit conversion value limitation.

Let the machine learning begin!

In order to provide accurate LTV predictions for your campaigns, the Predict AI engine must review the app’s historical data using the definitions and factors defined in the previous steps by the app owner and AppsFlyer. The main goal of this training process is to identify correlations between early user-engagement signals and LTV on day 30.

It takes approximately 7 days for this intensive initial machine learning process to be completed at which point you will begin to see data on the Predict dashboard.

After onboarding

Once the onboarding process is complete, you can map predicted KPIs as in-app event postbacks for relevant partners on the Integrated Partners page in the AppsFlyer dashboard. These KPIs are then shared as events with partners, who can use this information to start optimizing your campaigns.

  • You can decide to map all KPIs, some, or none at all based on your advertising strategy and business goals. Mapping is not required to enable Predict's logic or predictions.
  • The events each partner makes available for mapping varies, and some partners support mapping to custom-defined events. Make sure your partners' optimization logic supports the events you are mapping to in the way you intend them to.


Let's say you have 2 different apps (App A and App B), and you want to optimize your campaigns differently for each app. The decision of which KPIs to map depends on the types of users you want to focus on: 

  • For App A, you want to target your campaigns to users most likely to spend money in the app. So for this app, you could map the SDK event af_predict_revenue to the partner's mobile_purchase event. This allows your partner to optimize your campaigns towards those users most likely to be high-paying users.
  • For App B, you are more interested in users who will continue to use your app over the long term. So for this app, you could map the SDK event af_predict_retention_d30 (% of users predicted to be using your app 30 days post-install) to the partner's session event. This allows your partner to optimize your campaigns to target those users most likely to stay with the app.

To map predicted KPIs/events:

  1. From the AppsFlyer (Overview) dashboard, go to Configuration > Integrated Partners.
  2. Select the relevant integrated partner.
  3. On the Integration tab, under In-app event postbacks, map your selected SDK events (those starting with af_predict_) to the selected partner event identifiers.



  • You should only map SDK retention events for the 3 retention measurement dates you have selected (for example, af_predict_retention_d3,af_predict_retention_d7, af_predict_retention_d21, etc.)
  • The following SDK events are legacy events (no longer supported) and should not be mapped:
    • af_predict_retention_7+
    • all events starting with af_predict_engagement_
    • all events starting with af_predict_benefit_
    • all events starting with af_predict_monetezation_