How the Yandex.Direct auction works

Yandex.Direct is a system of placing search and content ads. You pay for clicks on ads which are displayed in ad blocks on Yandex.Search and ad networks (Yandex Advertising Network and ad exchanges).

Yandex.Direct click cost is not fixed; it is determined based on the results of an auction among advertisers. The advertisers’ CPCs are denominated in a currency, while Yandex.Direct internal units are used for auctions. CPC values are converted to Yandex.Direct internal units in real time. Conversions take place in accordance with the RF Central bank's exchange rate for the given currency on the current day.

The auction takes place in realtime while the user loads the search results page or a page containing ad blocks from the Yandex Advertising Network or ad exchanges. The auction consists of a few steps.

Ad selection and ranking

Ads are selected individually for every ad block on the page that appears in response to a user's search term. Ads are sorted based on a combination of CPC, quality coefficient, and CTR figures for that specific impression. Ads with the best combination of indicators will end up in the block.

Ads selected for a given block are ranked and distributed among positions within it. The ranking rules vary based on the ad block type:

  • In the premium placement, guaranteed placement, and dynamic placement blocks, on the “All ads” page, and on the YAN search sites, ranking is determined by a combination of bid rate, quality coefficient, and CTR forecast.

  • On YAN and Ad Exchange content sites, ranking is determined by bid rate.

Determining click price

Click price is determined based on ad block type:

VCG auction

VCG auction rules are used to determine the click price for the premium placement and guaranteed placement blocks on Yandex search and on YAN search sites. Here we'll describe how click price is calculated for the premium placement block.

Depending on how much competition there is for a specific keyword, the block displays between 0 and 4 ads. Research has shown that an ad in first place draws the most traffic and second, third, and fourth position get 85%, 75%, and 65% of the maximum possible traffic respectively. This correlation is not consistent, however, and changes over time and in relation to different search terms. The same ad in first position will get more clicks than it would in second, third, or fourth.

If there are five advertisers competing for premium placement impressions and they bid 10, 7, 5, 3, and 2 RUB respectively for the keyword in question, then the ads of the four advertisers with the highest bids will be served in the block, provided that their quality coefficients and CTR forecast values are the same. The number of clicks on ads and the average cost of such clicks will depend on the advertiser’s position in the block:

  • Each of the four advertisers who won a spot in the block will get 65% (or more) of the maximum possible number of clicks on their ads. Advertisers don't have to compete for this baseline level of traffic. The price for this minimum amount of traffic is determined by the bid of the fifth competitor who didn't make it into the block (in this case, 2 RUB per click).

  • The three advertisers with the highest bids are guaranteed to get the additional 10% of traffic (in relation to the advertiser in fourth position). The fourth advertiser competes with them in the auction for these clicks. So in this example, the fourth advertiser's bid of 3 RUB determines the price for that additional 10% of clicks.

  • The two advertisers with the highest bids are guaranteed to get the additional 10% of click traffic that ads in first and second position get. The third advertiser's bid in this case determines the actual competition for this additional traffic. So the third advertiser's bid of 5 rubles determines the price for that additional 10% of clicks.

  • The advertiser in second position with the 7 RUB bid determines the cost of the final 15% of traffic that the ad in first position gets.

Click price, however, is not calculated separately based on whether a click is "baseline" or "additional". Yandex.Direct calculates the average CPC based on the principle that the main traffic should not get more expensive as one ascends into higher positions. When calculating click price, Yandex.Direct uses clickability coefficients for ad block positions. This coefficient is not constant; it changes over time and in relation to different search terms.

How click price (CPC) is calculated

Let's say that there are four positions with clickability coefficients X1, X2, X3, X4 and five advertisers are competing for positions within the block (with ad bids of Bid1 ... Bid5, with clickability forecasts for a specific impression of CTR1 ... CTR5). In this case, the CPC will be calculated as follows:

The CTR forecast for ads in the block will be used to calculate click price. If bids and quality coefficients are the same across all ads, then the ad with the highest CTR forecast will get the top position.

The four positions in the ad block have the following clickability coefficients (X1 = 1, X2 = 0.85, X3 = 0.75, X4 = 0.65). Five ads participate in an auction with keyword bids of 10, 7, 5, 3, and 2 RUB. The CTR forecasts for the impression in question are as follows: CTR1 = CTR3 = CTR4 = CTR5 = 10%, CTR2 = 12% (provided that the quality coefficients are the same).

GSP-auction

GSP auction rules are used to determine the click price in the dynamic placement block, on the “All ads” page, as well as on YAN search sites and in ad exchanges. The click price is determined by the rate set by the closest competitor.

Four advertisers compete for impressions in dynamic placement, their keyword bids are 10, 7, 5, and 2 RUB respectively, and their quality coefficients and CTR forecasts are all the same. Research has shown that an ad in first place draws the most traffic and second and third position get 85% and 75% of the maximum possible traffic respectively.

The number one advertiser will get the first position. Their ad will get the maximum possible traffic for the given keyword. Every click on that ad will cost 7 rubles.

The second advertiser will get 85% of the maximum possible traffic for 5 rubles per click.

The third advertiser will get traffic for the minimum price of 2 rubles per click, but this still amounts to 75% of the maximum possible traffic for ads based on that keyword.