Raw data field dictionary

At a glance: The data field dictionary (raw data specification) describes field contents. It should be used to help you understand what fields mean, how they are formatted, and when they are available.

Raw data field dictionary 

The following table is a dictionary that lists the raw data fields available in various AppsFlyer reports The table is consistently being updated as additional raw data fields are added in AppsFlyer.

The columns in the dictionary table are: 

  • Field group: Logical grouping based on field use. Note! Fields in the ad revenue group are displayed in raw data reports either as their own columns or populated as part of the Event value.  
  • Field Name:
    • Field name used in reports provided via the Export page and Pull API.
    • The notation [n] means that there are multiple instances of the same field, the difference being the instance number. For example, Sub Param [n] means, Sub Param 1, Sub Param 2, ..., Sub Param 5. The range of n values is noted as (n=1-5). 
  • API name:
    • Field name as it displays in Data Locker and Push API reports.
    • The notation [n] means that there are multiple instances of the same field, the difference being the instance number. For example, Sub Param [n] means, Sub Param 1, Sub Param 2, ..., Sub Param 5. The range of n values is noted as (n=1-5). 
  • Source: The original source location of the field content, for example:
  • Description
    • Some fields have different meanings depending on the context of the event, for example as a result of a UA or retargeting campaign.
  • Format: Field type and length.
    • String: The maximum length of the string. We don't usually enforce field length limitations on receipt of the data but the data may be truncated thereafter. Don't exceed the field length specification.
    • Date time: 
      • String with the format, yyyy-mm-dd hh:mm:ss. For example, 2019-09-17 00:09:25 The time zone used to display the data depends on the data delivery tool as follows:
        • Export data page: app-selected time zone.
        • Push API: time fields have a selected_time_zone option which means app-specific time zone otherwise UTC.
        • Master API: Default is the app-selectable time zone.
        • Data Locker: UTC
      • Date fields in the CSV files have the format yyyy-mm-dd. When you open a CSV file in Excel, date fields are formatted using the computer's date and time settings. You can change the display format in Excel. To see the unformatted value, open the file using an editor.
      • Push API:
        • For timestamp fields in UTC: format yyyy-mm-dd hh:mm:ss.sss. For example, 2019-09-17 00:09:25.123 
        • For timestamp fields in the selected time zone: format yyyy-mm-dd hh:mm:ss.sss±th:tm. For example 2019-01-20 04:51:16.000+0000
    • Enum n char: Enum fields can only contain specific values. For example, cost currency has 3 characters and can contain only currency codes as specified
    • Enum 5 char boolean: The value of the field can be either TRUE or FALSE

 Tip

  • To sort the table, click on a column name.
  • You can also download the table.
  • The downloaded CSV contains additional fields to those mentioned above:
    • Part of main AppsFlyer report schema:
      • The majority of AppsFlyer reports are built from the same schema and contain the same fields.
      • Some fields, may be populated with null or empty values, depending on the report, and whether the data is collected from ad networks, advertisers, device platforms, etc. 
      • When configuring your BI systems, it's best to configure all main AppsFlyer schema fields, even if a given report always returns them as null or empty values. This enables you to easily ingest the data if and when it becomes available. 
      • If a field is not part of the main AppsFlyer report schema, it's only contained in specific reports. For example, SKAN reports.
    • Report delivery method: Indicates whether a given field is available via Push API, Export data/Pull API, and Data Locker. Note: Even if a field is part of the main AppsFlyer report schema, it may not be part of reports delivered by a specific method. For example, the placement field is part of the main AppsFlyer schema, but it only displays in reports delivered via Data Locker, Pull API, or the Export data page; not via Push API.
Field group Field name API name Source Description Format
Attribution Ad af_ad Link Ad name String 100
SKAN Ad ID ad_network
_ad_id
Ad network Ad ID String
Attribution Ad ID af_ad_id Link Ad ID String 24
SKAN Ad name ad_network
_ad_name
Ad network Ad name String
SKAN Ad network ID skad_ad
_network_id
iOS ID of the ad network to whom the postback was sent String
SKAN Ad network name ad_network
_name
Ad network
  • Ad network name reported by the ad network to AppsFlyer.
  • If this field is blank, the ad network didn't (couldn't) populate it.
  • You can resolve the ad network name using skad_ad_network_id. Use this table to do so.
