tags:

views:

225

answers:

4

Hey all,

I've just released my first application with iAds enabled. It's been accepted by Apple and I've already earned something minor like $0.28. Now to me this means that ads have been showing on some of my users devices.

I was aware that my device will only show test ads, so I downloaded the application on a friends phone, and tried that. On this device, the ads simply never show so I was just wondering, do the ads only show at certain times? After a set time? Or have I set it up wrong? I wouldn't have thought Apple would have accepted my binary if it was setup incorrectly but I guess that's a possibility.

I was going to post the link to see if anyone could test it for me, but not sure if SO would be happy with that or not.

Thanks

James

+3  A: 

iAds will show test ads until Apple approve the application. Once the application is approved, the iAds will be switched to live.

You didn't mention your location, or your friends location.

As far as I'm aware, iAds are still only showing for users that live in the USA. Even then, the fill rate for iAds have been shown to be around 10-11% (not very high at all).

This means that for every 100 ad requests received, only 10 or 11 are going to actually show an iAd. the other 90-89% will show nothing.

Hopefully the fill rate will start to improve as Apple's ad inventory increases in size.

The other issue is that it seems the iAd framework will not show repeat adverts. That is to say that once a particular iAd has been shown, it won't be shown again on that device for that session (the length of a session is vague too...).

So, check your location, check your current fill rate on the iTunes Connect iAd section.

And as you said yourself, you've already made $0.28 so something must be showing.

Jasarien
Hey thanks, yes I'm in the UK so maybe that's it. I was unaware of the Ads only showing in the US. Maybe I will only make it available there for now.
ing0
One more thing, only iOS 4
texmex5
@texmex5, yeah, I tend to take things like that for granted these days! Doh!
Jasarien
Also, you can not distribute to anything less than iOS4 anyway, can you?
ing0
You would be able to build an app that does runtime checks to decide whether or no to display iAds on a 4.x device, or something else on a 3.x device.
Jasarien
We've decided to use AdMob, since it will show both - iAds and other, for older devices or when no Ad is available in the iAds system.
texmex5
@texmex5 yes I have now done the same. Surprisingly, after implementing it yesterday, my app is already "In Review"!@Jasarien this is all well and good, but I thought you couldn't submit an application built with anything prior to iOS4? When I upgraded my SDK the previous build options were removed.
ing0
You build against the latest SDK, but set a deployment target of the lowest version of iOS you wish to support. Then you conditionally use newer APIs based on whether or not the OS supports them using runtime checks. You don't need to build against 3.x to run on 3.x. **Build against latest, set deployment target to oldest you wish to support** that's the rule :)
Jasarien
+3  A: 

One thing I do on my Beat The Heat app is show an AdMob ad when iAd fails to receive an ad. This way you won't lose revenue from non-US users.

- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
    if (self.bannerIsVisible)
    {

        [UIView beginAnimations:@"animateAdBannerOff" context:NULL];
        // banner is visible and we move it out of the screen, due to connection issue
        banner.frame = CGRectOffset(banner.frame, 0, -50);
        [UIView commitAnimations];
        self.bannerIsVisible = NO;
    }

    adMobAd.hidden = NO;
    adMobAd = [AdMobView requestAdWithDelegate:self]; // start a new ad request
    [adMobAd retain]; // this will be released when it loads (or fails to load)
}
ibeitia
You could go one better and ingerate the AdWhirl SDK (http://adwhirl.com), allowing you to set priorities on a number of different ad networks and specify what to show when an ad fails to load.
Jasarien
I was thinking of doing this when I found out about iAds only being in USA. While it's coming the the UK in September, this is great thanks!
ing0
+1  A: 

It doesn't sound like anything is "wrong" with your code.

We also are getting only 10% "fill rate" with iAds.

The real question is what DETERMINES "fill rates"?

Apple really has such a small "ad inventory" that they can't even serve "20 ads for 20 requests"??? (How can that be???)

Or are certain ads TARGETED only for certain apps groups?

You didn't mention it... but is your app a game, utility, sound, travel, etc?

Do people creating the ads, tell Apple "only put this ad in GAMES apps" or "only put this ad in TOP apps"?

Also, how "popular" is your app?

Patricia
Well, after finding out that iAds only works in the USA, I figured that's why I wasn't getting many requests. You may be right with that as well, but as 'ibeita' suggested I simply implemented AdMob and show that whenever iAds doesn't show. You can use the similar delegate methods to make it slide on and off the screen. Mine is a game btw, not massively popular but if you want to make it one more download you can get it here: http://bit.ly/d2yyhk
ing0
Even though ads are "USA Only"... Apple doesn't even have 20 ads... to fill 20 requests???? (Even though iAds is "new"... it must have at least 100 ads in the database.) No?
Patricia
I don't know. I'm getting the ads in the UK now though. The fill rate is one in every 5 or so requests.
ing0
+1  A: 

My 2 cents: My hobby-project iPhone app "FlashLight4 FREE" w iAds got approved and initially (Thurs night I saw 30% fill-rate but since then it has been <10%. Definitely recommend to use some fallback - seems like apple has little inventory..

UPDATE 8/8: Yup fill-rate is low - after 3 days I see ~10% (in US) and zero% all other regions.

Niels