[Deprecated] Attributing TV ad campaigns

At a glance: Attribute mobile users to TV ads aired in specific locations and at specific times.


Support for TV attribution will be discontinued on March 1, 2023.

Attributing TV ad campaigns

Advertisers running install ads on TV can define the timeframe (in minutes) they want organic installs from a specific GEO or city (optional) to be attributed to a TV ad. These installs are attributed to the TV media source with the associated campaign details populated by the TV channel and the TV show name.

To set up TV attribution, advertisers should create a CSV file containing the exact details of the aired ads.

Alternately, advertisers can use the help of partners that enable TV attribution via their services.
To view the list of these AppsFlyer integrated partners, go to Integration > Integrated Partners. Select TV in the filter panel.

Post-install analytics are available in the same manner as for other media sources.

Attributed installs populate attribution fields as listed in the following table. 

Attribution field API name Populate with
Media source media_source TV (always)



Campaign name

Site ID af_siteid TV channel name. Example: ESPN
Sub Param 1 af_sub1 TV show name. Example: SportsCenter HD
Country country Country code
City city City name


Check out our comprehensive guide on OTT television to learn about advanced TV terminology, buying methods, content formats, how OTT attribution works

Setting up a TV campaign

AppsFlyer supports bulk upload of media plans using the TV attribution upload file having a CSV format according to the schema that follows. Example CSV file.

To upload the file, please contact your customer success manager.

TV schedule schema

  • File schema for TV schedule uploads.
  • Optional columns must be sent, but the fields could be left empty.
  • Avoid setting the same time slot for two separate campaigns of the same app.


Column name Mandatory Remarks Example
app_id Yes
  • Each file can be related to one app only. Don't send multiple app IDs in the same file.
  • Note that for TV campaigns targeting both Android and iOS users, you must send a separate file for each app platform.
com.example, id123456789
Campaign name No

Especially useful if you have several ad formats and wish to A/B test them.

10-sec teaser, full 30-sec
TV channel name No   CWTV
TV show name No   Arrow
Start date


  • Format: yyyy-mm-dd format
  • The time and date must be in the future
Start time


  • The starting hour for the TV attribution window. The time should be in 24h format in the UTC time zone.
    Required format: hh:mm
  • The time and date must be in the future
Attribution window Yes
  • TV attribution windows have a maximum duration of 180 minutes.
  • The TV campaign is attributed if the user launches the app for the first time during the attribution window.
Country code Yes 2 letter country code. List of country codes. US, CN
City name No City name as appears in the 

List of supported cities.
If this value remains empty in the CSV file, users from the entire country can be attributed to the TV campaign.



An ad on TV (or radio) can be Shazamed with the app, and the user who Shazams it is redirected to the market as if clicking on a specific URL. This URL may contain parameters to identify the specific ad, which can be reached via the conversion data.