onAdFailedToLoad keeps refreshing even though setting is disabled

885 views
Skip to first unread message

Eugenio Lo

unread,
Oct 28, 2022, 3:51:47 PM10/28/22
to Google Mobile Ads SDK Developers
Hi there, 

I'm experiencing the following unwanted behavior upon receiving onAdFailedToLoad ->
  1. Ad is requested and onAdFailedToLoad returns error code 3. (This is acceptable)
  2. After a minute or so, an other ad is requested for the same IU and onAdFailedToLoad is triggered again returning error code 3. (This is not acceptable as we do not wish to continue automatically fetching after onAdFailedToLoad is returned.)
  3. An ad will continue to be requested, and onAdFailedToLoad will continue to return error code 3 until an actual Banner Ad is served. At this point it will no longer refresh. 
This behavior is occurring despite the automatic refresh rate being disabled for Banner Ads. 

It appears this is a re-try logic baked into the SDK that continues to fetch on an interval until an Ad is returned and onAdLoaded is called. Is there anyway to further disable this automatic refresh/re-try behavior upon onAdFailedToLoad?

The expected behavior would be: 

If Ad is requested and onAdFailedToLoad returns error code 3 -> do not attempt to automatically retry the same IU again. 

Let me know if I can further clarify the above. 

Thanks, 

Eugenio

Mobile Ads SDK Forum Advisor

unread,
Oct 31, 2022, 1:56:16 AM10/31/22
to heni...@gmail.com, google-adm...@googlegroups.com

Hi Eugino,

Thank you for reaching out to us.

As per checking in our documentation, if your ad fails to load, you don't need to explicitly request another one as long as you've configured your ad unit to refresh; the Google Mobile Ads SDK respects any refresh rate you specified in the AdMob UI. If you haven't enabled refresh, you will need to issue a new request. But, since you mentioned that you already disabled the refreshing the requesting of ads and still it requesting, can you provide us privately the following details below so that we can check this behavior in our end? You can provide the following details via Reply privately to author option or directly provide it to the link below.

  • Sample app project or Charles log Capturing the behavior
  • Steps to replicate
  • SDK version
  • App ID
  • Ad unit id

If the file(s) you are looking to share are less than 25mb in total you can attach them to this case on your next reply. If you are having trouble attaching your file to this case or if your file(s) are larger than 25mb, you can share your files with me by performing the following steps:

 

1. Navigate to

https://docs.google.com/forms/d/e/1FAIpQLSfkAiXMeYP-fw1W3Z-tT9uwmATEKO5X6S-th0gR2ezdKaaqfg/viewform?usp=pp_url&entry.400550049=Mobile+Ads+SDK&entry.460850823=5004Q00002fpOhQQAU&entry.80707362=00155469

2. Fill out all fields, and attach your file(s).

3. Please reply back on this thread when you have uploaded your file(s). Please do not share this link.

 

Regards,

Google Logo
Princess Pamela
Mobile Ads SDK Team
 


ref:_00D1U1174p._5004Q2fpOhQ:ref

Eugenio Lo

unread,
Nov 9, 2022, 2:12:04 PM11/9/22
to Google Mobile Ads SDK Developers
Hi there, 

I've been able to replicate this issue on a sample app with both the programmatic and XML Banner ads implementation described in the docs

Sample app along with README & a .txt file has been uploaded to the link provided for files greater than 25mb. 

Let me know if I should provide any other information or if anything needs to be further clarified. 

Thanks. 

Mobile Ads SDK Forum Advisor

unread,
Nov 9, 2022, 11:14:19 PM11/9/22
to heni...@gmail.com, google-adm...@googlegroups.com

Hi Eugenio,

 

Thank you for providing the requested details.

 

