title: Some of Users of an Android App cannot Load AdMob ADs
body: <p>I am asking for a best practice or implementation.</p>
  
  <p>My app's core function providing service for a long time (2 to 4 hours). The users have some active time and when they use the service, the active time is consumed. The user can restore the active time by watching a rewarded video AD of AdMob.</p>
  
  <p>The problem is, some of the users (less than 3%) cannot see any ADs on their device. I got many complaints that they cannot load the ADs. Most of the users not seeing ADs are using an AD-blocker, but some are under "AD-no fill" status (error code 3). In this case, it seems my app generates too many AD-requests (by users clicking "watch AD"), so AdMob cannot always fill the ADs. My app lets an user to watch ADs less than 10 times a day.</p>
  
  <p>I have some plans and would like to know which one is better:</p>
  
  <p>1) Include another AD-provider. When the AD of AdMob is not filled, my app loads another AD.
  Drawback: 2x code complexity and 2x maintenance effort.</p>
  
  <p>2) When the real AD is not filled, load an test-AD of AdMob.
  Drawback: no money</p>
  
  <p>3) When an AD is not filled, load another AD unit of AdMob.
  Drawback: I am not sure if this works. The AdMob should have determined the user (not AD-unit) is not getting an AD on this request, so generating another request doesn't help. And based on this <a href="https://stackoverflow.com/questions/39968622/admob-loading-multiple-rewarded-videos">AdMob loading multiple rewarded videos</a> discussion, it is not allowed to load multiple AD-units.</p>
  
  <p>4) The others I didn't come up with.</p>
  
  <p>5) Is 10 times of watching rewarded-AD too many?</p>