Multi Source Attribution (MSA): weighting online and offline channels for a 360° Marketing Performance view
Thomas Handorf
?? Data for Growth | Data Analyst, Data Scientist, Web Analyst and Data Engineer | Founder & CEO of 9fwr.com Data Consultancy
Marketing Attribution today is generally based on tracking data. This approach is limited in that it can only consider parts of the customer journey that can be tracked, penalizing offline channels. Statistical models like media mix modeling exist but can't easily be combined. Coupon codes and surveys can help to shed light into offline channel attribution. This article describes an approach on how to statistically combine these with tracking data to get a holistic attribution across channels. The approach was successfully applied in a recent consulting project leading to a budget switch from search channels to influencer and offline channels.
Why we need new attribution models
In a recent consulting project we at 9 friendly white rabbits together with Klaus Giller from mrkt'in supported a D2C brand with a good mix of online and offline channels, including Search (Google Ads), Remarketing, Social Media, Influencers, Offline Events, Print and TV. Of course, also organic channels like Search or Word of mouth existed. While most online channels were performing well, especially paid search, they put big question marks on TV and print, simply because they had not enough reliable data. The goal was to build a "fair" attribution model across online and offline marketing channels.
Collecting the dots
To arrive at a model that includes offline channels a variety of methods were considered. They are summarized at the end in the APPENDIX. We chose to combine tracking, coupon and survey data as all of them provide transaction level data and were covering all channels.
We took Google Analytics as the source for tracking data. We chose Last Click Attribution here, though this framework would work with other models as well.
Our D2C customer had already been using using print coupon codes for a while so they already had some good understanding of print performance. This analysis, however, was not yet combined with the regular tracking-based performance reporting. As a result print transactions were counted for print and additionally counted for tracked channels like Google Ads which raised the question on how to discount this. The same was true for TV while the effects of other channels like offline events or word of mouth were unknown.
We set up a post purchase survey in their Shopify Shop asking buyers for the Top of Mind channel they remember as well as secondary channels they remember being in touch in the past. As the survey also captured the transaction ID we were able to compare the buyers answers with the corresponding tracking information.
In fact, survey data turned out to be quite different from tracking data. While some channels like "social media"(survey) and "facebook / instagram"(tracking) have a good overlap, data for Google Search is widely spread among different online and offline channels according to the survey. This of course can be expected, since every touchpoint that simply creates a remembrance in the users mind, will very likely lead to a future search. While this insight is already enlightening, we need to come up with something more systematic to arrive at an attribution model balancing all data sources.
Connecting the dots
The data from these 3 sources is not available for all transactions. We base our model on the data from orders which have a Google Analytics last click attribution as well as a filled in survey. This was the case for 15% of the orders. We will multiply the attributed orders by this "participation" factor (1 / 0.15) later to get an estimate about the real number of orders caused by a channel.
Also, we focus on performance evaluation here, therefore we group every organic channel into the single channel "Organic".
We combine all touchpoint data we know about a particular transaction into a single picture as shown below:
A particular customer journey, as for example the red arrow, will have different touchpoints known from different sources, as indicated by different background colors. We assign weights to each touchpoint. As we don't know whether the knowledge from the survey is more relevant than the data from tracking we assign a weight of 1 for each touchpoint. Only for the secondary touchpoints from the survey we assign 0.5 as the users already indicate that these are less important than the top of mind channel. Fractions of the transaction are now attributed to the different touchpoints using the weights as shown in the table in the picture.
The assignment of weight is definitely a factor that can be adapted in later applications. Also this model is not yet fully balancing offline and online channels. While Google Ads could become 100% attribution if the survey and last click says so, TV would only be able to get the survey touchpoint. On the other hand this is somewhat fair as TV needs another touchpoint like organic or paid search to come to the website.
Mapping to Marketing Channels
The problem with the above touchpoints is that they are not the marketing channels per se. Of course, the Google Analytics channels are usually configured to represent the marketing channels directly. However, the users that answer the survey are no marketing experts and wouldn't know what a channel like "Criteo" is. So we needed to ask for Channels that ring a bell with them. So terms like "Search Engine" will relate to organic and or / paid Google and / or Bing Search.
In order to map the answers of the survey to actual (paid) marketing channels we need a mapping defining how many of the transactions from a survey touchpoint will be accounted to a particular marketing channel. Not all touchpoints map to all channels. Print is mapping 100% to Print, TV to TV, but "Recommendation" may be organic but could also be a paid influencer.
The individual mapping weights are assigned in a hybrid way. First it is defined manually which touchpoint can map to which channel, e.g. "Social Media" can map to Facebook, Influencer and organic, but cannot map to Google Ads, etc. Within the group of mappable channels the weights are assigned proportional to the relative traffic numbers of these channels in Google Analytics.
As a result we assign fractions of each order to paid channels or "Organic" using the weights from the touchpoint mapping and the channel mapping. We end up having for each channel a number of assigned orders which add up to the number of all orders participating in the analysis (which were 15% of total orders). We multiply these numbers by the aforementioned participation factor to get an estimate for the total number of orders per channel in the time range of the analysis.
领英推荐
Assessing Channel Performance
Putting all things together we can now assess each channels performance, including online and offline channels. We determine cost per order (CPO) and return on ad spend (ROAS) and compare it to the existing values from the last click reporting.
The channels previously not considered in the last click analysis are taking it's share from Search and Organic (for the reasons mentioned before). Interestingly channels like Facebook and Influencer apparently have a larger impact in peoples minds than what can be tracked. The reason behind is most certainly that these channels hit users during the day on mobiles, while they do the purchase later without clicking on any links.
As a consequence, our customer thoroughly reviewed Google Ads campaigns, reducing budgets for campaigns with weaker CPOs. In turn, budgets for Influencer and Print were increased.
Takeaway
Traditional tracking based attribution modeling cannot capture the customer journey in full, due channels not digitally trackable, limited data retention for privacy reasons, or cross device usage. In particular for Brands with a relevant share of offline channels, taking user survey and coupon codes as an additional data source will improve attribution drastically. With the presented approach it is possible to reasonably combine these different data sources into a balanced 360° view of marketing channel performance, enabling Brands to steer and optimize their marketing initiatives more efficiently and avoid costly misinvestments into wrong channels.
APPENDIX
Sources of attribution data
Tracking data
If all customer touchpoints are online (e.g. view online ad ? click ? website ? onsite clicks ? online transaction), information about which ad was clicked can be transferred to the transaction using url parameters, cookies or similar methods. Obviously if the user sees an offline ad or only remembers the brand from an online ad to later google it at home, the attribution will fail. In fact, the transaction will most likely be attributed to some other online channel like "search" which will be the last online touchpoint before coming to the website. Also, if a users takes very long time to do the transaction, possibly even coming back several times across different devices, the attribution will most likely get lost.
Survey data
Placing a user survey after the online transaction asking for the channel the user came to the website will help closing the offline and cross-device gap of tracking data. Also here channel data can be directly attributed to an individual transaction. The data here may be affected by the user not remembering the channel, not being able to identify the channel or not knowing which channel was the most important for the decision when exposed to multiple channels.
Coupon data
Combining offline ads with coupon codes that users can enter at the transaction may help to attribute those to certain offline channels (assuming the codes are unique to the channel). Data may become biased if codes are shared on coupon platforms, though one could argue that attributing this to the original channel is fine. Also of course users may loose / forget the codes and / or have another code from a difference source which may introduce some noise to the data.
Media Mix Modeling
This is a statistical method, hence channels will not be attributed to individual transactions, but rather a certain number of transaction is attributed to each channel. The data needed for this is simply monthly / weekly data on how much was spent per channel and how many transactions happened in total per time period. Data about reach (instead of spend) and about seasonality / organic base levels can be included in such models. In a simple form this data is fit by a linear model using linear regression
T(t)=a1*C1(t)+a2*C2(t)+other_terms(t)
with T being the transactions and Ci the spends/reaches per time period.
The issue is that this method need a lot of variation in T(t) and Ci(T) in order to yield meaningful results which is very often not given and usually not feasible to artificially produce in live campaigns. Also the effects of the spend changes may be delayed differently per channel (brand vs performance) which may interfere with the modeling approach.
Lift Analysis / TV Tracking data
The lift analysis tries to explicitly disturb (switch on or off) a channel at a specific point in time and then assume that the following change in the number of transactions is directly affected by that channel.
TV tracking is one example of this. Here the transmission times of TV ads are known quite exactly. Within a short windows of time (5-10min) after the airing a peak is measured in comparison to the base level before and after the window. The amount of users above the base level are believed to be caused by the ad. Now all users in the window are marked (using cookies) and when these users eventually purchase, these transactions are attributed to TV with a factor of peak-level divided by base-level as measured before.
Head of Analytics at MarketingLens | BigQuery guy
1 年Great analysis with a lot of good ideas along the way. How would (or does) this include display advertising? One of the biggest problems we find with attribution is the lack of user-level impression data. Yes some might click, but click volumes will heavily underrepresent display as usually people will just see/watch those without acting on them. In essence it behaves similarly to the TV, except that there are no "surges" (TV ad is aired for everyone at the same time). You might be seeing hundreds of display ads and/or videos which will influence your purchase decisions, and this is the missing bit generally.
Data | Science | AI Solutions
1 年A first-touch model would have mostly solved the mis-attribution between Google and Facebook, wouldn't it?
CEO at CND - High Performance TV-Tracking
1 年Thanks for this inspiring post on one of the basic questions of marketing: where to invest how much of my budget? It's worth the effort to overcome the weaknesses of purely online tracking or purely business math based attribution models. Nevertheless, I can well imagine that the weighting remains very demanding.
Thanks for sharing. What I particularly like about your approach is the understanding that all individual approaches have their own flaws and limitations. Your model attempts to bring them together for a more rounded view of attribution.
Actionable insights.
1 年I'd like to understand better how quickly post purchase surveys can be rolled out and/or react to changes in features/branding/etc. How long did you let the post purchase survey run for? Or what percentage of orders do you feel you need in order for the results to be usable? And how many customers filled out the survey?