String
SKAN Ad network source app ID ad_network_source_app_id Ad network Publisher app ID reported by the ad network. Use to help reconcile cost; reported by the ad network. The publisher app gives the basis for this data.  String
SKAN Ad network timestamp ad_network
_timestamp
Ad network
  • Time the postback was received by the ad network.
  • In the case of Google Ads, this field isn't populated.
Timestamp
Attribution Ad placement ad_placement Link Populated to CTV ad placement String 64
Attribution Ad type af_ad_type Link Example: banner, footer String 24
Ad revenue Ad unit ad_unit Ad revenue API Ad revenue ad segment name when A/B testing is conducted String 1024
Attribution Adset af_adset Link Adset name, identifies a group that contains one or more ads String 100
SKAN Adset ID ad_network
_adset_id
Ad network Adset ID String
Attribution Adset ID af_adset_id Link Adset ID, identifies a group that contains one or more ads String 24
SKAN Adset name ad_network
_adset_name
Ad network Adset name String
Device info Advertising ID for Android devices advertising_id SDK
  • User-resettable device ID, AKA GAID.
  • For CTV this is the CTV ID, for example RIDA or VIDA.
String 40
SKAN AF attribution flag af_attribution
_flag
AF When the Single Source of Truth (SSOT) mechanism is on: If true, the install was attributed by both AppsFlyer and SKAN. If false, the install wasn't attributed by AppsFlyer. If the skad_conversion_value is null, the flag is either true or false (based on modeling). Boolean
Device info Amazon Fire ID amazon_aid SDK User-resettable advertising ID on Amazon devices. String 100
SKAN Ambiguous event skad_ambiguous
_event
AF If true, the iOS postback was received during the first 72-hours after an advertiser changed the SKAN settings in the dashboard.
Due to the various timers employed by SKAN, AppsFlyer can't map the event accurately.
Boolean
Device info Android ID android_id SDK Permanent device ID String 20
App App ID app_id SDK Unique app identifier in Appsflyer. Example:
  • iOS: id123456789
  • Android: com.appsflyer.referrersender
iOS: String 12
Android: String 100
SKAN App ID skad_app_id iOS App ID String
App App name app_name SDK Set by the advertiser String 100
App App type app_type App clip Values: app_clip, full_app String
App App version app_version SDK Set by the advertiser 8 char max
Device info AppsFlyer ID appsflyer_id SDK
  • A unique ID generated by the SDK when the app is installed on a device. The ID is used to attribute in-app events in LTV flows, fetch conversion data, and affiliate in-app events.
  • A new ID is generated if the app is deleted and installed again. Restoring the app from an iCloud backup is not regarded as an install.
  • For CTV, this field is populated with the custom_device_id (the device ID managed by the advertiser).
iOS: String 24
Android: String 33
Device info ATT att SDK
  • ATT, AKA att_status is available in iOS 14+, and is populated with values from one of the following: Returned by ATTrackingManager, sent by S2S, determined by AppsFlyer.
  • ATT values are any of the following: not_determined, restricted, denied, authorized, af_unknown, af_authorized, af_unavailable.
String 20
Attribution Attributed touch time attributed_touch
_time
AF
  • UA: time of the touch we attributed to.
  • Retargeting: time of the engagement we attributed to.
Date Time
Attribution Attributed touch type attributed_touch
_type
AF
  • UA: Possible values: click, download, impression, pre-install
  • Retargeting: click, impression
Enum 10 char max
Attribution Attribution lookback window af_attribution
_lookback
Link
  • Maximum period of time when an install can be attributed to a specific ad.
  • UA: For click attribution, set on the af_click_lookback attribution link parameter.
  • Retargeting: Set in app settings for Retargeting click-through lookback.
