When we make a bid request in DSP system, it usually goes through features matching, CTR estimation, price calculation, Advertisement selection and so on.
- Feature Matching: Choose the advertisement that match the traffic feature in DSP system.
- CTR Estimation: Predict the user click probability (CTR) of each matched advertisement.
- Price Calculation: Calculate the bid price based on the operation goal of each Ad.
- Ad selection: Select the final launch of the Ad by Combine the above information, as well as the budget and other information.
This article is about the “price calculation” stage. The operation goals of an Ad campaign usually include Fixed CPM, TCPM, TCPC, TCPA, and ROAS, etc. Different operation goals have different price calculation methods, which can also be called “Price Model”.
The following uses the “Linear Bidding” algorithm as an example to illustrate the bidding process for each operating target.
Fixed CPM
Fixed CPM, also known as fixed price, is the most straightforward bidding mode. A fixed value is used for bidding on matched bid requests. It is generally used for new ad campaigns with no historical data for reference. A smaller budget can be used for testing, and after obtaining test data, other bidding modes can be used.
TCPM
TCPM (Target Cost Per Mille) bidding mode sets an expected target price per thousand impressions for the system to optimize. In this mode, the DSP system’s bidding is linearly related to the CTR prediction results of the ad on the current traffic: the higher the CTR, the higher the bidding; the lower the CTR, the lower the bidding. The following formula can be used to calculate the bid price:
Bid_Price = TCPM * CTR / AVG_CTR
Assuming an ad has a TCPM price of $1.0, and its CTR performance on different traffic is as follows:
Country | Bundle | Imp. | Click | CTR |
MEX | com.game | 1000 | 140 | 14.00% |
MEX | com.puzzle | 1500 | 150 | 10.00% |
MEX | com.text | 2000 | 160 | 8.00% |
– | – | 4500 | 450 | 10.00% |
The bid prices for different traffic are as follows:
- The bid price for com.game: 1.0 * 14.00 / 10.00 = 1.4;
- The bid price for com.pizzle: 1.0 * 10.0 / 10.0 = 1.0;
- The bid price for com.text: 1.0 * 8.0 / 10.0 = 0.8.
A range should be set for the ratio factor of each traffic compared to the average CTR to avoid abnormally high CTR, resulting in higher bidding.
TCPC
TCPC (Target Cost Per Click) bidding mode sets an expected target price per click for the system to optimize. When the DSP system bids for an ad in this mode, the TCPC price is converted to a CPM price based on the average CTR:
CPM = TCPC * AVG_CTR * 1000
Assuming a certain ad’s TCPC price is $0.02, and its CTR and CR performance data is as follows:
Bid_Price = CPM * ( CTR / AVG_CTR)
The bidding for different traffic is as follows:
- About the bidding for com.game: 2.0 * 14.00 / 10.00 = 2.8;
- About the bidding for com.pizzle: 2.0 * 10.0 / 10.0 = 2.0;
- About the bidding for com.text: 2.0 * 8.0 / 10.0 = 1.6.
TCPA
TCPA (Target Cost Per Action) bidding mode sets the target price for the user event that the system expects to optimize. When DSP system bids for ads with this mode, the TCPA price is converted into CPM price using the average CR and average CTR:
CPM = TCPA * AVG_CR * AVG_CTR * 1000
Assuming the TCPA price of an ad is $0.5, and its CTR and CR effect data are as follows:
Country | Bundle | Imp. | Click | CTR | Action | CR |
MEX | com.game | 1000 | 140 | 14.00% | 6 | 4.29% |
MEX | com.puzzle | 1500 | 150 | 10.00% | 3 | 2.00% |
MEX | com.text | 2000 | 160 | 8.00% | 12 | 7.50% |
4500 | 450 | 10.00% | 21 | 4.67% |
The benchmark CPM price of this ad is 0.5 * 4.67% * 10% * 1000 = 2.33.
The specific bidding is linearly related to the CR and CTR performance of the ad on the traffic. The higher the performance above the average, the higher the bidding; the lower the performance, the lower the bidding.
The formula for calculating the bidding is as follows:
Bid_Price = CPM * ( CR / AVG_CR ) * ( CTR / AVG_CTR)
The bidding for different traffic is as follows:
- About the bidding for com.game: 2.33 * ( 4.29/4.67 ) * (14.00/10.00) = 3.00;
- About the bidding for com.pizzle: 2.33 * ( 2.0/4.67 ) * (10.0/10.0) = 1.00;
- About the bidding for com.text: 2.33 * ( 7.5/4.67 ) * (8.0/10.0) = 3.00.
Like the range constraint of the CTR ratio factor, the range constraint of the ratio factor of the estimated CR on different traffics also needs to be set to avoid the phenomenon of abnormally high CR and excessive bidding.
ROAS
ROAS (Return On Ad Spent) bidding mode sets the expected unit revenue per unit cost of buying traffic. For example, if you expect to earn $2 for every $1 spent, the ROAS is (2/1) * 100% = 200%. Under this mode, the system divides the benchmark cost per unit revenue by ROAS to obtain the benchmark cost for each revenue unit.
The benchmark of CPM price calculation for different revenue methods is as follows:
- About CPA revenue method: Benchmark CPM = CPA / ROAS * AVG_CR * AVG_CTR * 1000
- About CPC revenue method: Benchmark CPM = CPC / ROAS * AVG_CTR * 1000
- About CPM revenue method: Benchmark CPM = CPM / ROAS
After obtaining the benchmark CPM, the specific bidding is still linearly related to the estimated CTR of the ad on the traffic:
Bid_Price = Benchmark CPM * ( CTR / AVG_CTR)
In DSP system, besides linear bidding algorithm, there are also rule-based bidding algorithm, model-based bidding algorithm and so on. The logic of switching to a benchmark CPM relative to operational goals is consistent regardless of the algorithm used.
In addition to bidding, other aspects of the process also involve other algorithms or models, and the implementation differences between different systems are significant. Overall, the performance of these algorithms and models will become increasingly accurate as data is accumulated.