In one of our previous blogs: Experiment 1: Cost of running Google Multi-size AdUnits – Pricing Rules Become Redundant, we spoke about how Ad Exchange Pricing Rules become redundant if you are using a multi-size ad unit. Let’s say you have an ad unit with multiple sizes: 300×250 and 320×50, both the sizes are included in the same request that is being passed to Ad Exchange and hence since multiple pricing rules are in effect for multi-size requests, Google says no pricing rule can be attributed to unmatched ad requests! Google Ad exchange will not be able to know which pricing rule has caused an unmatched ad request. Because of this, pricing rules show 100% fill rate and all unmatched ad requests will be shown under ‘no pricing rule applied’.
As you can see in the above table, it is impossible to know the performance by size and optimise your ad unit effectively. Now imagine having multi-sized ad units across your webpage. When you’re not be able to closely optimize your inventory, how do you know you are not leaving money on the table?
We have faced this issue with many of our customers and we had a really hard time to optimize on those multi-sized ad units. After many trial and error iterations, we have found out a solution where we can know the fill rate and ad request CPM for each size individually even for multi-size ad units. So how do we do it?
The answer lies in key-value targeting.
Ad Exchange allow targeting of key-values in its pricing rules. So, if you have an existing key and value, you can use the same to obtain accurate reporting for multi-sized ad units. All you need to do is, if you have any existing key that is present in your Ad Manager Key-Value tab, you can create new unique values and then target these values on your pricing rules. The value should be unique for different sizes so that when you pull the report by key-values, you should know the size it is indicating. For example, you can create a value like 300_250 for size 300×250 and 320_50 for 320×50 so that you can target key-values along with size and ad unit in Pricing Rules.
For example: If you have an ad unit named AU1 which has multiple sizes 300×250 and 320×50, you can create 2 pricing rules for each of the sizes of the same ad unit. One rule targeting AU1 and size 300×250 and another rule targeting AU1 and size 320×50. Now if you have corresponding key-values created, you can target the respective key-values along with these dimensions. Hence along with above 2 dimensions, corresponding key values viz. 300_250 & 320_50, should be targeted.
How does reporting work?
Now that you have created different pricing rules for different sizes, if you pull the report by pricing rules, you’ll have the same problem as mentioned before. You won’t get fill rate for these pricing rules. The solution here is to pull the report by key-values! It is not very straightforward as Ad Exchange won’t give reporting by key-values through its UI. But there is a way to get them through Ad Manager APIs. Google Ad Manager provides an option called Custom Targeting Service where it gives the reporting for Keys and Values.
Now coming to multi-size reporting, since you have targeted key-values in pricing rules, you will establish a 1:1 mapping between inventory size and corresponding value. Hence if you pull the report for the value 300_250, it is as good as pulling the report for size 300×250. Now to get proper ad request CPM and fill rate for multi-sized ad units, we should avoid pulling the report by pricing rules, instead if you filter the report for ad unit and key-value, it will resemble your pricing rule reporting and hence you’ll be having a clean reporting with all the available metrics.
From this method, you will be able to properly analyse ad request CPM and fill rate for your multi-sized ad unit and optimize it more efficiently!
Vinay B Rao
Senior Business Analyst, Tercept