3 char max
SKAN Attribution signature skad_attribution
_signature
iOS Signature added by ad network to SKAN postbacks String
Protect360 Blocked reason blocked_reason AF Protect360: The reason the install is blocked. Example: install_hijacking, bots String 100
Protect360 Blocked reason rule (deprecated) blocked_reason
_rule
AF Deprecated String 100
Protect360 Blocked reason value blocked_reason
_value
AF Protect360: Additional information about the block. Example: Site ID, validation rule name/s String 100
Protect360 Blocked sub reason blocked_sub
_reason
AF Protect360: Particular sub-reason for a blocked install. Example: Reason: install_hijacking. Sub-reason: referer hijack, CTIT_anomalies, validation_rules String 100
App Bundle ID bundle_id SDK String 100
SKAN Campaign ad_network
_campaign
_name
Ad network Campaign name reported by the ad network to AppsFlyer String
Attribution Campaign campaign Link Campaign name String 100
SKAN Campaign ID ad_network
_campaign_id
Ad network Campaign ID reported by the ad network to AppsFlyer String
Attribution Campaign ID af_c_id Link Campaign ID String
SKAN Campaign ID skad_campaign
_id
iOS Campaign ID used to publish the ad. Range 0-100 Integer
Attribution Campaign type campaign_type AF The source bringing the user:
  • UA
  • Organic
  • Retargeting
  • Unknown (1)
(1) In-app events/sessions not attributed to any media source. Alternatively, the data is deleted due to a privacy policy or GDPR request.
String
Device info Carrier carrier SDK The carrier name provided by Android using getSimCarrierIdName(). See also carrier mapping. String 50
SKAN Channel ad_network
_channel
Ad network Field is added to reports but won't necessarily be populated String
Attribution Channel af_channel Link Media source channel. Example: YouTube for Google, Instagram for Meta ads Dynamic Enum String 20
Device location City city AF The most granular location of the user based on the device IP. Usually, the value holds a city name, but it can also be districts, boroughs, etc., which are more accurate. String 100
SKAN Coarse conversion value skad_coarse
_conversion
_value
iOS
  • Value can below,medium, or high.
  • For SKAN 3 the value is null.
String
Attribution Contributor[n] campaign contributor[n]
_campaign
(n=1-3)
AF Contributor campaign String 100
Attribution Contributor[n] engagement type contributor[n]_engagement_type (n=1-3) AF Possible values: preload, click_to_download, click_to_app, engaged_click, engaged_view, view, listening Enum 18 char max
Attribution Contributor[n] match type

contributor[n]
_match_type
(n=1-3)

AF Possible values are the same as match type. String 50
Attribution Contributor[n] media source contributor[n]
_media_source
(n=1-3)
AF Contributor media source String 50
Attribution Contributor[n] partner contributor[n]
_af_prt
(n=1-3)
AF Agency or PMD - always converted to lowercase String 50
Attribution Contributor[n] touch time contributor[n]
_touch_time
(n=1-3)
AF Contributor touch time Date Time
Attribution Contributor[n] touch type contributor[n]
_touch_type
(n=1-3)
AF Possible values: click, impression Enum 10 char max
Attribution Conversion type conversion_type AF

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.

String
SKAN Conversion value skad_conversion
_value
iOS
  • Conversion value reported by iOS. Range 0-63.
  • If null, iOS didn't populate the field
Integer
Attribution Cost currency af_cost_currency Link 3-letter currency code (USD, EUR) that complies with ISO-4217. Default is USD. String 3 char
Attribution Cost model af_cost_model Link Cost model reported on the attribution link. CPC/CPI/CPM/Other. Currently, all cost is calculated according to CPI regardless of this value String 20
Attribution Cost value af_cost_value Link Amount of Cost Currency. 4 digits after the decimal point permitted. Example: 320.5095 String 20
Device location Country code country_code AF
  • Country Code using ISO 3166 (alpha-2). Example: US, CN.
  • The United Kingdom code implemented is UK, not GB.
Enum String 2
SKAN Creative ad_network
_creative
Ad network
  • Value is based on data enrichment received from the ad network.
  • For SKAN 3 the value is null.
String
Subscription CUIDs af_cuids AppsFlyer purchase SDK connector
  • In the context of ARS, this parameter contains an array with all CUIDs.
  • The array of CUIDs displays irrespective of the device IDs. Thus, the same CUIDs can display for more than one device ID.
 
