Attribution models in Yandex.Metrica and in Yandex.Direct: how they work

If you place ads on Yandex.Direct, you have probably analyzed return on your campaigns both in Yandex.Direct and Yandex.Metrica statistics. Attribution models appeared recently in the Yandex.Direct Report Wizard. In this post, we'll explain how they differ from the attribution models in Yandex.Metrica and how these differences affect data in the reports. 

What are attribution models?

Before users complete a target action, they usually visit your site from different sources. For example, people might initially find out about your site from an ad, then return from your site's listing in search results, and then enter your address directly in the browser and make a purchase. Attribution models are a way to represent the contributions that various traffic sources make in the conversion process, as well as to subsequent site sessions.

Using attribution models, you can understand which channels initially led visitors who eventually converted to your site, and what sources prompted users who were already familiar with your site to make a purchase. 

Why there are attribution models both in Yandex.Direct and in Yandex.Metrica

Yandex.Direct and Yandex.Metrica statistics represent different tasks. Yandex.Direct reports allow you to track in detail how changes to your campaign settings affect your ad performance. In contrast, Yandex.Metrica allows you to study how users behave on your site after they click on your ads and compare your return from various traffic channels. That's why you need Yandex.Direct attribution models to study in detail what your return on Yandex.Direct campaigns is. Likewise, you need Yandex.Metrica attribution models to compare the effectiveness of various sources and analyze how your website visitors move towards conversions.

How attribution models are set up in Yandex.Metrica

Let's start by figuring out how Yandex.Metrica builds reports using different attribution models. When you select the Last Non-direct Click model in the report, the system takes all the sessions that occurred during the reporting period indicated, finds the last non-direct source for each session (such as an ad, search engine, click on a link, etc.), and shows you how many sessions each of those sources were responsible for. The other two attribution models work the same way.

Example. Let's say that a user clicked on your ad in Yandex.Direct on June 5th and returned to your site from search results and bought something. Then they returned on June 7th after clicking on another Yandex.Direct ad and came back from their bookmarked page and converted a second time on June 10th. Yandex.Metrica counts this as 4 sessions:

June 5, 1st session, source  → Yandex.Direct

June 5, 2nd session, converted, source → Search 

June 7, 3rd session, source  → Yandex.Direct

June 10, 4th session, converted, source → Direct (sessions from bookmarks are considered direct referrals)

Here is how sources for sessions are recorded in the Yandex.Metrica database: 

Table 1: Information about session sources in the Yandex.Metrica database

To build a sources report based on an attribution model, we just calculate the number of sessions for each last, last non-direct, or first source (based on the first table).

Here is how data displays in the traffic source report for each attribution model: 

Table 2: Data that displays in the source report for each attribution model

The first difference from Yandex.Direct: clicks vs. sessions

In Yandex.Direct, attribution models are similar, but Direct reports are based on clicks rather than sessions. This is because Yandex.Metrica deals with sessions, whereas Yandex.Direct only knows about clicks on ads.

An exception to this rule is the "percentage of conversions" indicator in Yandex.Direct reports. This indicator uses data on converted sessions from Yandex.Metrica. With the arrival of attribution models in Yandex.Direct, the conversion percentage began to be calculated differently by that system. Now it is represented as the percent of clicks that led to converted sessions (rather than the percent of all sessions that ended in conversions).

Let's look at how the differences in each system's "accounting units" affect how data is represented in statistics. Let's go back to our previous example:

June 5, 1st session, source  → Yandex.Direct

June 5, 2nd session, converted, source → Search 

June 7, 3rd session, source  → Yandex.Direct 

June 10 4-th session, converted, source → Direct traffic

Yandex.Metrica will count 4 sessions, whereas Yandex.Direct will count 2 clicks (June 5th and 7th).

•    Under the Last Click model, your Yandex.Direct reports will show 2 clicks (after all, the last source was Yandex.Direct for both clicks). The Yandex.Direct Summary report in Yandex.Metrica, on the other hand, will show 2 sessions since Yandex.Direct was the last source for two sessions (see the Last Click column in Table 1).

