Hi,
Thank you for reaching out to us.
With regard to your concern for preloading ads, this was previously raise to us on this forum thread (https://groups.google.com/g/google-admob-ads-sdk/c/OAGAtvMJyXE/m/pw76y7nOAgAJ), and one of our wider team mentioned the following information below.
"The guidance from https://groups.google.com/g/google-admob-ads-sdk/c/BuczXZG9AeU still stands - AdMob and Ad Manager use a 1px impression definition for all network/backfill based ads, so an impression isn't counted until the ad is shown.
For preloading, after roughly an hour, the server may consider the ad "expired" and not count the impression, even if an impression ping is sent from the client. This is only documented on native ads today (https://developers.google.com/admob/android/native/start#when_to_request_ads) but applies similarly to all formats. I will say though, that generally you shouldn't need to preload banners for an hour. Unlike full screen ads which need to be preloaded because the user experience changes drastically on show, and you need to have an ad ready for the show opportunity, banner space can be reserved and the ad can come in whenever. For a feed style app, you may preload some banners so they show up in the feed loaded, but that may only be on the order of seconds or maybe a few minutes that you'd need to preload.
If you're preloading a banner for an hour, perhaps reconsider if there's a better point in time you could preload that banner so that it doesn't need to be an hour, or a different place to show that banner. Also note that banner ads will reload (assuming you set a refresh rate) once on screen, so even if the first banner impression gets discounted, refreshes would happen if the banner is on screen long enough, and impressions from the refreshes would get counted for the next ~hour."
![]() |
Mobile Ads SDK Team |
![]() |
Mobile Ads SDK Team |