Attribution Custom data custom_data SDK Data set by the advertiser in the SDK or by S2S and most often used for integration with third-parties, Audiences, and so on. See Android and iOS String 1024
Attribution Custom dimension custom
_dimension
SDK Reserved for AppsFlyer future use String
Device info Customer user ID customer
_user_id
SDK A unique app user ID, set by the app owner. String 100
Device info Deeplink URL deeplink_url SDK The path for an internal activity in the app that users are deep linked into. Use this for deep linking and deferred deep linking.
This contains the af_dp value on the attribution link
String 1024
Protect360 Detection date detection_date AF Date post-attribution fraud is detected. String 100
Device info Device category device_category SDK Possible values include: phone, tablet, other. String 20
Device info Device download Time device_download
_time
SDK App download completion time using the device's Android/iOS clock and converted to UTC. The value always displays as UTC time.
Format: yyyy-mm-dd hh:mm:ss.sss
Date Time
Device info Device ID type device_id_type SDK Populated for CTV with the CTV platform ID type. For example, RIDA for Roku. Enum 4
Device info Device model device_model SDK The commercial model name of the device. Example: xiaomi::Redmior iPhone7 String 100
Device info Device Type device_type SDK
  • The commercial model name of the device.
  • [Starting Feb 2, 2022, this field is no longer populated]
  • Instead of this field use Device model which is similarly populated.
  • Example:
    • Device model: xiaomi::Redmi Note 8
    • Device type: xiaomi-Redmi Note 8
    • Device model: iPhone7
    • Device type: iPhone 7
String 100
SKAN Did win skad_did_win iOS
  • Used to distinguish between campaigns contributing or attributed with the install.
  • If true, the campaign is attributed for bringing the install.
  • If false, the campaign is recognized as contributing to the install, but it isn't included in any SKAN dashboards or reports.
  • If null, iOS didn't populate the field due to a legacy iOS or SKAdNetwork version.
Boolean
IAP
Subscription
Discount ID af_discount_id AppsFlyer purchase SDK connector The offer ID presented to the user during the initial purchase. The ID is populated only when there is a discount code.  
Subscription Discount type af_discount_type AppsFlyer purchase SDK connector The discount type redeemed by the user. Possible values:
  • IOS:
    • introductory
    • subscription
  • Android:
    • intro price
    • one_time_code
    • vanity_code
 
Device location DMA dma AF Designated Market Area or geographic areas. Defined by the Nielsen company. Determining user location. String 10
IAP
Subscription
Environment af_environment AppsFlyer purchase SDK connector The environment from which data is received, either production or sandbox.  
Attribution Engagement type engagement_type AF Possible values: preload, click_to_download, click_to_app, engaged_click, engaged_view, view, listening Enum 18 char max
Event Event hour event_time Postback Event time rounded down to the nearest hour Date Time
Event Event name event_name AF/SDK
  • The attribution event type or the in-app event name sent by the app. Example attribution event types: install, re-engagement, and so on.
  • In Data Locker, in the context of retargeting reports, the event name is set as follows: retargeting means re-engagement, install means re-attribution. For SKAN reports, the in-app event name is as configured in AppsFlyer.
  • For the SKAN SRN report, this is the in-app event name as configured in Meta ads.
String 100
Event Event revenue event_revenue SDK
  • Value of revenue using Event Revenue Currency.
  • Amounts outside of the range $-10,000- $+10,000 (or equivalent) appear in raw data reports but not aggregate reports.
String 20
SKAN Event revenue event_revenue AF Formula: [sum of values for the specific event in USD]/[The number of events that happened on a specific day] Float
Event Event revenue currency event_revenue
_currency
SDK The event revenue currency code reported to the SDK. String 20
Event Event revenue selected currency event_revenue
_xxx
 
  • The amount of revenue. The currency will depend on the reporting tool used.
  • Preferred or selected means the app-specific currency set in the app settings.
  • Data Locker: always USD
  • Export page: selected currency
  • Pull API selectable: USD or selected using &currency=preferred.
  • Push API: always contains both fields, USD and selected currency
String 20
Event Event revenue USD event_revenue
_usd*
AF
  • The amount of revenue. The currency will depend on the reporting tool used.
  • Preferred or selected means the app-specific currency set in the app settings.
  • Data Locker: always USD
  • Export page: selected currency
  • Pull API selectable: USD or selected using &currency=preferred.
  • Push API: always contains both fields, USD and selected currency
String 20
Attribution Event source event_source AF Either SDK or S2S Enum 3 char max
Event Event time event_time SDK Time the event occurred Date Time
Event Event type event_type AF/SDK The attribution event type. Example attribution event types: install, re-engagement, and so on. String 100
PBA event Event URL event_url Web SDK URL of the webpage where event occurred (equals Original URL in website visits) String
Event Event value event_value SDK Detailed event content sent from the SDK. Note: Don't send more than 1000 characters; they can be truncated. String 1000
SKAN Event value event_value S2S
  • Default value: null
  • Contains a string set by apps implementing custom decode or event sending by S2S.
  • Advertisers consume this in their systems. AppsFlyer doesn't make use of it.
