AppsFlyer: iOS data schema

The streaming data is uploaded to a single partitioned table named "ios_events".

Hit data is available for processing in your Google BigQuery project within 2-5 minutes after being sent. All data appears in Google BigQuery as sent by AppsFlyer Push API.

Each hit is written into a separate row. For a full description of the terms, please visit AppsFlyer's Raw data field dictionary and Help Center glossary.

Data schema for Push API V2.0

Field name Description
advertising_id Advertising ID
af_ad ad
af_ad_id Ad ID
af_ad_type Ad Type
af_adset Adset
af_adset_id Adset ID
af_attribution_lookback Attribution Lookback Window
af_c_id Campaign ID
af_channel Channel
af_cost_currency Cost Currency
af_cost_model Cost Model
af_cost_value Cost Value
af_keywords Keywords
af_prt Partner
af_reengagement_window Reengagement Window
af_siteid Site ID
af_sub_siteid Sub Site ID
af_sub1 Sub Param 1
af_sub2 Sub Param 2
af_sub3 Sub Param 3
af_sub4 Sub Param 4
af_sub5 Sub Param 5
amazon_aid Amazon Fire ID
android_id Android ID
api_version API Version
app_id App ID
app_name App Name
app_version App Version
appsflyer_id AppsFlyer ID
attributed_touch_time Attributed Touch Time
attributed_touch_time_selected_timezone Attributed Touch Time Selected Timezone
attributed_touch_type Attributed Touch Type
bundle_id Bundle ID
campaign Campaign
carrier Carrier
city City
contributor_1_af_prt Contributor 1 Partner
contributor_1_campaign Contributor 1 Campaign
contributor_1_match_type Contributor 1 Match Type
contributor_1_media_source Contributor 1 Media Source
contributor_1_touch_time Contributor 1 Touch Time
contributor_1_touch_type Contributor 1 Touch Type
contributor_2_af_prt Contributor 2 Partner
contributor_2_campaign Contributor 2 Campaign
contributor_2_match_type Contributor 2 Match Type
contributor_2_media_source Contributor 2 Media Source
contributor_2_touch_time Contributor 2 Touch Time
contributor_2_touch_type Contributor 2 Touch Type
contributor_3_af_prt Contributor 3 Partner
contributor_3_campaign Contributor 3 Campaign
contributor_3_match_type Contributor 3 Match Type
contributor_3_media_source Contributor 3 Media Source
contributor_3_touch_time Contributor 3 Touch Time
contributor_3_touch_type Contributor 3 Touch Type
cost_in_selected_currency Cost In Selected Currency
country_code Country Code
custom_data Custom Data
customer_user_id Customer User ID
deeplink_url Deep Link URL
device_category Device Category


Device Download Time
dma DMA
device_download_time_selected_timezone Device Download Time Selected Timezone
event_name Event Name
event_revenue Event Revenue
event_revenue_currency Event Revenue Currency
event_revenue_usd Event Revenue USD
event_source Event Source
event_time Event Time
event_time_selected_timezone Event Time Selected Timezone
event_value Event Value
gp_broadcast_referrer GP Broadcast Referrer
gp_click_time Google Play Click Time
gp_install_begin Google Play Install Begin Time
gp_referrer Google Play Referrer
http_referrer HTTP Referrer
idfa IDFA
idfv IDFV
imei IMEI
install_app_store Install App Store
install_time Install Time
install_time_selected_timezone Install Time Selected Timezone
ip IP
is_primary_attribution Is Primary Attribution
is_receipt_validated Is Receipt Validated
is_retargeting Is Retargeting
keyword_id Keyword ID
keyword_match_type Keywords Match Type
language Language
match_type Match Type
media_source Media Source
network_account_id Network Account ID
oaid OAID
operator Operator
original_url Original URL
os_version OS Version
platform Platform
postal_code Postal code
region Region
retargeting_conversion_type Retargeting Conversion Type
revenue_in_selected_currency Revenue In selected currency
sdk_version SDK Version
selected_currency Selected Currency
selected_timezone Selected Timezone
state State
store_reinstall (False=Download, True=Redownload) Store Reinstall
user_agent User Agent
wifi WIFI