As per checking your sample app provided, I've seen that you're using our sample ad unit id which is "/6499/example/banner", that you used as "/6499/example/banne" in your implementation to trigger the onFailedToLoad. Kindly note that the banner ads refresh automatically after a certain period of time, and this behavior is expected if you're using our sample ad unit id. As per our documentation, if your ad fails to load, you don't need to explicitly request another one as long as you've configured your ad unit to refresh; the Google Mobile Ads SDK respects any refresh rate you specified in the Ad Manager UI. If you haven't enabled refresh, you will need to issue a new request. With that, kindly implement the refresh rate that you want in your Ad Manager UI and try to use your ad unit id to check the refresh rate. Kindly note that if you're using your actual ad unit id, kindly register your device as test device.

Eugenio Lo

unread,
Nov 10, 2022, 12:13:28 PM11/10/22
to Google Mobile Ads SDK Developers
Hi there, 

Thank you for your response!

1) "Kindly note that the banner ads refresh automatically after a certain period of time"  So even if we've disabled the refresh setting via the console, Banner ads will still refresh automatically? Why is it that the banner ad does not refresh upon a successful renderable ad being returned, but it continues to retry if onAdFailedToLoad is invoked? Is there a separate setting I should disable for disabling refreshes after onAdFailedToLoad?  

2) "this behavior is expected if you're using our sample ad unit id." I'm using a malformed version of your sample unit id. So it should not tie to any setting you've set for it. "/6499/example/banner" != ""/6499/example/banne" 

Our expected and wanted behavior is that after onAdFailedToLoad is invoked, the GMA SDK does not refresh automatically at all in any period of time. 

As you see in the sample app provided, there is no custom logic being implemented within onAdFailedToLoad() and i'm using a malformed unit id, yet it still continues to refresh the same malformed ad unit id every minute. Please advise on how to prevent this from happening. 

Thanks! 

Mobile Ads SDK Forum Advisor

unread,
Nov 10, 2022, 9:50:04 PM11/10/22
to heni...@gmail.com, google-adm...@googlegroups.com

Hi Eugenio,

 

Thank you for your response.

 

  • So even if we've disabled the refresh setting via the console, Banner ads will still refresh automatically? Why is it that the banner ad does not refresh upon a successful renderable ad being returned, but it continues to retry if onAdFailedToLoad is invoked? Is there a separate setting I should disable for disabling refreshes after onAdFailedToLoad? 
    •  If you disable the refresh in the setting of your ad unit id, then it should not refresh automatically. Can you confirm if you already tried this in your actual ad unit id? In addition to that, kindly provide us privately your ad unit id and app id so that we can check this further, as it seems that it doesn't included on the file you provided that we requested previously. You can provide the following details via Reply privately to author option.
  • "this behavior is expected if you're using our sample ad unit id." I'm using a malformed version of your sample unit id. So it should not tie to any setting you've set for it. "/6499/example/banner" != ""/6499/example/banne" 
    • With regard to this, even you are using a malformed version of our sample ad unit, as long as it is not set as "disable" on the advanced settings of that specific ad unit id, then the refresh is set as default which is automatically refreshing.

Eugenio Lo

unread,
Nov 16, 2022, 10:47:55 AM11/16/22
to Google Mobile Ads SDK Developers
Hi Princess, 

Posting here for visibility. I've responded to your latest email privately with the requested info. 

Thanks!

Mobile Ads SDK Forum Advisor

unread,
Nov 16, 2022, 1:40:01 PM11/16/22
to heni...@gmail.com, google-adm...@googlegroups.com
Hi Eugenio,

I work along with Princess. Thank you for getting back to us. However, I'm afraid that I'm not able to proceed with validating your reported behavior since the provided ad unit is not complete. For reference, the ad unit should compose of hierarchy separated by slash ("/"). You may check our demo ad units for your reference. You may also want to check this HC article for more information on ad units for Ad manager. Once you've identified your ad unit, kindly provide it to us so we could continue with our testing.

Regards,
Google Logo
Teejay Wennie
Mobile Ads SDK Team
 