String (JSON)
SKAN Fidelity type fidelity_type  
  • Differentiate between ad presentation options that affect attribution. Indicated using the values 0 and1 as follows:
    • View-though ads (0)
    • StoreKit-rendered ads (1)
    • Disregard the field value if the SKAN version is before 2.2
Integer
SKAN Fidelity type skad_fidelity
_type
iOS
  • Differentiate between ad presentation options that affect attribution. Indicated using the values 0 and 1 as follows:
    • View-though ads (0)
    • StoreKit-rendered ads (1)
    • Disregard the field value if the SKAN version is before 2.2. Field is added to reports but won't necessarily be populated
Integer
Protect360 Fraud reason fraud_reason AF Protect360: See blocked reason. String 100
Protect360 Fraud sub reason fraud_sub
_reason
AF Protect360: See blocked sub reason. String 100
Attribution Google Play broadcast referrer gp_broadcast
_referrer
Google Play store Google Play Broadcast Referrer String 1024
Attribution Google Play click time gp_click_time Google Play field
  • Time of app page load in Google Play after an ad click.
  • Time source: Google API
  • Available from Android SDK version 4.8.5
  • Example: Compare install_time to gp_click_time. This gives an insight into how much time passes between app downloads until the user opens it.
Timestamp
Attribution Google Play install begin time gp_install_begin Google Play store
  • The time that installation begins
  • Time source: Google API
  • Available from Android SDK V4.8.5
Timestamp
Attribution Google Play referrer gp_referrer Google Play store
  • The referrer URL of the installed package.
  • Available from Android SDK V4.8.5
String 1024
Attribution HTTP referrer http_referrer AF Identifies the address of the webpage that linked to the AppsFlyer click URL. By checking the referrer, you can see where the request originated. String 10,000 char max
Device info IDFA idfa SDK User resettable advertising ID found on iOS devices. If IDFA is not available it's typically populated with Zeros. 40 char max
Device info IDFV idfv SDK Vendor ID provided by iOS 40 char max
Device info IMEI imei SDK Permanent device ID 14 char max
Ad revenue Impressions impressions Ad revenue API Number of times that the user saw the ad String 1024
Attribution Install App Store install_app_store SDK The Android store where the app was downloaded from (details) String 50
SKAN Install date install_date iOS Estimated by AppsFlyer based on the postback arrival time. Time string
Attribution Install time install_time Postback
  • UA: First launch after install.
  • Retargeting: First launch after re-engagement/re-attribution
Date Time
SKAN Install type install_type iOS New installs String
SKAN Interval interval AF Activity window intervals. Integer
Device location IP ip AF IP address being IPV4 or IPV6. AppsFlyer uses the address to determine the user location. If needed, advertisers can mask the IP address from reports and postbacks. String
Protect360 Is organic is_organic AF Indication of whether the in-app event is associated with an organic install. String 100
Attribution Is primary attribution is_primary
_attribution
AF UA: True

Retargeting: During a re-engagement window, we attribute to both the original media source (before the re-engagement) and to the re-engagement media source. While the event is within the re-engagement window. The original media source will be FALSE (not primary attribution). The re-engagement media source will be TRUE.
More details
Enum 5 char max
Event Is receipt validated is_receipt
_validated
AF TRUE/FALSE/NULL when implemented in the SDK, empty otherwise Enum 5 char max
Attribution Is retargeting is_retargeting Link Enum 5 char bool
Attribution Keyword ID keyword_id Link Keyword ID returned by the ad network. This is the ID of the af_keyword. String 100
Attribution Keyword match type keyword_match
_type
AF
  • The keyword match type is provided by Google AdWords only.
  • Starting Feb 15, 2021, this field is no longer populated in regards to Apple Search Ads.
String 100
Attribution Keywords af_keywords Link Word(s) used in the user's online search. As reported by the ad network String 100
Device info Language language SDK Language (locale) reported by the device and set by the device OS. Usually has the form ll-DD. Where ll is the language and DD is the dialect. For example, en-ZA means English as used in South Africa. String 20
Device info Limit ad tracking is_lat SDK

