使用AppsFlyer SDK获取转化数据——再营销

概要:本文介绍了SRN和非SRN用户链路中的再归因和再互动在转化数据中的呈现方式。

再营销转化

再营销转化分为再归因和再互动两种类型。

 提示

某些情况下,您可能无法通过再营销转化数据明确地判断转化类型,具体请参考其他的转化数据来源说明。

SRN带来的再归因

如果某个用户通过SRN完成了再归因,其转化数据的有效信息(payload)中不会说明该流量来自再营销广告。这是因为SRN不使用归因链接,因此无法在链接中设置is_retargeting=true参数。对于支持再营销的SRN,AppsFlyer会判断是否将相关用户记录为再归因流量。

这种情况下,AppsFlyer无法在SDK层级确定某个激活是否来自再营销广告,只能通过广告系列名称来识别再营销广告带来的流量。

 注意事项

即使您在广告系列名称中标识出再营销也无法确保一定能识别出再营销广告。详情请见示例部分的说明。

常规广告平台带来的再归因

非SRN广告平台的归因一般通过归因链接完成。不论您通过常规归因链接还是OneLink投放再营销广告,其链接中总是包含is_retargeting=true参数。

Criteo上的再营销广告

归因链接

https://app.appsflyer.com/id1234567895?pid=criteo_int&af_click_lookback=30d&
  c=campaign_name&is_retargeting=true&redirect=false&idfa=68**********************************
  &af_reengagement_window=30d

转化数据有效信息(payload)

{
      "adgroup": null,
      "campaign": "campaign_name",
      "media_source": "criteo_int",
      "retargeting_conversion_type": "re-attribution",
      "adset_id": null,
      "campaign_id": null,
      "af_reengagement_window": "30d",
      "install_time": "2018-12-01 23:13:03.126",
      "adgroup_id": null,
      "redirect": "false",
      "af_sub5": null,
      "click_time": "2018-11-18 20:02:31.559",
      "agency": null,
      "cost_cents_USD": "0",
      "is_retargeting": "true",
      "af_cpi": null,
      "af_click_lookback": "30d",
      "af_siteid": null,
      "idfa": "68**********************************",
      "http_referrer": null,
      "orig_cost": "0.0",
      "af_sub4": null,
      "adset": null,
      "af_sub1": null,
      "af_sub3": null,
      "af_sub2": null,
      "af_status": "Non-organic"
  }
  • retargeting_conversion_type参数——该参数用于说明再营销转化的类型。可能出现的参数值为re-attribution(再归因)、re-engagement(再互动)或none(无)。
  • is_retargeting: true参数——该参数用于标识相关激活是否为再归因。
  • af_reengagement_window:用于说明再互动归因窗口期。用户与再营销广告互动后,仅在该窗口期所限定的天数内发生的事件才能归因为再互动。当转化类型为再归因时,可忽略该参数。

延迟深度链接带来的再归因

您可能经常需要为再归因(即卸载后重新安装相关应用)的用户部署深度链接。假设您为了召回已卸载的流失用户而投放广告,在广告中推广某个产品或服务,并让用户在重新安装并打开应用后直接进入该产品或服务的页面。

用于实现这种场景的技术叫做“延迟深度链接”(Deferred Deep Linking)。您可以使用onConversionDataSuccess方法来获取延迟深度链接的转化数据payload。

在SRN中使用延迟深度链接

SRN广告中设定的深度链接参数在SRN之外不可用,其中包括含有应用内scheme路径的af_dp参数。因此,如需在SRN广告中使用延迟深度链接,您必须在其中添加额外的逻辑。您可以使用onConversionSuccess响应中的数据,如广告系列、广告组(adset、adgroup)等,以程序化的方式实现用户跳转。

Meta ads中延迟深度链接的转化数据

