CTR vs Impressions - Proofed for admob

So what is better - a high CTR or a high impression rate - will it make any difference?

After several weeks of proofing different things, I’ve ended up with a conclusion to this topic, which you can read here:

Personal Blog - Talking about eCPM and CPC - Developer Blog

In Short: yes, a High CTR does pay off much better than a high impression rate. I have proofed it with some of my games, and the result is that the overall pay off is much better with low Impressions but high CTR, because you get a much higher click price which is not compensated by the overall more clicks of the high impression game.

Let’s start a discussion about that, I am pretty sure, some of you may have made different or equal assumptions about that topic.

I had refresh rate turned off by mistake (for a year!) in all my games resulting in high CTR. After I changed the refresh rate to 60s my revenue raised approximately 20-30% - while the CTR of course was much lower now. I will test 120 refresh rate for a while though to check if it changes anything (it’s low on admob anyway these days, so it’s cheap to experiment).

Do not misunderstand me, I have tried that saif above with DIFFERENT games over a long period of time. Admob will not track CTR in real time, they will work with some sort of average. If I would NOW change the high CTR game to a higher Impressions, it will for sure raise revenue - as long as admob does no re-averaging - if you get what I mean.

I don’t know how often admob does alter some values for that sort of thing, but just because there is some sort of bidding involved (for advertisers) there has to be some sort of evaluation for different ad spaces. While on websites that is easily done by keywords, there are no keywords on android banners, so there has to be the one or other value involved. And the only value available is the CTR in conjunction with some sort of impression rate.

So a high clicked ad space has to be of more value of a less clicked ad space. For me that is proofed, becaus I see the result directly on my games.

Sure - I cannot push some games to make the ad space more valuable in most of my games, on some of them it is possible (between actual gameplay) and there is the CTR the highest. In the end, everyone is fine, when an ad is seen well, the dev as well as the advertiser.

You do not get any benefit by blindly refreshing the ad having now knowledge why - knowing why you refresh (because you have a good opportunity) will get your ad space more value, than other web spaces - except, when there is low ad inventory, in that case it should be pretty useless, but as far as I can tell, at the moment, there is enough ad inventory, even, when my big games are getting CPCs of < 0.02, I can see a mcuh higher CPC on other games with much lower refresh rate.

I don’t want to tell you, there is a mechanism which will make you rich, I am just telling you, that you can get a higher CPC than those who habe a 60 seconds CPC if you place your ads on the right time and the right position inside of your game / app. The time is right, when the viewer is actually ready to get their attention elsewhere. During a game they will never look at any ad at all - that’s for sure, so it is a wasting of impressions refreshing at that time.

In one of my apps I had a high timer for the ad refresh rate. It had pretty good ctr and good ecpm. I tried setting the refresh low for more impressions and the revenue went up for the first month or so, then it leveled off and even dropped slightly below what it was before. I agree with Reiti that if you can manually refresh at opportune times this I think would get you the best ctr.

This of it from their point of view. It costs money to serve adverts. The people with the highest CTR should get the highest paying adverts, because that means more money per advert served (fixed cost). It really is a no-brainer.

But does it cost Google to serve ads … and if it does then HOW is the paying more/less alleviating their problem - they are still delivering near-100% fill rate regardless.

If it was cost-to-Google type issue, Google would throttle back on the fill rate perhaps ?

While it may be retribution on the part of Google to start delivering junk ads (presumably the ones which no one wants to click on - which may coincidentally also be the low payingones ? though that doesn’t have to be correlated ?). But even if Google delivers junk ads - how does that help Google ?

That is, regardless of the CTR, Google is still delivering the same total ads either way - only thing it can do is reorganize who gets what type of ad - but how does that help Google ?

Perhaps the driver for this is that the advertisers essentially set what they willing to pay for different CTR brackets.

Fair pricing would suggest a scaling of advertiser payment according to CTR i.e. if CTR is double, then advertiser should pay double - but isn’t this ALREADY factored in if advertisers are paying per-click anyway ?

Now if they were paying for impressions, THEN they would be willing to pay more for a higher CTR ad space (in an app).

What may happen is that if advertisers DEMAND that a certain number of clicks happen in a week, then Google may seek out ad spaces which can deliver that click-through ?

In such a scenario it maybe possible that advertisers are willing to pay more per click for such “emergency” situations (or time-critical showing of ads).

If that happens … maybe THAT is what winds up appearing as “advertisers pay more for higher CTR spaces”.

I don’t have a deep understanding of this - so above is just a conjecture.