Limit ad tracking (LAT):

  • iOS: Starting iOS 14 LAT is deprecated by Apple. Determine user privacy status using ATT. In this case disregard is_lat.
    Before iOS 14, if true, IDFA is not available and is set to 0.
  • Android: When true, the user has opted-out of interest-based ads. GAID will not collect data and will instead display zeroes.
Enum 5 char boolean
Attribution Match type match_type AF

Attribution method type. Possible values include:

String 50
SKAN Max event counter max_event
_counter
AF To determine the number of times a user performs a given in-app event use the formula: [round up (min_event_counter + max_event_counter) / 2]. Note! You must round up the nearest integer.
Example:
A. If min = 0 and max = 1 the average is 0.5; rounding up returns a result of 1.
B. If min = 5 and max = 10, the average is 7.5; rounding up returns a result of 8.
Integer
SKAN Max revenue max_revenue AF Revenue is always provided in the field skad_revenue. If you use SKAN 4 or Custom mode, the bucket range associated with the event and used to calculate skad_revenue is described by min_revenue and max_revenue. Real number
SKAN Max time post-install max_time
_post_install
AF
  • In Custom conversion: AppsFlyer calculates install time as the postback arrival time - 36h - average (min_time_post_install + max_time_post_install). However, if CV=0 then average (min_time_post_install + max_time_post_install) is regarded as 0.
  • In Decode conversion: The min_time_post_install is one hour less than that set in max_time_post_install which is equal to hours_from_install set by you in your Decode conversion mapping.
Integer
PBA attribution Media channel media_channel Web SDK Media channel attributed to the website visit String
Attribution Media source media_source Link The media source attributed to an event or restricted String 50
Ad revenue Mediation network mediation
_network
Ad revenue API Ad revenue mediation network reporting the event to AppsFlyer String 1024
SKAN Min event count min_event
_counter
AF Use to calculate the number of times a user performs an event. To determine the number of times a user performs a given in-app event use the formula: [round up (min_event_counter + max_event_counter) / 2] . Note! You must round up the nearest integer.
Example:
A. If min = 0 and max = 1 the average is 0.5; rounding up returns a result of 1.
B. If min = 5 and max = 10, the average is 7.5; rounding up returns a result of 8.
Integer
SKAN Min revenue min_revenue AF Revenue is always provided in the field skad_revenue. If you use SKAN 4 or Custom mode, the bucket range associated with the event and used to calculate skad_revenue is described by min_revenue and max_revenue. Real number
SKAN Min time post-install min_time
_post_install
AF
  • In Custom conversion: AppsFlyer calculates install time as the postback arrival time - 36h - average (min_time_post_install + max_time_post_install). However, if CV=0 then average (min_time_post_install + max_time_post_install) is regarded as 0.
  • In Decode conversion: The min_time_post_install is one hour less than that set in max_time_post_install which is equal to hours_from_install set by you in your Decode conversion mapping.
Integer
Ad revenue Monetization network monetization
_network
Ad revenue API Ad revenue network sending the ad String 1024
IAP
Subscription
Net revenue af_net_revenue True Revenue API Net revenue calculated based on all factored reasons. See af_net_revenue_factors.  
IAP
Subscription
Net revenue country af_net_revenue
_country
True Revenue API
  • Two-letter ISO country code for which the tax is applied.
  • Example: GB
 
IAP
Subscription
Net revenue factors af_net_revenue
_factors
True Revenue API
  • An array representing all factored reasons that produce the reported af_net_revenue amount.
  • Example value: store_commission
 
IAP
Subscription
Net revenue postal code af_net_revenue
_postal_code
True Revenue API
  • String of letters and/or numbers
  • Example: L4J8E3
 
IAP
Subscription
Net revenue subdivision af_net_revenue
_subdivision
True Revenue API
  • For some countries, there can be an additional state/subdivision. This is handled according to ISO 3166-2 subdivision codes.
  • Includes the country code and subdivision code.
  • Example: US-CA
 
IAP
Subscription
Net revenue tax exclusive af_net_revenue
_tax_exclusive
True Revenue API
  • Boolean parameter, either true or false.
  • False means tax is included in the overall revenue.
  • True means tax is in addition to the overall stated revenue. For example, in the USA or Canada, where the sticker price doesn't include sales tax.
 
