Overview of the multi-touch attribution algorithms
The customer journey is made of many web sessions, coming from different channels (Google Ads, Email…), over many devices (phone, desktop…) and sometimes visits from physical stores.
“Multi-touch attribution” aims to record all the steps made by the customer, and attribute the impact of each step on the revenue.
The challenge is big, as we know nothing about anonymous visitors, and the customer journey is split between:
Multi-touch attribution is mandatory to:
Measuring website traffic is done by using a Javascript SDK with a combination of 1st-party cookies to avoid counting people twice.
However, recent version of web browsers now implement restrictions over the lifespan of cookies, Apple Safari cookies are now limited to 7 days.
The challenge is to stitch data with cross-channels, cross-device and cross-domain limitations… by respecting the GDPR, CCPA and other privacy laws.
A “channel” here represents a source of online traffic (Google Ads, a referrer, Facebook Ads…).
When a visitor lands on your website from Google Ads, the Javascript code stores a unique ID in a cookie to remember him when he will come back from another source of traffic. If one day he becomes a customer, we will be able to compute the impact of all the marketing efforts that led to this conversion.
Nothing new here.
For anonymous visitors we just can’t legally stitch “identities” together, as we need their consent to do so, and apply non-deterministic (=non-reliable) methods like IP address matching.
But what is relevant to us, is to attribute conversions (=an order), and a conversion means : the user is authenticated.
We will stitch devices together thanks to the user ID
of the authenticated customer, after the conversion.
Let’s take the following customer journey as an example:
A
.B
.customer_1
coming from your customers database.B
into customer_1
.customer_1
(i.e: order status, newsletters…) should contain links that point to your website, containing the user ID customer_1
in parameters. Example: https://www.your-website.com/?user_id=customer_1
A
from a previous visitcustomer_1
A
into customer_1
As you can see, the cross-device reconciliation takes time & is not guaranteed.
However, we don’t need to reconcile every user; with a significant portion of reconciled devices we can learn enough on our customers to improve our marketing efforts.
Like cross-device reconciliation, we won’t need & be able to reconcile every customer, but we will learn a lot.
Cross-domain could happen between 2 online properties (websites, apps…), or between offline (retail) and online properties.
Between 2 websites, it’s easy, the Javascript code can be configured to append user ID values to the links. When a user goes from your store https://www.your-website.com
to the blog https://blog.your-website.com/?user_id=A
by clicking on a link, the blog will retrieve the user ID from the URL.
The real challenge is to track a customer, or a future customer offline (i.e: in a physical store).
In a store, the staff can ask the email address or loyalty card of a customer. As both of them should be recorded in the customers database, we can then append an “in-store” visit to the customer journey.
The key of a successful offline tracking strategy is to give a reward: a loyalty card.
For people who don’t have a loyalty card yet, we can send them a coupon by email. The email address will be the reconciliation key, if one day they become customers.
All those strategies, and the processing of the collected data should be declared in your “Privacy Policies” to remain legal.
Multi-touch attribution is commonly used with “attribution models”.
An attribution model is a way to attribute more or less credits, to every touch-points (=sessions) that contributed to a conversion.
A “session” is a “bucket” of interactions (pageviews…) that happened during a visit.
If you can track a customer in a “physical store” with his loyalty card, you can register a session for that visit of the “physical store”.
Common attribution models are :
Let’s face the truth, the least-dangerous model is the linear, and AI data-driven models end up with numbers close to the linear.
Because it’s a team game.
No one clicks on a web link for fun and loosing time. We click on a link because we think it’s the best information we can get at some point, during our journey.
Therefore there are no channels that deserve more credits than others.
If you apply an attribution model, find out that a marketing channel is not cost-effective and cut its budget, you might destroy your sales.
Why?
A conversion occurs when the buying process of a visitor is mature, after many interactions and a certain period of time.
Many channels can’t convert right away, but are mandatory to fuel your customers journey.
Rimdian applies 2 algorithms for multi-touch attribution :
The “contributive” approach attributes 100% of the revenue to every sessions that contributed to a conversion. The idea is to measure the quantity of the “fuel” that the channels are driving.
This way, you know that if you cut a specific channel, you can expect to loose all that revenue.
Why ?
Because all the customers who needed this specific channel during their journey, won’t find it anymore, and all those customer journeys will be cut.
To remain up-to-date, the multi-touch attribution algorithm is triggered every time there is:
order
order
order
subtotal has been updatedBecause any of those events can happen at any time, the performances of your channels are always evolving.
Example: if the average “time to conversion” of a customer journey is 30 days, you won’t know the real performance of a marketing campaign before 30 days (+ some more time to let the cross-device reconciliation do its work).
Google Analytics database never rewrites the past. Therefore, it can’t do cross-device & cross-domain reconciliation. And will NEVER be able to produce correct statistics about your marketing performance.
To properly track the performance of your traffic channels and marketing campaigns, it is important to declare which source of traffic belongs to which channels.
A channel is composed of a collection of sources & mediums (utm_source / utm_medium) like this:
Channels mapping
It’s important to regularly update the mapping to integrate new significant sources of traffic, in order to track their performance.
Nowadays, it’s very common to attribute voucher codes to influencers, or to track the performance of a specific marketing campaign.
Because most of the Instagram traffic is mobile, and running through a mobile “webview” where cookies are not stored, the only way to track the performance of an influencer is to give him a voucher code mapped to a channel.
Voucher code mapping
A postview
event is a display banner impression that has not been clicked, but happened on a conversion path of a customer.
In order to measure, as much as we can, the impact of the display marketing channels on your conversions, the multi-touch attribution algorithm of Rimdian will also attribute credits to postviews.
However, if 20 postviews (= not-clicked display banners) preceded a conversion, the algorithm will only give credits to the first postview for a given conversion. Otherwise, it will exaggerate the influence of display and dilute sessions.
Advertisers using Google Campaign Manager 360 can import their “postviews” with the corresponding app.
Postviews tracking done by Google Campaign Manager 360, uses third-party cookies, therefore it will only work on Chrome web browsers.