# A Guide to Your Mobile Measurement Partner’s iOS 14 SKAdNetwork Changes

- Link: https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/
- Published: 2021-03-25T09:23:45+01:00
- Author: Natalie Rozenblat & Kevin Bravo

_⌊A Guide to Your Mobile Measurement Partner’s iOS 14 SKAdNetwork Changes⌉⌊A Guide
to Your Mobile Measurement Partner’s iOS 14 SKAdNetwork Changes⌉This post has been
written using the latest MMP and ad network documentation as of March 25, 2021. 
If there are more recent updates that make some of the information invalid, please
share with _[_kevin@2ndpotion.com_](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/keving@2ndpotion.com)_
and _[_natalie.rozenblat@phiture.com_](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/natalie.rozenblat@phiture.com)_._

Doomsday is quickly approaching. SKAdNetwork has already started to reduce our granularity
beyond the campaign level. A lot of advertisers have started to see the impact on
Facebook with historical Return On Ad Spend (ROAS) nullified, where they’re left
to [compare attribution windows. ](https://www.facebook.com/business/help/395050428485124?id=428636648170202)
In some cases, advertisers are seeing ROAS deteriorate as the attribution window
changes from 28D click/view to 7D click/1D view or 1D click/1D view (in Automated
App Ad or “AAA” campaigns). And to bring tensions to a head, from early spring 2021,
Apple will force developers to show users the [App Tracking Transparency](https://developer.apple.com/documentation/apptrackingtransparency)(
ATT) prompt in order to collect their data.

In this post, we take a deep dive into the solutions offered by mobile measurement
partners (MMPs) such as [AppsFlyer](https://www.appsflyer.com/), [Adjust](https://www.adjust.com/),
[Branch](https://branch.io/), [Singular](https://www.singular.net/), [Kochava](https://www.kochava.com/),
and [Tenjin](https://www.tenjin.io/). We cover conversion value models, SKAN dashboards,
and technical implementation guides for developers and marketers, and finish off
with an impact summary across all the major ad networks such as Google, Facebook,
Snapchat, TikTok, and Apple Search Ads. 

Don’t have an MMP? Kevin Bravo says no problem, as he is working on a solution to
SKAN and ad network software development kits (SDK) with custom call methods. Stay
tuned!

Table of Contents

 * [MMP overview ](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/#mmp_overview)
 * [Adjust](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/#adjust)
 * [AppsFlyer](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/#appsflyer)
 * [Branch](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/#branch)
 * [Kochava](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/#kochava)
 * [Singular](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/#singular)
 * [Tenjin](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/#tenjin)
 * [Summary of all MMP changes ](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/#summary_of_all_mmp_changes)
 * [Summary of ad network changes](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/#summary_of_ad_network_changes)

## **MMP overview **

While there are differences between the capabilities of each MMP, at the very least,
they all support reporting for iOS 14.5 users through SKAN with a conversion value
model. Some MMP’s have multiple models to choose from. You can only select one at
a time, but what’s nice is that you can archive an existing model and switch to 
testing a new one at any point. Our recommendation to clients has been to test either
the conversion value or revenue model (depending on data level need and KPI) and
then test the other models.

![MMP Table updated](https://phiture.com/wp-content/uploads/2021/03/Screen-Shot-
2021-03-25-at-14.47.22-min.png)

_Note that the table above and MMP order listed below are organized solely in alphabetical
order and are not ranked based on the quality of service. _

*This is not possible for all MMPs, but bit strategy refers to splitting the single
field of conversion values into different parts so you can measure different KPIs
within one field. 6 bit and 0-63 conversion is the same thing and is interchangeable.
Your team can configure bits in any way you choose, but the limitation is 6 bits.
If this is the route you choose, plan accordingly with marketing, product, and analytics
teams. You can also keep your MMP support team in the loop for guidance. Learn more
about the conversion timer and bit strategy on [QuantMar](https://quantmar.com/715/How-does-the-conversion-value-timer-logic-work-skadnetwork).

## **Adjust**

As of late February 2021, Adjust was still running a SKAN beta, so you’ll have to
request for it to be enabled. Adjust offers the conversion value model, which allows
you to track up to 6 events of your choice. More details can be found [here](https://help.adjust.com/en/article/skadnetwork-settings).
SKADNetwork data will be available in the Adjust Data Canvas, which is a new type
of dashboard that serves as a pivot table/graph builder. You’ll be able to analyze
the event count for each of the conversion events you pick (the count, in this case,
= unique users triggering each event at least once), in addition to some key metrics
like impressions, CPM, CTR, etc. that are provided by each network.

## ⌊New Data Set Dashboard⌉⌊New Data Set Dashboard⌉

## ⌊New Widget Dashboard⌉⌊New Widget Dashboard⌉

## **AppsFlyer**

Appsflyer offers 3 different approaches to conversion value management that you 
can choose from and change from time to time. 

 1. **Revenue: **Revenue generated by users
 2.  * Considerations: 
        - Can only be tracked for early purchases (24~72 hours), so can’t account for
          purchases occurring later in the life cycle. Therefore, it may become difficult
          to set up exploratory market tests (i.e., setting up a test in country A 
          to assess ROI) if there aren’t enough substantial events coming through per
          week. For instance, advertisers may experience challenges with Facebook App
          Event Optimization (AEO) purchase-optimized campaigns that have less than
          50 conversions per week. 
        - Revenue tracked from pre-defined factors: $0.01, $1.00, $10.00 (currency 
          translation is automatic)
 3. **Conversions: **Enables you to select up to 6 events of your choice
 4.  * Considerations: 
        - Only up to 6 events 
        - Impossible to measure revenue/user value based on events, so you’ll have 
          to create your own estimate based on historical average revenue per user (
          ARPU) or life-time value (LTV)
        - Similar to Adjust, there won’t be information available around the number
          of occurrences for each event
 5. **Engagement:** A number of times a specific in-app event occurred
 6.  * Considerations: 
        - Can only track one event, so it may work for an app-only optimizing off CPI
        - No granularity in user engagement

AppsFlyer is also working on a predictive LTV model. 

## **Branch**

Branch offers the conversion value model, which allows you to map all the 0 to 63
values to a specific event. This is considerably more limited than the 6-event approach
as you probably don’t have 63 events you can rank based on higher to lower intent.
You can also set it up manually in your app and send conversion values to Branch
using SKAN methods. By default, the Branch measurement period for SKAN is 72 hours.
You can overwrite it manually and define a custom measurement period specified in
the documentation [here](https://help.branch.io/using-branch/docs/branchskadnetwork-integration-instructions).

A preview of the Branch SKAN Overview below shows the capabilities that you will
have when tracking events per ad network. 

## ⌊Branch SKAdNetwork Overview⌉⌊Branch SKAdNetwork Overview⌉

## **Kochava**

Kochava offers 4 models to choose from: 

 * **Revenue: **Tracks the revenue generated by the user but has the same limitations
   as AppsFlyer
 * **Highest event completed** (aka the conversion model similar to AppsFlyer, Adjust,
   and Branch):
    - Especially useful if you have a lot of steps in your activation funnel and/
      or would like granular data on how far the user went (e.g., games with levels
      where purchase would still be the top event)
 * **Engagement:** A number of times a specific in-app event occurred but has the
   same limitations as AppsFlyer 
 * **Post-install user journey **(similar to Singular’s funnel model)
    - Great approach if you have “classic flows” or two distinct user experiences(
      e.g., marketplaces with people selling and buying) or perhaps a different 
      user persona that you want to track separately

What makes Kochava unique is that they’re using the first 3 bits for defining the
day of the conversion (days since install up to 7 days) as opposed to using all 
bits for conversion events, which gives marketers more reliable and timely install
data. The trade-off is that you will only know the last event users completed (highest
event in the funnel) rather than the occurrences of each event for a 6-bit approach.

If your app is funnel-based, (i.e. as users move down the funnel, they become more
valuable with each event they complete) then the Kochava (or Singular) approach 
is great. If a valuable user is defined by a combination of events for you, you 
may think it’s more limited than the 6-bit approach (where you can have event combinations).

## ⌊Kochava four conversion models⌉⌊Kochava four conversion models⌉

Read more about SKAN in Kochava’s documentation [here.](https://www.kochava.com/kochava-support-for-skadnetwork/)

## **Singular**

Singular offers 4 models to choose from: 

 * **Revenue: **Similar setup and limitations as AppsFlyer and Kochava

 * **Conversion: **Similar setup and limitations as AppsFlyer and Kochava

 * **Engagement: **Similar setup and limitations as AppsFlyer and Kochava
 * **Funnel model**: Aka a similar setup to the user journey model Kochava offers

Singular models are also dependent on what measurement period you define in the 
tool. Similar to Kochava, they let you use some of the available bits to get a better
understanding of when the installs actually occurred. The longer the measurement
period, the fewer bits you have available. We’d recommend considering how much time,
on average, users are taking to convert on a purchase, without being inactive for
more than a day. 

It’s a tricky analysis to do, but if you can understand, “on average my users take
3 days to go through the funnel and convert”, for example, you know your conversion
period can be 3 days. If you believe up to 7 days is necessary, then a 7-day measurement
period is also possible, but keep in mind that users will need to come back every
day during these 7 days for this to work, which is rarely the case.

![Singular four models for funnel](https://phiture.com/wp-content/uploads/2021/03/
image4-min-1.png)

Read more about [Singular’s conversion models](https://support.singular.net/hc/en-us/articles/360052605611#types_of_conversion_models)
to find out what’s best for your app. 

## **Tenjin**

Tenjin is testing a [closed beta of their iOS 14.5 attribution modeling](https://blog.tenjin.com/ios-14-5-measure-skadnetwork-conversion-values-for-free/)
and is offering the reports for free for all their customers.

Tenjin is not offering any server-side dashboard for conversion values management.
Instead, they let you handle the two methods (register & updateConversionValue) 
manually on the product-side. 

This is not limiting but will require you to define a conversion value table / logic
that is handled from the app. Additionally, this means that you’ll need to update
the app if you decide to do any change in the way you handle conversion values (
[Unless you build your custom server-side dashboard to handle conversion values](https://blog.tenjin.com/ios-14-mmp-free-publisher-guide/))

In theory, you can apply all the models (revenue / conversion / engagement) or build
a custom one with your own implementation. The same applies for measurement period,
you can set a custom one.

However, we’d recommend being cautious when building custom approaches as it may
impact the network’s capabilities in optimizing your campaigns and/or identifying
valuable cohorts. The best approach is to stick to “standard configuration” for 
now.

## ⌊Tenjin attribution modeling roadmap overview⌉⌊Tenjin attribution modeling roadmap overview⌉

## **Summary of all MMP changes**** **

All of the MMP’s support automated conversion values set up to 6-8 events. All of
them will also handle the SKAN in-app methods for you (registerAppForAdNetworkAttribution
and updateConversionValue). In this case, you’ll just need to track the events with
the MMP SDK and tell the MMP (on the dashboard side) which events you want to use
for your conversion model. 

The other models offered by MMPs can be interesting for some specific use cases,
but may not support the way you’d like to use the 6-bit conversion values available.
In this case, you can also continue using your MMP but set up a custom conversion
value model in your app (the last row in the MMP table). You’ll have to disable 
SKAdNetwork automatic support from the MMP and call the methods yourself. 

The benefit would be that you will have better control and flexibility in measuring
conversions, but it’s probably not the best approach to start with because of the
considerations below.

 * A custom approach** requires your own engineering and development team** for 
   implementation.
 * **Privacy thresholds** can be applied by Apple if they don’t have enough volume
   for a specific conversion value. For example, if there are 100 installs and only
   one user with a conversion value of 27, you won’t see this conversion value as
   Apple wants to uphold user privacy and prevent you from identifying this one 
   unique user.
 * **Some networks may not support your own custom model** or you may not be able
   to optimize your campaigns efficiently, or at all. For instance, Facebook is 
   recommending specific events to your app (see screenshot below). We’re assuming
   this is to help with algorithm and campaign optimizations, the same way the standard
   events worked in the past.

⌊Facebook Events Manager ways to configure Skadnetwork events⌉⌊Facebook Events Manager
ways to configure Skadnetwork events⌉

_Image source: _[_Configure Apple’s SKAdNetwork in Facebook Events Manager_](https://www.facebook.com/business/help/670955636925518)

## **Summary of ad network changes**

The main challenge across all ad networks will be data latency (of up to 3 days)
and misattribution between ad network UI and SKAN. In theory, however, since SKAN
has to confirm attribution with Apple before it posts back, only one ad network 
should be taking credit for a conversion. You can read more about data latency and
the IDFA match problem on [incrmntal](https://incrmntal.com/blog/the-post-idfa-match-problem)’
s blog. 

  |  **Channel** |  [**Facebook**](https://www.facebook.com/business/help/331612538028890?id=428636648170202) |  [**Google**](https://support.google.com/google-ads/answer/10307993) |  [**Snap**](https://businesshelp.snapchat.com/s/article/snap-ios14?language=en_US) |  [**TikTok**](https://ads.tiktok.com/help/article?aid=10000858) |  [**Apple**](https://developer.apple.com/documentation/adservices) |  
 |  **Campaign limitation** |  9 |  8 |  10 |  11 |  none |  
 |  **Ad group limitation per campaign** |  5 |  No limitations |  1 |  1 |  none |  
 |  **Event Tracking** |  8 |  8 |  8 |  8 |  unknown |  
 |  **ATT enforced?** |  Likely  |  No |  n/a yet |  n/a yet |  no |  
 |  **Attribution ** |  1-day click |  Likely 7-day click |  n/a yet |  n/a yet |   |

**Estimated impact of SKAN per channel **

While most of the ad networks take a hit on campaign limitations, attribution windows,
and loss of user-level data, the estimated impact of SKAN is high for paid social
channels like Facebook, Snap, TikTok, and for Google App Campaigns. Apple Search
Ads is the only channel expected to be least impacted by iOS 14 because of the solution
offered through [AdServices](https://developer.apple.com/documentation/adservices).

  |  **Channel** |  **Facebook** |  **Google** |  **Snap** |  **TikTok** |  **Apple** |  
 |  **Expected impact of SKAN** |  High |  High |  High |  High |  Low |

_This post has been written using the latest MMP and ad network documentation as
of March 25, 2021. If there are more recent updates that make some of the information
invalid, please share with _[_kevin@2ndpotion.com_](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/keving@2ndpotion.com)_
and _[_natalie.rozenblat@phiture.com_](https://phiture.com/mobilegrowthstack/a-guide-to-your-mobile-measurement-partners-ios-14-skadnetwork-changes/natalie.rozenblat@phiture.com)_._