Also if there was a correlation between CTR and ad quality - why would Admob keep this a secret from developers.

One would think a clear delineation of this issue by Google would rationalize the market somewhat.

So that developers would not engage in the most egregious of practices etc.

That is, is there some value (for Google) to keep their algorithm a secret ? Ok, it probably is so they don’t get exploited by scam operations - but still one would think some transparency about the overall what-affects-what would improve the quality of how apps do things ?


Let’s give me a number:

High Impressions, Low CTR = 0.017 CPC
Low Impressions, High CTR = 0.043 CPC

That does not leave much room for interpretation, so if you want to make money, you should go for high CTR instead of High Impressions.

Since revenue is:

impressions x CTR x CPC

When you halve the impressions (lower refresh rate), you may double the CTR (if user clicks per minute are about the same - the only advantage of showing MORE impressions is that there is variety and an ad may catch the user’s eye ?).

So overall clicks may remain the same - however if CPC is going up - then that will raise revenues.

So you may have a point, but I don’t understand what the economic forces there are that forces this to happen.

The points about refreshing ads only when user is looking are also relevant. The argument is similar to the one about trying to keep the same banner area across multiple activities using fragments etc. discussed in some other threads. However developers will need to use their own code to show the ads.

There does not need to be “secret”. The whole reason is, that each ad HAS different CPCs - behind that all is a bidding system. While that bidding system is easy to interpret on a website (where there are keywords and such things) - nothing of that is available for an app - there is no keyword, there is not much data available at all.

So to maintain a bidding system it has to be correlated to the only known value like CTR. An Advertiser WANTs a high CTR so, ad spaces which provides a high CTR does reflect a higher value for advertisers and therefore the bidding strikes and raises the CPC.

After all, there IS limited ad inventory. Many Advertisers are playing the game with low max-CPC where others don’t care. The high paying advertisers therefore will be shown on high quality ad spaces, while everywhere else the low paying ones are filling. If there is nothing left, google can still serve adsense ads.

If you turn off adsense filling you will find an occasionally drop in fill rate, far away from nearly 100%.

There is another reason, I haven’t mentioned here, which is the general high paying CPC ad availability. It is easier to describe it like that: You have an auto refresh of 60 sec during the whole app lifetime. So you may get a high paying ad displayed, but the user has no time because he is hunting a highscore. So you WASTED that high paying and maybe get an low cpc ad instead. That behaviour would ALSO lower your average CPC because you just wasted the good ads.
It’s like showing your friend a free iphone for 10 seconds, when he is just watching woobling tits on the other side of the streets … when he looks at you again you put away that phone and are showing a pair of socks which he don’t like

For sure, the bidding system could be a very easy one which does just decide to show your ad at all depending on available ad inventory … but I don’t think so, because there is more adspace than ad inventory

I think what you are seeing is exactly what you described in the last post - good ads might get wasted if the user doesn’t have time to click. That would depend on the game (how long the level is) and quality of ads (if there are no interesting ads - like right now - it’s better to refresh often, while when the ads are mixed, good with bad, refresh slower). By good I mean ads that people want to click, not ads of Windows server which I see from time to time.

The question is if the advertising bid for high-CTR ad spaces goes up nonlinearly or with slope greater than 1 (i.e. if CTR is doubled, that CPC is MORE than doubled i.e. 3x or 4x).

In that case, massaging an ad space to exhibit low-CTR (i.e. lower refresh rate, or as you suggested choosing the banner refresh rate AS wisely as one does for full screen interstitial ads i.e. only show them or show a new one when you know user is watching) may be of value.

Your argument that the CTR maybe calculated as a moving average may explain why this effect is so difficult to replicate (as most developers lower refresh rate then watch it for a day or two and see no impact or see overall revenue lowered).

In any case, this is another thing which is totally dependent on advertisers - because if they FAIL to bid higher for higher-CTR space, then showing ads less frequently may wind up hurting the developer (since if you are showing lesser banner ads - i.e. showing the same ad for longer - you better be assured that you are going to get paid higher than normal if a user DOES click i.e. the CPC is going to be commensurately higher).

So if advertisers suddenly stop bidding CPC higher according to CTR - or to be more precise are not overbidding CPC 2x if you show their ad twice as long (i.e. you halve refresh rate). then developer is going to lose.

This may explain why there has been no reliable evidence seen for this overbidding CPC according to CTR effect - as that may vary by season. In a slow period it is possible that that CPC overbidding may occur less often (yet that is precisely the time when developers will get antsy and try to fiddle with the refresh rate to see what is wrong with low eCPM during the post-holiday season etc.).