How the Yandex.Direct auction works

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 . 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. Ads in the premium placement, guaranteed impressions, and dynamic impressions blocks, as well as on the “All ads” page are ranked based on a combination of the bid, quality coefficient, and CTR forecast.

Determining click price

Click price is determined based on ad block type:

  • Yandex search and YAN search sites use VCG-auction rules for premium placement and guaranteed placement blocks.

  • The “All ads” page use GSP-auction rules for dynamic impressions blocks.

VCG auction

VCG auction rules are used to determine the click price for the premium placement and guaranteed placement blocks on Yandex search. 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 liras 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 TL 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 TL 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 TL determines the price for that additional 10% of clicks.

  • The advertiser in second position with the 7 TL 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 LR. 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. 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 LR 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 TL.

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

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