I have seen mobile games with multiple video and banner ad providers. While Adsense tends to be used for banner ads, anything that takes over the screen (full screen) typically has redundancies (in my experience) in the form of multiple Ad providers.

Why would I want to do this too?


3 Answers 3


While using only one ad network is fine for some projects, there are several problems that can arise. Using multiple ad networks can help resolve them. However, managing multiple ad networks can sometimes be a chore and require significant manpower to keep at optimum efficiency.

I'm not sure what this community's idiom for backing up answers is, but this answer is based on my experience in publisher-side ad operations, which includes optimizing ad network revenue. Although I have never worked with a mobile game, I have worked with mobile app advertising.

Empty Impressions

An ad network usually won't fill 100% of all the impressions your app requests. When that happens, the network can either leave the space blank or it may fill it with a free ad for a charitable cause or government program. For example, when AdSense doesn't have a paying ad available for mobile sites it will often provide an ad for the U.S. Forest Service ("only you can prevent forest fires").

You don't get much (if any) revenue for these, so its preferable if you can fill them with something else. Many publishers use multiple ad networks to resolve this. A common technique is daisy chaining: when your first ad network doesn't return a paid ad, you can ask a secondary ad network to fill it, and so on. Another (more difficult) approach is to allow each network to bid on the ad placement and return only the ad which is the most profitable. Some ad networks discourage this, so it's best to check into the terms of your agreement with them.

Low-Value Impressions

A second related, but less severe, problem is that sometimes an ad network will provide low-value ads. For example, your ad network may not have many advertisers who want to advertise on your particular app. One solution is to switch to an ad network which specializes in your audience, but that can be a pain - when their client base changes are you going to switch to a new ad network?

Instead, most publishers will use multiple ad networks to make sure that they are getting good deals. They will set a minimum CPM (cost per thousand) or CPC (cost per click) and only accept ads which meet those requirements. When their primary ad network doesn't return something suitable, ask the secondary network, and so on.

Maximizing Value

Ad networks only have a certain number of impressions to give away. If your app has a significant number of impressions in a small advertising market, you will quickly exhaust the high-value campaigns and your network will return lower-value campaigns.

Using multiple ad networks can help you maximize your revenue in this case. By opening yourself up to a larger pool of advertisers you will be less likely to exhaust the pool of higher-paid ads. In addition, you will be more likely to find advertisers interested in your particular app.


One thing we do is use "mediators". Supersonic is a mediator. You install their plugin plus, let's say two others for simplicity, Vungle and AdColony. When an ad is requested, Supersonic figures out whether a Vungle or AdColony ad will pay better.

Another reason to use mediators is that most ad providers only allow a single client to play a certain number of ads per day (or some other time period that depends on the provider). With Supersonic, we can serve the maximum number of ads for both Vungle and AdColony.

In practice, you can use many more than two ad providers as well.

  • 24
    \$\begingroup\$ Keep in mind that too many ad providers and your users might delete your app. Had one game that literally had a 8 GB cache of ads on my phone after playing for about two days... \$\endgroup\$
    – phyrfox
    Feb 23, 2018 at 16:51
  • \$\begingroup\$ Definitely a valid concern. :) \$\endgroup\$
    – Almo
    Feb 23, 2018 at 16:59
  • \$\begingroup\$ @phyrfox That's just bad design imho. If your ad provider's plugin doesn't clear the cache, then you (as the game designer) should be doing it. \$\endgroup\$ Feb 24, 2018 at 9:33
  • 2
    \$\begingroup\$ @JohnHamilton yeah, I agree. The app at have though, forced mine. No whining for taste, I suppose. \$\endgroup\$
    – phyrfox
    Feb 24, 2018 at 9:45
  • \$\begingroup\$ We’ve started using a service called Enhance which puts all of the ad networks and mediation adapters into your .apk or .ipa after your build is complete. This greatly simplifies integration as we don’t need to update versions ever. They handle it for us. And it’s free, too. \$\endgroup\$
    – Ed Marty
    Feb 25, 2018 at 23:41

Two other reasons are for serving up fresh content & for back-fill purposes.

  1. Sometimes people don't want repetitive ad content to be shown on their site/game.

    Too many repetitive ads tend to make people think that nobody is using their site/game anymore & what they are look at are default pre-canned ads.

    Example: If you see the same ad somewhere for months, then you assume that it's not a good place to go spend ad dollars on. The assumption is that nobody is watching those ads at that site/game. So advertisers move along to the next site/game.

  2. To make sure that ads are served up, in case of an outage at the ad provider's network location.

    Switching ad providers for back-fill purposes, ensures that if 1 ad provider is down & can't serve up ads, then another one will be able to provide an advertisement.

    Example: It seems to happen quite often, when a 3rd party ad provider is plugged into a site & then 6+ months later, they go out of business. That can cause sites to wait until the http request times out, before the page is fully loaded. The net effect is that the ad is never displayed & could render out like a broken image box.

Using multiple ad content providers can alleviate those 2 problems. If a smart developer writes a set of back-fill rules for a website, then they can potentially check to make sure that the user isn't seeing a repetitive ad & the ads load fast enough. (The script could possibly force a timeout to switch to another ad provider, if an ad doesn't show up with-in a pre-determined threshold.)


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .