Mismatch between AdMob Interstitials displayed and the Impression data

645 views
Skip to first unread message

Jayant Upadhyay

unread,
Sep 10, 2013, 9:01:39 AM9/10/13
to google-adm...@googlegroups.com, Jean-Paul Sanday, Jayant Upadhyay, Eric Leichtenschlag
Hi,

There is no caching support for AdMob interstitials in android as of now. So, I'm trying to cache interstitial ad for user's next ad request by saving the instance of com.google.ads.Ad. I display it by calling ad.show() only when the user makes an explicit request. This way, I manage to have very low ad loading time for the interstitials. 

Everything seem to work fine except that the number of impressions reported by AdMob don't match with the no. of impressions that I'm showing. It seems that AdMob increases the impression count as soon as onReceiveAd is called on the client side. Ideally, it should be called only if I'm showing the ad using ad.show() method.

Am I doing this correctly or Should it be done in some other way?

Eric Leichtenschlag

unread,
Sep 13, 2013, 7:40:32 PM9/13/13
to google-adm...@googlegroups.com, Jean-Paul Sanday, Jayant Upadhyay
Pre-loading an interstitial, and only showing it via interstiital.show() when you're app is ready to show the interstitial is the correct approach. com.google.ads.Ad.show() method doesn't exist, it's only on interstitials.

We log an interstitial request as soon as you call interstitial.loadAd(), but we should be recording an impression only when you call show(). Is there a reason you think it's being recorded differently? What are you comparing AdMob's reporting to?

Thanks,
Eric

Mike Kelley

unread,
Oct 23, 2013, 10:32:08 AM10/23/13
to google-adm...@googlegroups.com, Jean-Paul Sanday, Jayant Upadhyay
Hi, I believe that AdMob reported impressions interstitials is wrong. It seems to count loadAd() instead of show().

We pre-load interstitials for Epic Swords -- we call loadAd() and then later show the ad via show() only if the ad isReady(). We count loadAd() and show() via google analytics also. The impression count reported in the AdMob account is about 3x higher than our actual count of calls to show(), but is very close to the loadAd() count.

Other things that suggest the impression count is wrong:
  • our reported CTR for interstitials is similar to the CTR for banners we show at the bottom of the screen. Interstitial CTR should be much higher
  • our reported impressions for interstitials are about 40% of our banner ads. They should be <20%
We're using Android SDK 6.4.1

Eric Leichtenschlag

unread,
Oct 24, 2013, 5:05:31 PM10/24/13
to google-adm...@googlegroups.com, Jean-Paul Sanday, Jayant Upadhyay
After a lot of debugging we've determined this is indeed a bug. CPC Interstitial impressions are being recorded once they're successfully loaded, not when they're being shown. I've been told it'll take some significant changes to fix the reporting to delay recording the impression until the show() event. You'll have to bear with us as we work on a fix.

Thanks,
Eric
Reply all
Reply to author
Forward
0 new messages