Android iOS
{
     "adset":"Adidas Running Shoes Women",
       "adgroup": null,
     "campaign_id":"6**********",
     "af_status":"Non-organic",
     "retargeting_conversion_type": "none",
     "agency":null,
     "af_sub3":null,
     "af_siteid":null,
     "adset_id":"6**********",
     "is_fb":true,
     "is_first_launch":true,
     "click_time":"2017-07-18 12:55:05",
     "iscache":false,
     "ad_id":"6**********",
     "af_sub1":null,
     "campaign":"running shoes summer collection",
     "is_paid":true,
     "af_sub4":null,
     "adgroup_id":"6**********",
     "is_mobile_data_terms_signed":true,
     "af_channel":"Facebook",
     "af_sub5":null,
     "media_source":"Meta ads",
     "install_time":"2017-07-19 08:06:56.189",
     "af_sub2":null
  }

您可以使用getConversionData响应中的数据,如广告系列、广告组等,以程序化的方式为用户实现跳转,并向其展示相关内容。

 示例

假设您有一个运动服装类电商应用。有一个未安装该应用的用户与某个广告互动后激活了应用。在应用首次启动时,SDK会返回相应的转化数据。开发人员让该应用打开店铺中的夏季跑鞋系列页面(与广告系列对应),并展示女士跑鞋类别(与广告组对应)。

通过归因链接实现延迟深度链接

深度链接的实现方式共有以下三种:

URI scheme

在归因链接和OneLink中使用URI scheme时,相关归因链接和payload如下:

归因链接

http://app.appsflyer.com/com.appsflyer.nivisampleapp?pid=media_source_name
  &c=campaign_name&af_dp=superapp%3A%2F%2deeplink-activity

OneLink

// short OneLink
  https://dhba.onelink.me/2rAD/71ba577e
  
  //long OneLink
  https://dhba.onelink.me/2rAD?pid=media_source_name&c=campaign_name
  &is_retargeting=true&af_dp=superapp%3A%2F%2deeplink-activity
  

payload

{
      "af_deeplink": true,
      "campaign": "campaign_name",
      "media_source": "media_source_name",
      "retargeting_conversion_type": "none",
      "adset_id": null,
      "campaign_id": null,
      "orig_cost": "0.0",
      "click_time": "2018-12-30 23:59:09",
      "install_time": "2018-12-30 23:59:39.330",
      "agency": null,
      "cost_cents_USD": "0",
      "adset": "AD_SET_NAME",
      "ad_id": "AD_ID",
      "af_siteid": null,
      "http_referrer": null,
      "af_cpi": null,
      "af_sub5": null,
      "af_sub4": null,
      "af_sub1": null,
      "af_sub3": null,
      "af_sub2": null,
      "af_status": "Non-organic",
      "scheme": "superapp",
      "host": "deeplink_activity"
  }
  • af_deeplink: true——出现该参数且参数值为true时,请查看schemehost字段
  • schemehost——这两个字段来自归因链接中的af_dp参数,用于说明相关scheme以及通过深度链接向用户展示的页面

iOS Universal Link和安卓App Link

这两种方式也可以实现深度链接。

使用Universal Link或App Link时,相关的OneLink和payload如下:

OneLink

// short OneLink
  https://dhba.onelink.me/2rAD/71ba577e
  
  //long OneLink
  https://dhba.onelink.me/2rAD?pid=media_source_name&c=campaign_name
  &is_retargeting=true
  

payload

{
      "install_time": "2019-01-08 16:24:49.853",
      "cost_cents_USD": "0",
      "campaign": "campaign_name",
      "retargeting_conversion_type": "none",
      "is_first_launch": true,
      "click_time": "2019-01-08 16:24:14.322",
      "af_click_lookback": "7d",
      "orig_cost": "0.0",
      "af_status": "Non-organic",
      "iscache": "true",
      "shortlink": "71ba577e",
      "media_source": "media_source_name",
      "is_retargeting": true
  }
  • shortlink字段——该字段用于说明带来用户的具体OneLink。开发人员可基于此信息确定应用打开后跳转的页面和展示的内容。campaign等其他字段也具有此用途。

     注意事项!

    使用OneLink长链时,payload中不会出现shortlink字段。

    不管您使用长链还是短链,都建议您添加一个自定义参数来说明相关的跳转内容,例如:&deep_link_activity=shoes_cateogry

 注意