IAP
Subscription
Net revenue tax name af_net_revenue
_tax_name
True Revenue API
  • Name appearing in the customer invoice that describes the specific type of tax.
  • Example: Sales, VAT, GST
 
IAP
Subscription
Net revenue tax rate af_net_revenue
_tax_rate
True Revenue API
  • Number up to 4 decimal places representing the tax percentage collected.
  • Example: 7.25
 
Attribution Network account ID network
_account_id
Link Advertiser account ID with the ad network String 100
Device info OAID oaid SDK User-resettable ID on some Android devices usually as an alternative to GAID 40 char max
Device info Operator operator SDK The name of the mobile operator derived from the SIM MCCMNC. Available if the user is registered to the network using Android getNetworkOperatorName() String 50
IAP
Subscription
Order ID af_order_id AppsFlyer purchase SDK connector
  • The order ID for the transaction
  • Android only
 
IAP
Subscription
Original transaction ID af_original
_transaction_id
AppsFlyer purchase SDK connector
  • The original transaction ID
  • iOS only
 
Attribution Original URL original_url Link
  • UA: Click/impression URL used. If the link is a Branded Link: the field is populated using the branded link.
  • Retargeting: contains one of the following: Retargeting link, deep linking data, empty for SRNs.
String 10,000 (URL)
Device info OS version os_version SDK Device operating system version String 8
Attribution Partner af_prt Link Agency identifier. For SKAN, may not be populated String
Ad revenue Placement placement Ad revenue API Where in the app the ad is displayed String 1024
Device info Platform platform SDK Device platform: iOS, Android, or Windows Mobile Enum string 12
Device location Postal code postal_code AF Using the device IP address reported by the SDK. For SKAN, starting August 30, 2021, always null String 10 char max
SKAN Postback sequence index skad_postback
_sequence_index
iOS
  • Value represents the SKAN window, either 0,1, or2.
  • For SKAN 3 the value is 0
Integer
IAP
Subscription
Product ID af_product_id AppsFlyer purchase SDK connector The subscription product ID  
IAP
Subscription
Purchase date af_purchase
_date_ms
AppsFlyer purchase SDK connector The purchase date for the reported product ID in-app event  
IAP Purchase state af_purchase_state AppsFlyer purchase SDK connector Possible values:
  • Purchased
  • Canceled
  • Pending
 
IAP
Subscription
Purchase token af_purchase
_token
AppsFlyer purchase SDK connector
  • The purchase token for the transaction
  • Android only
 
PBA Query params query_params Link

Query params on the redirecting URL (after the ?)
Example: https://www.brandpitt.com/signin?utm_source=Google
&utm_term=shoes
&utm_campaign=cool
&c=summer
&af_siteid=publisher
&af_sub1=helloworld
&af_keyword=shoes

If URL has no query params, the value will be null

String
IAP
Subscription
Reason af_reason AppsFlyer purchase SDK connector

In cancelation or churn-related events, the reason a user churned or canceled. Possible values:

  • iOS:
    • cancel_intent
    • billing_issue
    • declined_price_increase
    • product_unavailable
  • Android:
    • I don't use this service enough
    • Technical issues
    • Cost-related reasons
    • I found a better app
    • Other
  • In subscription resumed events, the reason a user resumed their subscription. Possible values:Android:paused and resumed
    disabled and enabled auto-renew
  • In refund-related events, the reason why the user received a refund. Possible values:iOS:1: issue with your app
    0: another reason
 
SKAN Redownload skad
_redownload
iOS If true, the app was redownloaded Boolean
Attribution Reengagement window af_reengagement
_window
Link
  • Retargeting: The time period during which events are attributed to a retargeting campaign
  • Note: The field is not populated in retargeting campaigns.
String 3 char max
IAP
Subscription
Refund ransaction ID af_refunded
_transaction_ids
AppsFlyer purchase SDK connector
  • An array of all refunded transaction IDs
  • iOS only
 
Device location Region region AF Using the device IP address reported by the SDK. For SKAN, determined according to the country_code String 100
Protect360 Rejected reason rejected_reason AF Protect360: Deprecation planned. Currently contains the blocked reason. String 100
Protect360 Rejected reason value rejected
_reason_value
In Data Locker: validation
_reason_value
AF
  • Protect360: Displays the valid contributor (media source) for post-attribution hijacked installs/in-app events. Populated with either contributor[1-3] or organic.
  • In Data Locker, this displays as validation_reason_value.