ref:_00D1U1174p._5004Q2fpOhQ:ref

Eugenio Lo

unread,
Nov 16, 2022, 2:48:35 PM11/16/22
to Google Mobile Ads SDK Developers
Hi Teejay, 

Posting here for visibility. I've responded to your latest email privately with the requested info. 

Thanks!

Mobile Ads SDK Forum Advisor

unread,
Nov 16, 2022, 10:02:18 PM11/16/22
to heni...@gmail.com, google-adm...@googlegroups.com

Hi Eugenio,

 

Let me share this to the rest of the team to further check this behavior and to provide proper guidance for this. Rest assured that one of our team will reach out to you.

 

Regards,

Google Logo
Princess Pamela
Mobile Ads SDK Team
 


ref:_00D1U1174p._5004Q2fpOhQ:ref

Luitgardus Say

unread,
Nov 19, 2022, 6:10:52 AM11/19/22
to Eugenio Lo, Google Mobile Ads SDK Developers
Can you speak Indonesia please

--

---
You received this message because you are subscribed to the Google Groups "Google Mobile Ads SDK Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-admob-ads...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-admob-ads-sdk/25cda5b8-a294-40ee-898d-e0956c5642b6n%40googlegroups.com.

Mobile Ads SDK Forum Advisor

unread,
Nov 21, 2022, 6:30:36 PM11/21/22
to luitga...@gmail.com, google-adm...@googlegroups.com, heni...@gmail.com

Hi Luigardus,

 

Thank you for reaching out. I have replicated the issue and will look into any alternative solutions. That said, were you able to replicate the issue using the correct ad unit ID?

 

Thanks,
Nick



ref:_00D1U1174p._5004Q2fpOhQ:ref

Eugenio Lo

unread,
Nov 23, 2022, 11:24:11 AM11/23/22
to Google Mobile Ads SDK Developers
Hi there, 

Unsure if this question is directed at me, but yes, I am able to replicate this issue with my app's actual prod unit ID that was previously provided. 

Let me know if there's anything else needed from my side. 

Thanks!

Ahmed SAYED

unread,
Nov 23, 2022, 8:40:20 PM11/23/22
to Eugenio Lo, Google Mobile Ads SDK Developers
Everyone today designed a site for me to salivate, you have to add your ads on this site, register a subscription 

--

---
You received this message because you are subscribed to the Google Groups "Google Mobile Ads SDK Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-admob-ads...@googlegroups.com.

Mobile Ads SDK Forum Advisor

unread,
Nov 28, 2022, 10:28:07 PM11/28/22
to sydm...@gmail.com, google-adm...@googlegroups.com, heni...@gmail.com

Hi Eugenio,

I have an update on the banner refresh issue. Ad unit /6499/example/banner is Google's test ad unit. This ad unit is set to not refresh. If misspelled, the refresh rate falls back to to the parent ad unit (/6499/example) which has a refresh rate of 60s.

To resolve this issue please follow these steps:
 

  • Make sure we are using your own test ad units.
  • Make sure we are typing the ad unit correctly.
  • Make sure we configure the ad unit and the parent ad unit to not refresh.

Hope this helps,

mianha...@gmail.com

unread,
Apr 1, 2023, 1:58:41 PM4/1/23
to Google Mobile Ads SDK Developers

Hi
we are also facing exact same issue, here are the steps to reproduce.

1: Disable auto refresh from admob console.

2: Create logs on onAdFailedToLoad() and onAdLoaded() so you know the ad responses.

3: Release the app with real ad units and go to the screen where banner is loading.

4: keep opening the banner screen till you get error code 3 (no refill) in  onAdFailedToLoad() and wait on the same screen for 60 to 90 seconds and do not let the screen turn off.

5: you will get automatic ad response after the first request is failed to load with error code 3 (no refill).