•    Under the Last Non-direct Click model, your Yandex.Direct report will show 2 clicks and 1 conversion (from June 10th). The conversion from June 5th will not count based on this attribution model in Yandex.Direct because the last non-direct source for the June 5th converted session was search. In Yandex.Metrica, the Yandex.Direct Summary report will show 3 sessions where the last non-direct source was Yandex.Direct. Additionally, the June 10th session will count as converted. The percentage of conversions in Yandex.Direct is 1 converted session/2 clicks*100%=50%, whereas the conversion rate in Yandex.Metrica is 1 converted session / 3 total sessions*100%=33%.

•    Based on the Last Click model in Yandex.Direct, we net 2 clicks and 2 conversions. This contrasts with Yandex.Metrica, which attributes 4 sessions to Yandex.Direct (because Yandex.Direct was the first source for each of the four sessions) and 2 converted sessions. In Yandex.Direct, the percentage of conversions will be 2 converted sessions/2 clicks*100%=100%, whereas the conversion rate in Yandex.Metrica will be 2 converted sessions / 4 total sessions*100%=50%.

Here is how these differences look in the Yandex.Direct statistics versus the Yandex.Direct Summary report in Yandex.Metrica:

The table compares data from the Yandex.Direct Summary report since the Yandex.Direct system doesn't count clicks or conversions that were deemed fake (that's why data there more closely reflects the figures in your Yandex.Direct statistics).

The second difference from Yandex.Direct: dates of completed conversions

In Yandex.Metrica, completed goals are marked in reports for the days when they actually occurred. This contrasts with Yandex.Direct, which links a conversion to the date when the click that led to it occurred. The reason the system works this way is because Yandex.Direct is more concerned with tracking your return on advertising (rather than user behavior on your site). 

Based on the First Click attribution model, this would be the first click on a Yandex.Direct ad that led a user to your site, whereas if you're using the Last Non-direct Click model, this would be the last Yandex.Direct click if there were no other non-direct traffic sources after it (such as clicks from search results, links to sites, or other ad systems). And under the Last Click model, this would be the last Yandex.Direct click, as long as that click launched a converted session.

Let's take the last two sessions from our example:

June 7, 3rd session, source → Yandex.Direct

June 10 4th session, converted, source → Direct traffic

Here is how the Yandex.Metrica database will record all the source types for these two sessions:

In the Sources, summary report in Yandex.Metrica, we would select the June 7-10 period that encompasses both sessions and select the Last Click attribution model. In the Yandex.Direct row, we see 1 session and 0 converted sessions. But based on the Last Non-direct Click or Last Click model, 2 sessions and 1 converted session will be attributed to Yandex.Direct. If we enter June 8-10 for the reporting period (which excludes the Yandex.Direct click on June 7th) and select the First Click or Last Non-direct Click attribution model, we will see that there is 1 session from Yandex.Direct and 1 converted session. And based on the Last Click model, we have one converted session from direct traffic.

In Yandex.Direct, this is counted as one click, but not two sessions. For the period of June 7-10, we will see one conversion based on the Last Non-direct Click or First Click models. Whereas for the period of June 8-10, we will not see clicks or conversions because the Yandex.Direct click occurred on June 7th. This means that the conversion is not linked to anything and will not display in the report. Therefore, when you calculate your return on your ad campaign, it makes sense to check whether or not there were conversions in the time period that encompasses the date your campaign started running.

How to use attribution models 

It's best to use Yandex.Direct attribution models to analyze your return from advertising in detail. The First Click model allows you to find out which campaigns and ads were the first touchpoints for users who converted later. The Last Non-direct Click model shows you what ads prompted users to make a purchase. And the Last Click model lets you see what conversions occurred almost immediately after users clicked on your ad.

In Yandex.Metrica, attribution models help you compare your return from various sources that drive users to your site: advertising and search systems, newsletters, social networks, or links to other sites.