只有在OneLink场景中才能使用Universal Link和App Link。

SRN带来的再互动

与再归因相同,当用户通过SRN上的广告再次打开应用(即完成再互动)时,转化数据无法体现该流量是否来自再互动广告。如需解决此问题,您可以在广告系列名称中标识出再互动广告类型。

常规广告平台带来的再互动

在该场景中,转化数据有效信息也无法体现出该流量是否来自再归因广告。如需解决此问题,您可以在广告系列名称中标识出再互动广告类型。

深度链接带来的再互动

大部分的再互动广告会让用户跳转到应用中的某个具体页面。举例来说,假设您投放广告宣传某个商品或优惠活动,并希望点击广告的用户能直接进入应用中与该商品或活动相关的页面。

这时您就要用到深度链接。开发人员需要根据深度链接中的转化数据定制用户体验,并将用户引导到对应的页面。

再互动:在SRN中使用深度链接

来自SRN的再互动用户没有可用的转化数据。开发人员需要使用相关SRN提供的方法在应用打开时获取转化数据。

再互动:在广告平台中使用深度链接

沉睡用户被唤醒并打开应用时,您可以通过onAppOpenAttribution方法获取以下转化数据:

在iOS和安卓平台上使用OneLink短链时,转化数据是链接中所有参数的结构化映射:

比如

{
     af_dp: "superapp://Deeplink",
     pid: "media_source_name"
     c: "campaign_name",
     link: "https://abcd.onelink.me/12ab/12ab34c"
     is_retargeting: true
  }
  • 应用开发人员可以根据af_dp和广告系列名称等参数将用户引导到应用内的具体页面并向其展示相关内容。

 注意事项!

建议使用OneLink短链。详情请见此文档

建议使用OneLink短链的另一个原因是长链返回的转化数据结构较为复杂。使用长链时,转化数据仅通过一个link字段进行映射,该字段中包含整条OneLink长链。

{
     "link": "https://abcd.onelink.me/12ab?pid=media_source&c=campaign_name&is_retargeting=true&af_dp=superapp%3A%2F%2FDeepLink"
  }
  

转化数据的其他来源

  • Push API可提供详细的转化数据payload,其中会标识出再归因和再互动。Push API的payload中包含re_targeting_conversion_type字段,该字段可说明转化类型,即再归因或再互动。详情请见Push API指南
  • 原始数据报告也会标识出转化类型。再营销转化的原始数据报告中包含Event Name(事件名称)字段,该字段中可能出现的值为re-engagement(再互动)或re-attribution (再归因),用于说明转化类型。

用户获取与再归因混合场景

示例

  1. 某个用户激活您的应用后将其卸载。其激活行为触发了再归因窗口期。您在Meta ads上投放拉新广告(非再营销广告),同时在AppsFlyer后台的Meta ads对接中启用再营销衡量。

    该用户在再归因窗口期内看到并点击该广告,随后重新安装并激活了您的应用。AppsFlyer会将其记录为一次再归因。

    该归因结果基于以下两个因素得出:
      1. Meta ads对接中启用了再营销
      2. 用户仍处于再归因窗口期内

    在该场景中,广告系列名称中并未标识出再营销。
  2. 沿用以上示例,但这次假设该用户在再归因窗口期之后点击广告并重新激活应用。这时AppsFlyer会将其记录为一次新增非自然激活。
  3. 再以另外一种场景为例,假设您在Meta ads上投放了再营销广告,一部分从未安装过应用的用户与该广告互动后激活了应用。AppsFlyer不会将这些用户记录为再归因,而是将其视为来自拉新广告的用户。