6: if you create a manual ad request before 60 seconds, you will get two responses 1st for the failed ad that gave error 3 and 2nd response for the manual ad request.


This behavior is creating unnecessary ad requests and revenue loss.

mianha...@gmail.com

unread,
Apr 1, 2023, 2:01:47 PM4/1/23
to Google Mobile Ads SDK Developers
We are using following versions

        minSdkVersion 19
        targetSdkVersion 33

        implementation 'com.google.firebase:firebase-ads:22.0.0'

Tested on android 13 with updated webview : 111.0.5563.116


Message has been deleted
Message has been deleted

mianha...@gmail.com

unread,
Apr 3, 2023, 3:32:08 PM4/3/23
to Google Mobile Ads SDK Developers
I have checked the things you told in last message:
1: we are using our own ad unit id
2: all the ad units are correct
3: What is parent ad unit?  we have copied the ad unit from the admob and it looks like this ca-app-pub-xxxxxxxxxxxxxxx/xxxxxxxxxx

mianha...@gmail.com

unread,
Apr 3, 2023, 3:34:16 PM4/3/23
to Google Mobile Ads SDK Developers
I also observed few more things.
1: This behavior only happens in  onAdFailedToLoad()
2: if I call banner.destroy() in onAdFailedToLoad , it will again auto refresh after 60 seconds.

Mobile Ads SDK Forum Advisor

unread,
Apr 3, 2023, 11:29:20 PM4/3/23
to mianha...@gmail.com, google-adm...@googlegroups.com
Hi mianharisali,

Thank you for reaching out. I have confirmed that the `destroy()` method is not cancelling the AdRequest load loop. I will look into this issue and follow up when I have next steps.

- Nick

ref:_00D1U1174p._5004Q2fpOhQ:ref

mianha...@gmail.com

unread,
Apr 4, 2023, 7:56:36 AM4/4/23
to Google Mobile Ads SDK Developers
Thank you.
Please note that this issue is also occurring in  onAdFailedToLoad() when auto refresh is disabled in admob, I have provided all the details in above messages, if you need some more info, please let me know.

mianha...@gmail.com

unread,
Apr 4, 2023, 2:57:54 PM4/4/23
to Google Mobile Ads SDK Developers
Here is our case.
Our app shows banner ad on overlay and when overlay gets visible, we request an ad and show it and when overlay is removed, we pause the adview and we have also disabled auto refresh from admob because we want to generate ad request when overlay gets visible (manual ad request)
We are using high floor setting on that banner, and we get around 20% fill rate and around 80% of our ad responses return no fill.

1: overlay gets visible, we generate ad request.
2: ad request returns no fill in onfailedtolaod.
3: user dismisses overlay we pause the adview.
4: overlay gets visible again we resume the adview and generate an adrequest.
5: now we get two ad response one for the request we generated and one that admob sdk generated in onfailedtoload and it gets into a loop and keep requesting ad every 60 seconds till it gets a fill.
6:  two ads load really fast.

consequence we are facing because of this.

1: our show rate is decreased 
2: click through rate is decreased 
3: our ad requests are increased
4: revenue is dropped.
5: app is using more battery because of frequent ad requests.
6: users are complaining that ads are loading in loop and if they want to click a real ad it disappears instantly.
7: We were using audience network mediation and audience network banned us with following reason.
"Artificial or inauthentic traffic"
8: Because 80% of our ad request result in no fill this issue is hurting is very badly.

I hope you understand this and solve it ASAP.

This issue opened last year, and these is no update on this.



Mobile Ads SDK Forum Advisor

unread,
Apr 5, 2023, 2:06:41 PM4/5/23
to mianha...@gmail.com, google-adm...@googlegroups.com
Hi Mianharisali,

Thank you for the detailed explanation of the problem, it will help me as I advocate for a solution. I have replicated and confirmed the issue and will push for a resolution or a work around. I will respond when I have next steps.

mianha...@gmail.com

