Raw-data report—installs

At a glance: An install event is recorded when the user launches the app for the first time and is available in install raw-data reports.

Raw-data report—installs

The install reports contain valuable data. Such data includes time of install, type of device, operating system, region, city, country, and more. For non-organic installs, the report also includes the attribution type (click or view), the media source, campaign, ad set, and ad type.

One of the most significant benefits of the install reports is that the data in them is raw data. What this means is that you can process the data as you see fit. Using the install reports you can produce other numerous aggregated reports. The install reports can also be combined with other reports for advanced, cross-section analysis.

The data in the install reports can help you:

  • Create your own aggregated reports
  • Analyze performance across different dimensions such as cities and regions
  • Segment users according to country, city, and language for targeting purposes
  • Obtain users' device ID for retargeting purposes


Access to install reports depends on the service package that you purchased from AppsFlyer. For more information, contact your CSM or email us at support@appsflyer.com.


Why is my report empty?

An empty report indicates that there are no installs under the specified media source and date range values.

Try to change the date range or choose a different media source.

Another common scenario is when apps receive traffic only from Facebook, but the integration was not completed by signing the Facebook Terms of service. In this case, there is no raw data for attributed installs.

The report looks like other reports. Is it the correct report?

The Installs and in-app events raw data reports have the same structure. These reports are designed this way in order to make it easier for you to merge them.

How is the data sorted?

The data is sorted by the Install Time field in ascending order. Note that the install time is actually the time when the user launches the app for the first time.


Some tips below recommend merging reports. Make sure to sort the merged reports by the appropriate field. For example, if you merge the install and in-app events reports, make sure to sort the report according to Event Time, rather than Install Time.

Why are there three different timestamps in the report?

The three timestamps are universal across raw data reports. This makes it possible to combine different reports.

  • Attributed Touch Time - The time the user engages with an ad
  • Install Time - The time that the app is launched
  • Event Time - The time the event takes place

For install reports, install time and event time are the same. However, in in-app events reports, the install time and event time are different. The difference can show the time that passes between app launch and user engagement with the app.

Can installs occur before the ad click?

No, they can't. To attribute a new install, its ad engagement MUST be prior to the first app launch. However, looking closely at the raw data may confuse users that it is possible.

The raw data for Android apps contains the fields Google Play Click Time (gp_click_time) and Google Play Install Begin Time(gp_install_begin). These fields indicate the click and install time, coming from the user's device.

Depending on the configured time and time zone of the user's device, there may be cases in which these timestamps precede the Attribution touch time value, which comes from AppsFlyer's servers.

Which IDs are available in the report?

The report contains several IDs:

Non-OS Related IDs Android Related IDs iOS Related IDs

The following IDs appear in the report regardless of the operating system:

  • AppsFlyer ID or appsflyer_id: A unique ID generated by AppsFlyer when the app launches for the first time. The ID is unique per app per install. This means that a new ID is allocated if the app is deleted, and then installed again. All events recorded in AppsFlyer contain the ID. 
  • Customer User ID: A unique customer ID defined by the app owner and set using the AppsFlyer SDK. 

What is the purpose of the contributor field?

The contributor field lists contributor media sources. This is also known as Assisted Installs.

What is the Keywords field? Why does it only appear in some installs?

Some installs that are attributed to Google Ads or Apple Search contain the keywords that are associated with the ads.

What is the ad type field? Why does it only appear in some installs?

The ad type is provided by SRNs (self-reporting networks) such as Google, Facebook, Twitter, and Snapchat. You can sort by ad type to learn what type of ads perform better.


When advertising with non-SRN media sources, you can specify the parameter yourself in the attribution link. Use the following naming conventions:

  • search_text
  • banner
  • interstitial
  • video
  • rewarded_video
  • playable
  • sponsored_content
  • audio

Why is the is_retargeting field always false?

The Is Retargeting field indicates whether the conversion is considered a new install or a re-attributed install.

Since the report is a raw data install report, as opposed to a retargeting report, the field is always False.

The field appears there because the raw data install report shares the same structure as retargeting install reports. They share the same structure so that you can combine them for comparison.

Why am I seeing retargeting campaigns in the report

Some users might come from retargeting campaigns but the install is considered a user acquisition install.

For example, a user uninstalls the app and then reinstalls from a retargeting campaign but does so after the re-attribution window.

Another scenario could be a new user who is accidentally served an ad from a retargeting campaign. AppsFlyer considered the install as a fresh install.

