Non-test ads return "No ads to show" under curtain conditions

237 views
Skip to first unread message

qeot...@gmail.com

unread,
Feb 20, 2018, 4:45:28 AM2/20/18
to Google Mobile Ads SDK Developers
Hello,

I'm an iOS developer integrating AdMob, and my objective is to always show a banner ad in our iOS application, until the user performs the corresponding purchase. However, I'm facing "No ad to show" error under curtain conditions.
  • The app is not published to App Store yet.
  • I'm testing with iPad Mini Retina, iOS 11.1.2, Google-Mobile-Ads-SDK 7.28.0 (via CocoaPods 1.4.0), Xcode 9.2, Objective-C.
  • I'm using a portrait smart banner, providing the constraints that fix the bottom and the horizontal center of the banner.
  • If I enable "Limit Ad Tracking" in Settings, I get "No ad to show".
  • If I slightly change the banner settings (e. g., switch from kGADAdSizeSmartBannerPortrait to kGADAdSizeLeaderboard), I start getting "No ad to show", and that continues until I reset my advertising ID.
  • In regular situations (a new user with disabled "Limit Ad Tracking" and no configuration updates), the banner seems to work OK.
  • If I enable Test Ads (by using ca-app-pub-3940256099942544/2934735716 ad unit ID), the banner is always displayed correctly, including all the situations listed above.
So, my questions are as follows.
  • How should I react to "Always test with test ads" instruction from the guide? What's the purpose of testing with test ads, if the regular ads behave differently?
  • Do we expect the problem to go away as we release the app to App Store?
Thanks,
Dmitrii Trofimov

mobileadssdk-a...@google.com

unread,
Feb 20, 2018, 1:13:38 PM2/20/18
to qeot...@gmail.com, Google Mobile Ads SDK Developers
Hi Dmitrii, 

Thank you for contacting us. That's right. It is always recommended that you always use test ads while developing. However, if you configure your device as a test device, you will be able to load ads by testing with your Ad Unit ID. Please refer to this guide on how to do so. 

This said, if the account settings and your implementation works fine for test ads, then you will be able to load ads without any issues. If you continue to have an issue with this, please provide us the Ad Unit ID along with the complete device logs, so I can take a look. Please use Reply privately to author option to share the details.

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog and Google+ page:
    http://googleadsdeveloper.blogspot.com
    https://plus.google.com/115658573333388777174/
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

qeot...@gmail.com

unread,
Feb 21, 2018, 2:55:41 AM2/21/18
to Google Mobile Ads SDK Developers
Hello Bharani,

Thanks for your response! I've just replied to you privately, but I see no way to view my message again. Please, let me know if you can't see my message (with console and Charles logs).

Thanks,
Dmitrii Trofimov

mobileadssdk-a...@google.com

unread,
Feb 21, 2018, 2:14:23 PM2/21/18
to qeot...@gmail.com, Google Mobile Ads SDK Developers
Hello Dmitrii, 

Thank you for sharing the details. In order to receive ads using the Google Mobile Ads SDK, it is required that you disable Limit Ad Tracking setting. Google honors the Limit Ad Tracking setting and enabling this may decrease the fill rate. Can you disable this feature and see if you're able to load the ads? 

Let me how it goes. 

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

qeot...@gmail.com

unread,
Feb 22, 2018, 2:04:14 AM2/22/18
to Google Mobile Ads SDK Developers
Hello Bharani,

Thanks for more info. As I said, when Limit Ad Tracking is disabled, ads are displayed correctly. However, the expected behavior of this option is to prevent just the ad tracking, not the ads themselves, otherwise everyone would use it to get rid of all ads.

Here's a quote from another thread:

The Limit Ad Tracking option should not have any significant effect on Ad Serving

Could you please clarify the expected behavior of AdMob banners with Limit Ad Tracking enabled? Is this option expected to stop banners from showing or not? Is this behavior specified in any AdMob guide? That would be a very important AdMob issue affecting the very idea of using ads in a freemium product.

Regards,
Dmitrii Trofimov

mobileadssdk-a...@google.com

unread,
Feb 22, 2018, 2:00:49 PM2/22/18
to qeot...@gmail.com, Google Mobile Ads SDK Developers
Hello Dmitrii, 

Thank you for pointing that out. The Google Mobile Ads SDK will automatically pass the IDFA on every Ad Request. However, turning on the the Limit Ad Tracking option from the device prevents the SDK from passing the IDFA. Enabling this setting will reduce the fill rate and might result in no fill. 

Hope this addresses your concern. 

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

qeot...@gmail.com

unread,
Feb 23, 2018, 6:45:25 AM2/23/18
to Google Mobile Ads SDK Developers
Hello Bharani,

Yes, I do understand that Limit Ad Tracking options passes no Advertising ID (a zero one). But I see no reason why it should (or might) result into serving no ad. There's no technical issues on the client's side, and the network connection is OK. So we do expect the server to serve some ad. If I'm wrong about the expected behavior, please, reference the corresponding guide describing the corresponding expected behavior. Otherwise it's meant to be an undocumented AdMob bug (a commonly reproducible one, see this post). See the original question:

Is this option expected to stop banners from showing or not? Is this behavior specified in any AdMob guide?

Thanks,
Dmitrii Trofimov

mobileadssdk-a...@google.com

unread,
Feb 23, 2018, 1:57:46 PM2/23/18
to qeot...@gmail.com, Google Mobile Ads SDK Developers
Hi Dmitrii, 

Since this is a setting specific to Apple, we recommend that you load ads by turning off the Limit Ad Tracking to serve ads. The Google Mobile Ads SDK will automatically pass the IDFA in the Ad Request. The SDK uses IDFA under the guidelines laid out in the iOS developer program license agreement. Turning on the the Limit Ad Tracking option from the device prevents the SDK from passing the IDFA information. You may refer to this forum post and our release history page for additional information.

Let me know if you have any other questions.


Regards,
Bharani Cherukuri
Mobile Ads SDK Team

qeot...@gmail.com

unread,
Feb 27, 2018, 2:55:22 AM2/27/18
to Google Mobile Ads SDK Developers
Hello Bharani,

There's no way to disable Limit Ad Tracking programmatically. The end user enables or disables it in device settings on his own. There are about 15-18% users having this option enabled, and we need to serve ads for them as well. And that would be a bad idea to tell them: "Please, disable Limit Ad Tracking in your Settings app, otherwise you won't be able to see the ads motivating you to purchase Ad Free."

Thanks,
Dmitrii Trofimov

mobileadssdk-a...@google.com

unread,
Feb 27, 2018, 3:10:34 PM2/27/18
to qeot...@gmail.com, Google Mobile Ads SDK Developers
Hello Dimitrii

As mentioned previously, the Mobile Ads SDK will send the IDFA information in the ad request. Hence it is recommended that Limit Ad Tracking setting is disabled to avoid low fill rates. If you're facing any serving related issues enabling this setting, you could reach out to the AdMob Product Support Team for further assistance. 

Regards,
Bharani Cherukuri
Mobile Ads SDK Team

mobileadssdk-a...@google.com

unread,
Feb 28, 2018, 10:08:42 AM2/28/18
to qeot...@gmail.com, Google Mobile Ads SDK Developers
Hello Dimitrii

Thank you for your patience. I have shared your concern with the team. For us to take a look further, could you share us another set of Charles Proxy logs with SSL Proxy enabled for both the scenarios where LAT is enabled and disabled, so I can share it with the team? You can reply back using the Reply privately to author option.

Thanks,
Bharani Cherukuri
Mobile Ads SDK Team 
Reply all
Reply to author
Forward
0 new messages