An Overview of the Top Paying CPI Mobile Ads

“Many a small thing has been made large by the right kind of advertising.”

Anyone who doesn't know Elaine is missing out on a lot. A LOT. Not only is she a great person, he is super smart and super motivated. True story – when I was heading home after Chad's App Empire event, I saw Elaine walking to breakfast, laptop in hand, to “slay some Revmob integrations.” She'd been up for 4 hours already. What a gangster. For anyone interested, I definitely recommend checking out the rest of her stuff at The Chocolate Lab Apps. She's a great teacher and even has a course that's been very helpful for a lot of people.  – Carter

There are a few simple ways to increase your advertising revenue.

1. Show more ads. Usually this means making new games, adding an extra ad to an existing app (don't go too crazy though) or increasing your user retention so people stay playing your games for longer. More time in your game = more ad impressions = hopefully more installs.

2. Filter your ads. You can choose to show ads that you think will appeal to your target demographic. So if you're making kids games, show ads for other kids games. This should mean more installs for every ad shown.

3. Bigger payouts. Increase how much you get paid when people install a free game.

The first two points above are fairly self-explanatory. For the third, the secret to getting paid more money for ads is to find out which ads are paying the most money and see if you can target them.

Go to campaign > analytics and put in the options below. To to this accurately you'll have to have no ad filters set up in your campaigns.


The file will be too large to view so after about 30 seconds you'll be able to open the CSV file. Open it in excel or similar.

First do a ‘find and replace' to remove all of the $ signs. Now create a pivot table.


Select all the content in the spreadsheet, and then (in Office 2010 for PC) you can create a pivot table by selecting “insert > pivot table” from the top menu area.


When the grey popup box appears, be sure and select the ‘new worksheet' option.

Now that you have your pivot table created in a new sheet. You should revise the parameters to show Row labels: “App Name” and Values: “Impressions”, “Click”, “Installs”, and “Money earned”. You can select these in the pivot table on the right of the screen.

Go into the ‘row labels' column, so drag them as needed to the ‘values' column.

Then you need to change update the ‘impressions, clicks, installs, money earned' to the SUM of. You can do this as in this screenshot, for each of the 4 columns.

So select ‘sum' instead of ‘count' for these 3 columns. Save this file as an xls / xlsx file, and then copy all the data in this sheet into a new blank sheet. Create one extra column (seen here in green) and call it money per install. Then put filters along the top headings in all of the columns.


Money per install = Sum of Money Earned / Sum of Installs. In this case, I will type this into the first cell under ‘Money per install' =E5/D5 and then copy this the whole way down, so it automatically generates the CPI of each ad. Then I use the filter on ‘Money per install' and select it to show from largest to smallest.

Here is the list of top paying ads per install. Note this is a very good indicator but not quite exact…

1. The ‘sum of money' earned column also includes any clicks paid for these ads as well. This pay very little so I've ignored them for now and they shouldn't make a big difference.

2. From what I understand these CPIs are 70% of what the advertiser actually pays, with the ad company you signed up to taking 30% commission or thereabouts. Also worth noting if you qualify for direct deals you can get 90% of what the advertiser is paying.


So what can we learn from these stats? What ads pay the most when people click on them in your game and install the promoted free game? Stats change every minute of course, but here's whats happening now….

– 21 games are paying more than $2 eCPM right now
– The highest eCPM by far is Bingo Rush which is paying approx. $5.60 per install
– 9/21 (42%) top CPIs are for casino games. This is the biggest category.
– 8/21 (38%) are fantasy games. Nearly as many.
– Then there's a crime game, a war game, a sports game and a game called ‘BoA' if you can figure that one out 😉


So two massive game types are dominating the top paying ads list – casino and fantasy games.

The question is: how do you plan to use this information to your advantage?

Learn more about maximizing Chartboost revenue in your iPhone apps by checking out my course here.


  • Jane March 26, 2013

    This is so helpful and Elaine is a gangster. I freaked when I heard I had to make a pivot table in Excel but this step by step makes it so much more clear. The info is gold as well! Thanks Elaine and Carter too.

  • Mike@Mageeks March 26, 2013


    Thanks a lot for this tutorial – I’ve been trying to do the same with Chartboost, but your approach is simpler :). My question here – how do you use received data – I’ve been trying to remove all games/advertisers, that don’t pay well, but once you have a good amount of campaigns (as Carter described – divided by CPI & priority) it’s a lot of manual work with high chance of making a mistake. Did you find a better solution to filter the advertisers that I’m missing in the CB account?

    Again thanks a lot Elaine, and Carter – keep it up man!

  • Elaine Heney March 26, 2013

    Hi Mike,

    Thanks, glad this was useful. On the app filtering, I’ve four tiered campaigns set up, based on types of apps. I definitely wouldn’t have the time to do 4 campiagns per app that’d be crazy 🙂 I’d do something like this: Racing highest, racing high,racing medium and racing low. I was playing around filtering apps out with low eCPMs… the end result was somewhere between no difference / a little bit worse. The issue was while I was removing the badly performing ads and my eCPM was nearly double, my impressions had about halved. What was probably happening is because I didn’t know that only (for example) 2 different low paying ads were displaying in (for example) Singapore, I was deleting those ads in Chartboost. So my eCPM was going up, my impressions were going down. But instead of earning $10 from low eCPM ads in Singapore, I was now earning $0 from Singapore. I was losing revenue, even if it was just low revenue. eCPM is an interesting number, but a much more important number is your daily revenue figure. So I decided to quit and just leave all the ads on in all campaigns. I might have missed something here so would be interested to hear any others who’ve cracked this 😉

    What probably makes sense though is if you know your demographic pretty well, take out a few (not many) ads that will obviously not appeal to your users. It’d be handy to have an interactive map on Chartboost so you can see all the countries with ads being shown, and as you start to filter ads out, any country with no ads comes up with a red warning or something like that.

    Biggest tip though on maxmising chartboost revenue – direct deals. You’ll need 20,000 bootups/day to qualify and then it takes a while to get a few deals lined up, but they can work really well. Make sure it’s for a game that your users already love to download, and then set it at the highest priority.


  • Carter Thomas Carter Thomas March 26, 2013

    I agree with everything Elaine said – the biggest problem with “optimization” in one network alone is sacrificing fill rate. Based on the way advertisers bid, fill rate almost always leads to higher revenue than premier campaign setup.

    The best way to do this is to get Direct Deals and to always have a basement campaign. The other option, if you’re feeling up to it, is to build in some house ads to your game code. If something doesn’t serve up (missing inventory), your game can at least show something.


  • kris March 28, 2013

    Thanks guys for the tips. I’ve been thinking of doing something like this on Revmob ever since I started getting as low as $0.02 for installs. Anyone else getting that?

    @Carter at the start of your article you called Elaine a she and he. lol I think God is the word you’re looking for lol.

  • Raymond April 2, 2013

    Does it mean I should create a mini-casino game?

  • Dustin McKay April 18, 2013

    This totally helps me focus on what type of game, and advertisers I should be targeting. I just watched your video with Chad, and though it seems obvious now, targeting the skinning of your game to specific types of advertisers is great advice.

  • tasnim ahmed April 22, 2013

    Hey Elaine,
    Thanks for the post.but i cant find like yours after following after the steps
    “Go to campaign > analytics and put in the options below. To to this accurately you’ll have to have no ad filters set up in your campaigns.”
    when i am following this steps
    i get this kind of results


  • Elaine Heney April 22, 2013

    Hi Tasmin,

    In the first png file there it looks like you are only looking for ‘todays’ stats. If you change ‘Today’ to ‘Past Week’ in the Chartboost website, you’ll get more data to analyse in the csv file that you will download.


  • tasnim ahmed April 23, 2013

    I tried with today,yesterday,past week.
    but i am not seeing data like yours.
    when i selected and refresh which one should i click?there are two button is highlighted with red in the following images

    if i click on the left button the .csv files look like below images


  • Elaine Heney April 23, 2013

    Hi Tasmin,

    You need to use the Chartboost settings I used. The correct settings are:

    – Group by app
    – All platforms
    – Past week
    – Aggregated weekly

    You are using:

    – Group by campaign (this is not correct)
    – All platforms
    – Past week
    – Aggregated weekly

    If it doesn’t look right, just compare against the screenshots in the blog post.

    Cheers 🙂

  • tasnim ahmed April 23, 2013

    Thanks very much everything is working right 😀

  • Juan June 19, 2013

    Hey Carter,

    I installed RevMob today and followed all the instructions. In Xcode simulation, it shows the ads from RevMob correctly.

    But in my friends’ devices and mine, the ads are not showing. What could be the problem? I did everything. In RevMob’s website, everything seems to be fine and ready to go.

    Do I have to submit it and to where?

    I will greatly appreciate your help.

    Thank you.


Leave a Comment