Limit ad tracking (LAT): if true, IDFA is not available and is set to 0 (used before iOS 14).
Starting iOS 14 LAT is deprecated by Apple. In this case disregard is_lat and determine user privacy status using ATT.

Format: Enum 5 char boolean


ATT or att_status provides the status values for app tracking authorization and is used to determine user privacy preferences for the IDFA tracking.

Possible values: not_determined, restricted, denied, authorized, af_unknown, af_authorized, af_unavailable.
Available for iOS 14+

Format: String 20


The source bringing the user: UA, Organic, Retargeting, Unknown

Format: String


The type of conversion: Install, Reinstall (1), Re-engagement, Unknown (2)
(1) If conversion_type= reinstall and campaign_type=retargeting is equivalent to retargeting_conversion_type=re-attribution
(2) In-app events/sessions not attributed to any media source.

Format: String


App download completion time using the device's clock and converted to UTC. The value always displays as UTC time.

Format: yyyy-mm-dd hh:mm:ss.sss

device_download_time_selected_timezone Device's timezone
app_type App type
device_model Device model
store_product_page Store product page
debug_info System-generated logs developers can use for debugging


Data schema for Push API V1.0

Name Data type Description
event_type STRING install/in-app-event
attribution_type STRING Organic or Regular(non-organic)
click_time STRING Attributed touch time 
attributed_touch_type STRING The type of the touch we attributed to (could be click / impression / TV / pre-installed)
attributed_touch_time STRING The time of the touch we attributed to. Format "mm/dd/yyyy hh:mm:ss PM/AM". Example: "11/19/2016  8:32:12 PM"
download_time STRING Timestamp of the download click on the app store, as appears on the device (UTC timezone)
install_time STRING Time of the first launch after the installation took place. Format "mm/dd/yyyy hh:mm:ss PM/AM". Example: "11/19/2016 8:32:12 PM"
media_source STRING Regular networks (excluding FB etc.) will appear on the link
agency STRING Name of the attributed agency
event_revenue STRING The revenue created as a result of the event. Supporting up to 4 digits after the decimal point
event_revenue_currency STRING The amount of the revenue in local currency. Supporting up to 4 digits after the decimal point
event_revenue_usd STRING The amount of the revenue in US dollars. Supporting up to 4 digits after the decimal point
event_source STRING The source of the event - either SDK or S2S
is_receipt_validated STRING true/false/null when implemented in the SDK, empty otherwise
af_prt STRING Agency or PMD
af_channel STRING Channel of the media source, such as YouTube for Google, Instagram for Facebook etc
af_keywords STRING Received from Google Integration
campaign STRING Note: campaign name for special integrations (e.g. Facebook) returns via API and not via link
af_c_id STRING Campaign ID
af_adset STRING Ad set. Facebook info is also included
af_adset_id STRING Ad set ID. Facebook info is also included
af_ad STRING Ad. Facebook info is also included
af_ad_id STRING Ad ID. Facebook info is also included
fb_campaign_name STRING Facebook campaign name
fb_campaign_id STRING Facebook campaign ID number
fb_adset_name STRING Facebook ad set name
fb_adset_id STRING Facebook ad set ID number
fb_adgroup_name STRING Facebook ad group name
fb_adgroup_id STRING Facebook ad group ID
af_ad_type STRING Type of ad (banner, footer etc.)
af_siteid STRING Publisher ID
af_sub1 STRING Custom parameter to be defined by the customer
af_sub2 STRING Custom parameter to be defined by the customer 
af_sub3 STRING Custom parameter to be defined by the customer 
af_sub4 STRING Custom parameter to be defined by the customer 
af_sub5 STRING Custom parameter to be defined by the customer 
http_referrer STRING Identifies the address of the webpage that linked to the AppsFlyer click URL. By checking the referrer, you can see where the request originated
original_url STRING Click/Impression URL. For example
install_app_store STRING Identifies the Android store where the app is downloaded from (details)
click_url STRING Click/Impression URL. For example
af_cost_model STRING CPC / CPA / CPM / Other. Currently all cost is calculated according to CPA regardless of this value
af_cost_value STRING Cost in original currency. Supporting up to 4 digits after the decimal point. eg. 320.5095
af_cost_currency STRING Currency of the cost (list)
cost_per_install STRING Cost in the original currency
contributor1_af_prt STRING Agency or PMD
contributor1_media_source STRING Media Source of the contributor
contributor1_campaign STRING Campaign of the contributor
contributor1_touch_type STRING The type of the touch
(could be click / impression / TV) 
contributor1_touch_time STRING The time of the touch
contributor2_af_prt STRING Agency or PMD 
contributor2_media_source STRING Media Source of the contributor 
contributor2_campaign STRING Campaign of the contributor 
contributor2_touch_type STRING The type of the touch
(could be click / impression / TV)
contributor2_touch_time STRING The time of the touch
contributor3_af_prt STRING Agency or PMD 
contributor3_media_source STRING Media Source of the contributor 
contributor3_campaign STRING Campaign of the contributor 
contributor3_touch_type STRING The type of the touch
(could be click / impression / TV)
contributor3_touch_time STRING The time of the touch
region STRING Based on IP from the SDK
is_retargeting BOOLEAN TRUE / FALSE
re_targeting_conversion_type STRING Re-engagement / Re-attribution
af_attribution_lookback STRING Time period for which AppsFlyer attributes events
af_reengagement_window STRING The re-engagement attribution window is the number of days in which an event can be attributed to a retargeting campaign
is_primary_attribution BOOLEAN During a re-engagement window, can be attributed either the original media source (prior to the re-engagement) or to the re-engagement media source. While the event is within the re-engagement window, the original media source will not be the primary attribution. Outside of the re-engagement window, it will be the primary attribution
user_agent STRING The user agent for the URL
country_code STRING Country Code. For example GB, US
state STRING State based on IP from the SDK
city STRING City based on IP from the SDK
postal_code STRING Postal code based on IP of the SDK
dma STRING Designated Market Area - regions are the geographic areas in the US where local television viewing is measured by the Nielsen company
ip STRING IP address
mac STRING Device mac address
language STRING Device language
appsflyer_id STRING Unique Installation identifier
appsflyer_device_id STRING Unique app installation identifier per device
idfa STRING For iOS - Device IDFA
customer_user_id STRING Customer user ID, as set by the developer. This is used as the user identifier in the advertiser's system
idfv STRING App level identifier for a particular vendor
platform STRING iOS / Android / Windows Mobile
device_type STRING Tablet / Phone
device_name STRING Name of the device as entered by the user - always appears as Null
os_version STRING Operation System version
app_version STRING Version of the app
sdk_version STRING Version of the SDK
app_id STRING ID of the app.
For iOS: id123456789.
For Android: com.appsflyer.referrersender
app_name STRING Name of the app
bundle_id STRING Identification to match either a single app or a group of apps (for iOS)
event_time STRING The time of the event happened
event_name STRING The name of the event that took place
event_value STRING The value of the event
currency STRING USD
selected_currency STRING Currency specified in the event or for the app in the dashboard
revenue_in_selected_currency STRING Revenue in the currency selected for the app in the dashboard
cost_in_selected_currency STRING Cost in the currency selected for the app in the dashboard
download_time_selected_timezone STRING Time of download in the time zone selected for the app
click_time_selected_timezone STRING Time of the ad click in the time zone selected for the app
install_time_selected_timezone STRING Time of the first app launch in the time zone selected for the app
event_time_selected_timezone STRING Time of the event occurrence in the time zone selected for the app
Was this article helpful?
1 out of 1 found this helpful
Have more questions? Submit a request


Please sign in to leave a comment.