In both cases, the campaign details are added to the raw data install report, but the install itself is not considered a retargeting install.


Analyzing time to install

The report contains three timestamp fields:

  • Attributed Touch Time - When users engage with an ad
  • Install Time - When the app launches for the first time
  • Event Time - Same as install time (in the install report)

By calculating the difference between the Attributed Touch Time and Install Time, you can see how long it takes users to launch the app from the moment they engage with the ad.

You can aggregate this data and apply it to media sources, campaigns, and ad sets. This way you can see which media sources, campaigns, and ads bring responsive users that don't delay in installing the app.

In addition, a user that installs and launches the app right after clicking on an ad can be considered a responsive user and therefore a potentially valuable user. You can highlight responsive users and target them in various campaigns.


Although a short window between click and install can indicate a responsive user, it might also indicate fraud. For more information, see our Guide on Mobile Fraud.

Understanding the user journey

The user journey is a series of steps that the user performs before achieving a goal like purchasing a product or booking a flight. The idea behind a user's journey is to see, across a given period, what the user does in the app, how active they are, and what value they bring.

You can identify and highlight user journeys with the help of the AppsFlyer ID. The AppsFlyer ID (or AppsFlyer Device ID) is a unique ID that is generated for each app install per device. The AppsFlyer ID is consistent throughout the app's life cycle (from install to uninstall) and persists even if the user resets their device ID.

Since the install and in-app events reports have the same structure they can be merged into one report. In the merged report, you can aggregate and filter by AppsFlyer ID or Customer User ID (if it is set) and analyze user journeys.


Strongly engaged user

Johnny installed the app on 8/20/2018 9:31. The merged report shows that he performed a few purchases on the following dates: 8/20/2018 10:31, 8/22/2018 15:22, 8/25/2018 16:47. You can immediately conclude that Johnny is a relatively engaged user. He made a purchase one hour after launching the app and continued purchasing in the days following the install.

Weakly engaged user

Jessica Installed the app on 07/30/2018. The merged report shows that she added an item to cart on 08/15/2018, but there are no subsequent purchase events. You can assume that Jessica is perhaps a bit hesitant to make a purchase and retarget her with the items that she added to cart.

Analyzing the user journey for campaign optimization

Danny is the mobile acquisition manager of a travel app. He downloads the installation and in-app event reports and merges them. He then wants to see each user's journey in the app. To do so, Danny only needs to filter or aggregate data by AppsFlyer ID.

Danny sees that a user with ID 153xxxxxxxxxx-74xxxxxxxxxxxxxxx91 downloaded the app twelve months ago and booked one flight a few weeks after installing. The user then viewed a few deals but has since been mostly inactive and didn't book any flights. Danny finds more users with the same pattern and digs deeper.

He finds that these users mostly come from ad A of campaign B that was run in media source C. He checks to see the campaign details and sees that the ad and campaign targeted users who want to travel to a certain destination.

By analyzing the user journey, Danny is able to understand that the campaign might have been too narrow or too focused. He also concludes that these users were not engaged enough by the app.

Setting ad set and ad name

The report contains data about ad sets and ad names. It is recommended that you specify the same name for ad sets and ad names across different media sources.


Monica works with 10 media sources and has 3 ads that she runs through these media sources. The 3 ads all have the same budget and she wants to know how they perform across media sources. What Monica does is set the same ad and ad set names across different media sources. She then sorts by ad name and that allows her to see the success level of each ad in each media source.

See configuring attribution links for integrated partners to learn more about specifying ad sets and ad names.


If you are using custom media sources, you can specify the ad set and ad name in the attribution link. The parameters are af_adset and af_ad.


Adding data to the sub param fields

The report contains five subscriber parameter fields, which can be used for adding your custom data to each install. When appearing in the attribution link these fields automatically get parsed and added to the raw data reports for further analysis. 



Use these params to add additional data to the install event. The data can relate to media sources or any other aspect of the install event.


David tests an ad with 3 different color themes across different media sources. What David does is specify the color theme in the sub param in the attribution link of each ad. He then sorts and filters by the sub params to see which color theme performs better.

Analyzing multiple apps

Most app owners have apps for both iOS and Android. Some app owners even manage several different apps.

The installation reports allow you to analyze several apps side-by-side by merging their installation reports.

You can export reports for iOS and Android and merge them. The merged report allows you to analyze the results of campaigns for the same app and see which operating system fares better in given campaigns.


You can easily view and analyze data from multiple apps with Custom Dashboard and Pivot.

Was this article helpful?