How to work with ad networks properly: Unity Ads example

Nikita Skryabin, CMO at AdQuantum, explains how to run and optimize ad campaigns on Unity Ads. 

While promoting mobile apps, sooner or later you will face the need to buy traffic from ad networks. One of the most popular and qualitative ad networks is Unity Ads. Publishers use Unity Ads to monetize their mobile games. Meanwhile, advertisers use Unity Ads to attract relevant mobile users.

Using examples of cooperation between the AdQuantum marketing agency and partners, this article explains how to run ad campaigns on Unity Ads and optimize them efficiently. Additionally, we will analyze formulas step by step which you will need when working with Unity Ads.

Step 1. Entering the Waterfall
As an example, we are considering the United States (US) region. The numbers may vary for different countries, platforms, and game genres.

This is what the CPM distribution for users in ad monetization looks like. The minimum limit is $10. In practice, we understand that this is $7-8.

Unity buys impressions by CPM (cost per mille), but we pay by CPI (cost per install). This means that although we pay for every install, the demand that we have to create on our side must be equivalent to eCPM = $8.

How is demand generated from our side?


IPM (Installs per Mille) = CVR, i.e. the number of installs from 1000 impressions or the conversion from impressions to installs.

When starting a new project, you may not be able to enter the waterfall. Below we explain why.

Data by days:

Let’s say we have the following situation with an app we are working on. On the screenshot you can see app data by day. 

Here’s the data on ad creatives for this app.

The key metrics are CPM = $3.32, CVR = 0.51% and CPI = $0.65. That means, to enter the waterfall, we need to increase the CPM by at least 2 times.

To do this, we can go by one of the following ways (or both at once):

  1. Increase CPI by $8 from 3.32 = 2.4 times. The new CPI in this case will be $1.56.
  2. Launch new ad creatives and thereby increase the CVR to 0.51*8/3.32 = 1.23%.
  3. Reach out to your Unity Ads manager and ask what could have gone wrong.

It is not always possible to follow the way of increasing the CPI, since the LTV of the project may be lower than the CPI for entering the auction. To apply the 1st point, you need to check it against the LTV of the project.

It is crucial to set a bid higher than LTV, especially when the project is new. We train the advertising system on all sources and are looking for high-quality placements.

Don’t hesitate to contact your managers for support and also to take pieces of advice from them.

Below you will find a chat with the UA manager from the agency side and two managers from Unity Ads. This is a completely normal conversation between the representatives from both sides.

According to the calculations, it is worth raising the rate by $1.56. But judging from our experience, it is better to go by 15-20% increments. At the same time, you should start working on new ad creatives.

If you did everything correctly, you entered the auction! Hooray! Now, the next step is optimization.

Step 2. Optimization as a type of UA campaign
Currently, there are 3 main types of Unity Ads campaign optimizations:

  • CPI (or simply install) optimization

Unity buys the maximum volume of traffic at a set price. The level of control is high.

Pros: you have an opportunity to use Source bids, which means you can set a certain bid for each publisher. This usually is calculated based on the LTV rate.

Cons: traffic quality may vary. New mobile games with low traffic quality may appear in the ad network. They need to be separated from the list of placements in a timely manner. In reality, when working with this campaign type, the cheapest users are being purchased and Unity does not pay attention to their quality (Retention + ROAS). Suitable for all projects. Mandatory campaign to switch to Retention and ROAS.

  • Retention optimization

Here Unity buys users who are likely to be playing the game on day 7. This optimization uses 2 rates: the lower and upper thresholds, which are Base Bid and Max Bid, respectively.

Pros: high-quality traffic.

Cons: no possibility to use Source bids.

Let’s see in more detail how this type of optimization works. Unity collects user data from other UA campaigns and then is able to predict which users will have a high retention rate (RR) and which will not. The algorithm is constantly being retrained, i.e. 5-10% of traffic is bought to measure RR7d for comparison with historical data. Also, if the project had a poor quality build and the campaigns were retrained on it, then after loading a good build, the ads system requires some time for adaptation.

Best suited for projects with ad monetization and good retention on day 7.

Lets compare the RR1d and RR7d of Install and Retention Campaigns.

With Retention campaigns, you can acquire users with quality indicators 1.5 times higher (!) than with Install campaigns.


ROAS optimization
Within this type of optimisation, Unity buys users with a high probability of reaching the target ROAS7d. There are 2 parameters: MAX BID and D7 ROAS GOAL that are used.

Pros: high payback on traffic.

Cons: the small available amount of traffic.

Lets compare the quality of traffic on two projects: idler and battler for the US region.

The percentage of paying users in ROAS campaigns is much higher than in the two above-mentioned ones. Such campaigns are best suited for projects with IAP monetization, but could also be tested on projects with ad monetization.

If we compare the 3 types of campaigns by CVR, then Installs have the highest rate, and Retention and ROAS are several times lower. To buy quality users, we have to raise our bid. All publishers hunt them and they are more selective in advertising.

Step 3. Creative testing
An ad creative has two parameters that you have to pay special attention to. Those are LTV and IPM — in our case, IPM will be counted as the conversion rate metric (CVR). Ad creative testing refers to identifying these two metrics and comparing them to the other creatives’ ones.

Lets take the best ad creatives that are currently being run as a control group and see what the creative testing is like.

Algorithm for ad creative testing 

  1. Add the creative to the ad campaign

Creatives should be tested under the same conditions (with the same mobile publishers and bids) as the control group.

  1. Obtain data for assessing IPM and LTV

We need to gain 10,000 impressions to objectively estimate IPM. At the same time, to estimate LTV, 100 installs would be enough. If you have a BI system, then you are lucky and you can easily define LTV. If not, try looking at the cohort ROAS.

  1. Figure out what to do next

Its important that creatives pay off. Lets compare LTV data for a creative with CVR and eCPM from Unity. The example is taken from the AdQuantum_LG_iOS_US_Retention_Unity clicker from March 25 to April 8.

In the table, we have calculated the predictive profit per 1000 impressions. We calculated it according to the formula: LTV*CVR – eCPM.

LTV*CVR shows how high the conversion of a creative is and what audience it leads. It is also crucial to pay attention to Retention Rate and % Payers, but in our case, these metrics are already contained in LTV.

At this point, you should remember the following:

  • Creatives showing poor results (> -20% must be stopped) = Doggo_594_L + P.
  • Creatives going to -10% – 0% should be kept. The quality of traffic may change for the better with them + after site optimizations = as_72-1 and TOP_21s.
  • You can try to place creatives with high LTV in a separate campaign =
  • And the creatives with high CVR and low LTV can be placed in separate campaigns. (Usually, this is referring to misleading creatives).

Unity Ads does not provide impressions for a large number of creatives. Most likely, only about 10-20% of the TOP creatives will get into the rotation. Make sure that creatives with high LTV are constantly being promoted. They can be placed in separate campaigns which increases the likelihood that the ad system will give them impressions.

Decreasing and increasing the budget means reallocating money to more effective campaigns. This tool can come in handy if your total budget is limited. Keep track of which GEOs it is spent on. Think ahead about the structure of your campaigns. Divide the countries into 7-8 groups for convenience and time-saving.

It is defined at the level of country + campaign (i.e. on all publishers) or at a separate publisher level.

Working with Publishers (Titles/Sources)
There are 3 tools helping to work with publishers:

  • Black List (BL) — a list of excluded sites. The campaign will not participate in auctions for these sites. The bids for all publishers are determined at the campaign level.

These are the criteria to be guided by when adding a publisher to BL: 

ROI is < -10% and there is no way to lower the rate on a separate source.

ROI = LTV / CPI -1 — the accuracy of LTV, in this case, depends on the sampling size.

It should be admitted that this logic is only correct when you already have ad creatives that perform and know the LTV of the project. Traffic is provided by the system LTV = CPI.

An interesting question is on which volume of traffic should the ROI be defined? On a small volume, the LTV may not be exactly accurate. But starting already from 30 installations it is possible to exclude bad sites.

  • White List (WL) — limiting the list of sites (placements) for displaying a creative. The campaign will only participate in auctions for these sites. The bids for all publishers are determined at the campaign level.
  • Source bids — we have already mentioned this option above. This is the capacity to set different from the entire campaign bid on a specific list of publishers. It is worth using Source bids when you are aiming to increase or decrease the bid at a specific source. It can also be combined with BL.
  • Creatives — you are only able to turn them on and off in one campaign. To drive more traffic to a specific creative, you need to place it in a separate campaign with the appropriate bid.

The main difficulty is to decide from which side to approach optimization and by what algorithm to carry it out.

Let’s consider an ad campaign + performance of the creative. This is how we calculate LTV_CPM for each creative:



1242 has LTV_CPM = 1000*0.0249*0.39 = $9.7

1243 has LTV_CPM = 1000*0.0462*0.27 = $12.47, i.e. disabling a creative with a lower LTV wont help in this case. You can turn it off, but you will lose a significant volume of traffic. The ideal solution would be to put the creative with less volume to a separate campaign if this is necessary.

Always watch the dynamics of the campaign over a period of time. Ideally, take into account all the changes in the product.

The campaign has an institutional performance at the ROI level = -16%, you have to go to the publisher level. This should be practiced not only when you have negative results but at all times. It is possible to prevent the problem and turn off poorly performing publishers in advance, even in a good campaign.

We see that the overwhelming majority of publishers are in the negative zone.

Recommendations for such types of campaigns:

  • For publishers with >80 installs, set Source bids.
  • Reduce campaign bid by 10%.
  • Sites from 30 to 80 installs with poor ROI add to BL.

Here the logical question appears: why is the ROI of the campaign -16%, but we have reduced the bid by only 10%? There are two categories of sites: with and without volume. The volume is distributed unevenly and not even 80/20, but rather exponentially.

We will divide advertising platforms into two groups.

  • With the number 1, we mark the sites that we attracted <80 installs We also call them “basic”.
  • Lets mark with the number 0 those sites, from which we have attracted >80 installs — this is the “tail”.

With the main campaigns, we work using Source bids and influence the tail through the bid at the campaign level. The tail will eventually flow into the main ones.

Optimization of a campaign based on Retention Rate consists of adjusting bids, selecting creatives, BL, and moving individual sites into separate campaigns. Unfortunately, there is no Source bids function for Retention campaigns.

Step 5. Chain Quality — Cost — Volume
For each country, platform, and app, the upper and lower boundaries of the waterfall are different. And this goes for every ad publisher on any ad network.

Lets go back to our graph. We can buy traffic from one publisher at CPM price = $24 and CPM price = $8. What is the difference?

Here’s what it is:

For $8 we will buy a low volume of traffic and it will be low quality (spoiler: it can pay off in the case that we buy it at a cheap price). The person has already seen 30-40 ads in the app and he likes to play the mobile game.

For $24 we will purchase a high volume of traffic and its quality will be good.

The problem is that we cannot place bets at the top of the waterfall on all apps. Thus, we have to find a balance. The first impressions convert the best — it is still easy to acquire a user into a new product from another one. With an increase in the rate, in terms of CPM, the volume, LTV and IPM (CVR) will grow.

Lets illustrate this with the examples of two apps from the AppLovin ad network. The platform is Android, the targeting is aimed at the US audience:


Scaling Recommendations

  • Budget — make sure your top-performing campaigns fit within your budget.
  • Campaign type + bid — run all types of campaigns. All 3 types of optimization can work well on certain projects.
  • Ad creatives — test all creative formats, both standard videos and playable ads. Be sure to test short videos (15 seconds), medium (20 seconds), and long ones (30 seconds).

At the stage of scaling, you can neglect localization and launch creatives in the English language. In fact, localization is desirable only for languages ??in which hieroglyphs are used. All other countries are fine with the Latin alphabet or English language (Russia, Kazakhstan, etc., included).

General recommendations

  • Always check out new campaigns 2 hours after launch. Many mistakes can be avoided!
  • If something went wrong, stop the campaign and fix the problem together with someone with access to the required settings.
  • Observe strictly naming campaigns and creatives! It will help in the future with analytics.
  • Dont make drastic changes to your campaigns. Try not to raise or lower your CPI by more than 50% per publisher at a time and more than 20% per country/campaign. Let your campaigns live at a new rate.
  • Communicate more with managers. Ask for tips on creatives, moderation, platforms, WL, and everything! They are interested in helping you!
  • The budget should be limited for all campaigns! Where you want to set an unlimited budget, it is better to set a very large budget.
  • Creatives are the main growth point. There are never enough creatives. Try to test at least 5 creatives per week.
  • Keep a history of campaign changes. If something goes wrong, it will help restore the result. This will also make it easier to identify what might have broken the campaign. You can keep a log in the project chat or to-do list.
  1. Materials

Unity Ads Help Getting started – Knowledge base

How Unity tags users Audience Pinpointer – Knowledge base

If you have a product, the strategy for which has been worked out, but you do not have enough volume and profit, come to us.