The nuances of our ad monetization setup: When to replace rewarded ads with interstitials, and when it’s better not to show ads at all

Below is a look at how we approach ad monetization setup in practice: bid floors, formats, placements, timing — and the trade-offs behind each decision.

We currently use bid floors specifically for interstitial ads across all our projects. A bid floor is the minimum price below which an ad simply won’t be shown. If the network can’t meet that price, the player continues playing without seeing an ad.

The key idea here is simple: we reduce ad pressure for the player not at the cost of meaningful revenue, but by cutting impressions that wouldn’t bring much value anyway.

Instead of showing cheap ads that barely move the needle, we wait until higher-value impressions become available.

Bid floors vary by project and by country. In some cases, the floor might be set at 10% of the average eCPM; in others, 20–30%. On some projects, we’ve found it more profitable to set the bid floor as high as 40% of the average eCPM, effectively cutting off all cheaper impressions.

Without a bid floor, networks can freely “discount” a player. With a bid floor in place, they have only two choices: either raise their bid or lose the impression altogether. Yes, we lose some cheap impressions and a small portion of low-value revenue. But for mid- and high-priced impressions, eCPM increases — and as a result, overall ARPDAU grows, even if total impressions go down.

To illustrate: even with an average CPM of $50, it’s very possible that most of the revenue comes from players with CPMs above $100. One expensive impression can easily outweigh several cheap ones.

By introducing a bid floor, we effectively prevent expensive players, especially those who play for long sessions, from being gradually “devalued” down to near-zero CPM. Their eCPM still decays over time, but it never fully collapses.

We also see benefits for marginal, mid-priced users — those hovering around 40–50% of the average eCPM — whose bids can be nudged slightly upward as well.

Recently, we’ve started testing a hot trend, dynamic bid floors. The idea is to adjust the floor on the fly rather than relying on a static value. So far, one proven approach is using multiple ad units with different bid floors, splitting users into groups. This has already shown consistent gains across several projects.

What we’re testing next is a more granular setup: adjusting bid floors not just per player, but per ad request. One request comes in, we set one floor. The next request, a different one.

In theory, this should outperform static floors. In practice, we don’t yet have enough data to confidently confirm that. Results are promising, but still preliminary.

When does it make sense to show interstitials instead of rewarded ads?

From the player’s perspective, the price of an ad doesn’t matter. What matters is how long it lasts and how often it appears. From our side, we see the cost of an ad before it’s shown. This allows us to sometimes replace a rewarded ad with an interstitial — especially if the interstitial is equal or more expensive, while being significantly shorter.

A good example is our project Tap Gallery. It had a very high share of rewarded ads and a high number of impressions per DAU. When impressions per user are that high, eCPM decay on rewarded ads becomes very noticeable. After 5–10 impressions, the price of subsequent ads can drop by half. In these cases, interstitials often end up being more expensive than rewards. 

So instead of a reward, we show an interstitial that can be skipped after five seconds. The result? In this test, we saw a 7% increase in LTV, along with improved retention. On projects with fewer rewards per DAU, the uplift might be closer to 1–2%. But on games where players watch 7–8 rewards per day, the impact is much more significant: 5–7% LTV growth, plus better long-term retention. In the long run, this approach clearly pays off.

When to show ads — and when not to

Here’s another concrete case. In Stack Ball, we don’t show interstitials after a loss. The reason is simple: the win rate in the game is low, around 30%. Players usually need three attempts to clear a level. If we showed a 5-second interstitial after each failed attempt, followed by an end card, players would spend 10–15 seconds just closing ads, especially painful if they’ve already lost two or three times in a row.

Instead, we show MREC ads. These are large banners that take up about half the screen and can be dismissed instantly — just tap anywhere. No cooldown, no friction. This approach has proven very effective for this specific scenario.

That said, showing interstitials on loss isn’t a hard “no.” It’s more of a guideline. In many cases, always showing interstitials will generate more revenue. But there are also situations where less aggressive monetization performs better overall. Every project needs to be tested individually.

One rule we follow consistently: watching a rewarded ad resets the interstitial cooldown.

This creates an implicit incentive. Players may not consciously know this rule, but they often pick up on the pattern. Watching a reward not only gives them something valuable, but also “protects” them from interstitials for a while. Interestingly, when they choose to watch a rewarded ad next time, they often don’t even notice that it lasts longer than the interstitial they could have skipped earlier.

Another important case is the first session. In State.io, which started as a hypercasual project and is now evolving into a hybrid model, we deliberately avoid showing ads too early. Players are given time to onboard, understand the mechanics, and engage with progression systems. Ads are introduced later, roughly eight minutes after the first launch, though this is tied to in-game progress rather than a timer. This approach significantly improved early retention and made later hybrid monetization more effective.

Final thoughts

In the past, publishers had much more direct control over ad monetization. Waterfalls allowed fine-grained optimization: prioritizing networks, setting precise CPM tiers, and manually tuning placements. Today, waterfalls are effectively gone. Networks decide how much they’re willing to pay for each impression. Our main lever is the bid floor, and while it’s powerful, it’s not enough on its own.

If you don’t have deep expertise, all you can really do is tweak bid floors inside the mediation system. But that rarely delivers the same results as true, hands-on optimization used to.

To achieve meaningful gains today, you have to go deeper: into mediation logic, product behavior, player experience, and even quality metrics (more on that next time).

Ad monetization is no longer just about “setting up mediation.” It’s becoming tightly integrated with product design and long-term player value, and that requires a dedicated team constantly testing and iterating across the entire ad flow.

Back to blog
All Case StudiesGameDevNewsInterviews