unread,
Apr 14, 2023, 1:30:40 PM4/14/23
to Google Mobile Ads SDK Developers
Thank you for understanding , I hope it gets fixed soon.
You discussed about parent child relation in banners , can you please explain that in detail ?

Mobile Ads SDK Forum Advisor

unread,
Apr 14, 2023, 1:49:10 PM4/14/23
to mianha...@gmail.com, google-adm...@googlegroups.com
Hi everyone,

We are still looking into this issue. Thank you for your patience.

mianha...@gmail.com

unread,
Apr 20, 2023, 3:56:15 PM4/20/23
to Google Mobile Ads SDK Developers
Thank you for the update i wanted to ask about parent child relation that you told in previous messages?

Mobile Ads SDK Forum Advisor

unread,
Apr 21, 2023, 5:16:59 PM4/21/23
to mianha...@gmail.com, google-adm...@googlegroups.com
Hi Mianharisali,

When an admanager ad unit fails to load, it inherits properties from its parent ad unit. This is an AdManager feature.

Hope this helps,

mianha...@gmail.com

unread,
May 2, 2023, 6:23:41 PM5/2/23
to Google Mobile Ads SDK Developers
Hi
Is there any update ? 

Mobile Ads SDK Forum Advisor

unread,
May 3, 2023, 6:24:00 PM5/3/23
to mianha...@gmail.com, google-adm...@googlegroups.com
Hi Mianharisali,

We do not have any updates on this issue at this time.

Thank you for your patience,

mianha...@gmail.com

unread,
May 20, 2023, 6:02:14 AM5/20/23
to Google Mobile Ads SDK Developers
Hi
Is there any update ? 


Mobile Ads SDK Forum Advisor

unread,
May 23, 2023, 2:08:19 PM5/23/23
to mianha...@gmail.com, google-adm...@googlegroups.com
Hello,

We have no update on the issue. We will let you know when we have next steps.

- Nick

ref:_00D1U1174p._5004Q2fpOhQ:ref

mianha...@gmail.com

unread,
May 25, 2023, 10:37:46 AM5/25/23
to Google Mobile Ads SDK Developers

You acknowledged and replicated this issue and its been 7 months and there is no update. Developers are suffering because of unwanted ad requests. Please try to solve this on priority bases.

mianha...@gmail.com

unread,
Jun 12, 2023, 2:02:50 PM6/12/23
to Google Mobile Ads SDK Developers

Hi
Is there any update ? 

Mobile Ads SDK Forum Advisor

unread,
Jun 12, 2023, 6:09:06 PM6/12/23
to mianha...@gmail.com, google-adm...@googlegroups.com
Hi Mianharisali,

The banner view will not automatically load an Ad on `OnFailedToLoad()` if configured correctly. We recommend to verify that the ad unit requested is correct and with the appropriate refresh setting. 


In this specific case, the ad unit requested was malformed (missing the r in the ad unit id) which disabled the ad units refresh setting.

Hope this helps,

mianha...@gmail.com

unread,
Jun 12, 2023, 6:19:54 PM6/12/23
to Google Mobile Ads SDK Developers

Hi
What do you mean by (missing the r in the ad unit id) ? 
There is no "r" in admob page in ad units.
it looks like this.
ca-app-pub-xxxxxxxxxxxxxxx/xxxxxxxxxx

and you said in your last few messages that you were able to reproduce this issue. and now you are saying that this is because of ad unit id. 

Mobile Ads SDK Forum Advisor

unread,
Jun 13, 2023, 11:53:41 AM6/13/23
to mianha...@gmail.com, google-adm...@googlegroups.com
Hi mianharisali,

The original bug (November 9th) and attached sample has replication steps which require submitting an incorrect ad unit id. The ad unit id given was "/***/example/banner" but the request included "/***/example/banne" without the "r".
Reply all
Reply to author
Forward
0 new messages