String 100
Attribution Retargeting conversion type retargeting
_conversion_type
AF
  • UA: Re-install
  • Re-targeting: Re-engagement, Re-attribution
  • Deprecation planned: This field will be deprecated in the future. Use conversion_type and campaign_type to determine the context of the conversion.
Enum 14 char max
SKAN Revenue skad_revenue iOS Event revenue amount in USD. Float
App SDK version sdk_version SDK AppsFlyer SDK version String 8
Ad revenue Segment segment Ad revenue API Ad revenue ad segment name String 1024
Attribution Site ID af_siteid Link Publisher ID String 24
SKAN SKAN measurement window measurement
_window
AF Duration of the activity window. Default 24h. Integer
SKAN SKAN mode skad_mode AF The conversion measurement mode used to decode the iOS postback. Options:
  • custom_decode
  • revenue
  • events
  • skan4
  • custom_encode
  • engagement
String
SKAN SKAN transaction ID skad
_transaction_id
iOS Postback ID given by Apple String
SKAN SKAN version skad_version iOS SKAN version String
SKAN Source app ID ad_network
_source_app_id (1)
Ad network Publisher app ID reported by the ad network. Use to help reconcile cost; reported by the ad network. The basis for this data is provided by the publisher app. Field is added to reports but won't necessarily be populated String
SKAN Source app ID skad_source
_app_id
iOS
  • Site ID - the app publishing the ad.
  • Field population depends on privacy thresholds
String
SKAN Source domain skad_source
_domain
iOS
  • Value represents the source of attributable web ads.
  • For SKAN 3 the value is null.
String
SKAN Source identifier skad_source
_identifier
iOS
  • Value can be up to 4 digits.
  • For SKAN 3 the value isnull.
String
Device location State state AF Using the device IP address reported by the SDK String 100
IAP
Subscription
Store af_store AppsFlyer purchase SDK connector The app store the subscription product was purchased from  
IAP
Subscription
Store commission store_commission True Revenue API
  • The calculated percentage of commission the store gets from the purchased product.
  • Displayed as a decimal.
  • Example: 30
 
Attribution Store product page store_product
_page
AF Custom product page in the Android or Apple App Store(iOS 15+), to which the user was redirected. String 100
Device info Store reinstall store_reinstall SDK
  • Apple app store determines if a user brought by Apple Search Ads is a reinstall by using the Apple user ID:
  • New user: false
  • Reinstall by an existing user: true
Enum 5 char boolean
Attribution Sub param [n] af_sub[n] (n=1-5) Link Parameter populated by the advertiser in the attribution link String 100
Attribution Sub site ID af_sub_siteid Link Sub-publisher ID String 50
Subscription Subscription expiration date af_expires
_date_ms
  The expiration date of the current subscription billing cycle  
Subscription Subscription ownership type af_subscription
_ownership_type
AppsFlyer purchase SDK connector FAMILY_SHARED means the user has access via family sharing. PURCHASED means the paying user made the purchase.  
Subscription Subscription period type af_period_type AppsFlyer purchase SDK connector
  • Subscription or trial period type.
  • Possible values: trial, intro, normal
 
SKAN Timestamp timestamp Ad network Time the postback was received by AppsFlyer
For Google Ads and Meta ads, this is the time AppsFlyer gets the data from the Google and Meta ads API, respectively.
Timestamp
IAP
Subscription
Transaction ID af_transaction_id AppsFlyer purchase SDK connector
  • The ID of the transaction
  • iOS only
 
Device info User agent user_agent Link The URL/device user agent String 1024
Device info WIFI wifi SDK Set to either TRUE or FALSE Enum 5 char boolean
IAP   af_cancelation
_date_ms
AppsFlyer purchase SDK connector Date of the cancelation  
SKAN   did_win iOS
  • Used to distinguish between campaigns contributing or attributed with the install.
  • If true, the campaign is attributed for bringing the install.
  • If false, the campaign is recognized as contributing to the install, but it isn't included in any SKAN dashboards or reports.
  • If null, iOS didn't populate the field due to a legacy iOS or SKAdNetwork version.
Boolean
SKAN   event_uuid AF A unique random identifier enabling partners to identify duplicate postbacks String
SKAN   source_app_id AF Site ID. The app publishing the ad. This field is identical to skad_source_app_id String