← All Posts

eCPM Optimization for Web Games: Benchmarks and Fixes

eCPM optimization is the work of raising effective revenue per thousand ad impressions. In web games, five levers move it: format mix, fill rate, placement timing, geo and consent coverage, and viewability. Rewarded video is the largest of those levers — it delivers $4+ CPM on AppLixir against the $0.50–$2 typical of web display inventory. Everything below assumes a browser-based game or content site, not a mobile app. That distinction matters more than most optimization advice admits, because the majority of published eCPM guidance is written for app inventory served by SDKs that do not run in a browser at all.

What eCPM Optimization Actually Means

eCPM — effective cost per mille — is an output, not an input. You do not set it. It is the quotient of revenue earned and impressions served, multiplied by a thousand. Every action described as “eCPM optimization” is really an action on one of the terms feeding that quotient. That reframing is useful because it kills a common failure mode: chasing eCPM as a scoreboard. It is trivially easy to raise eCPM by serving fewer, better impressions — set a high price floor, refuse everything below it, and your reported eCPM climbs while total revenue falls. The optimization target is revenue per daily active user. eCPM is the diagnostic that tells you which part of the machine is underperforming. With that framing, optimization work sorts into two categories. Yield work raises the price paid per impression: better formats, stronger demand competition, higher viewability, consented traffic. Volume work raises the number of monetizable impressions per player: placement design, session depth, frequency caps that are neither too tight nor abusive. The two interact, and you have to watch both.

eCPM vs CPM: The Distinction That Changes Decisions

CPM is what a buyer agrees to pay for a thousand impressions of a specific campaign. eCPM is what you actually earned across everything that ran, including unfilled requests, house ads, direct deals, and the long tail of programmatic demand. A campaign can carry a $12 CPM and contribute almost nothing to your eCPM if it only filled 3% of your requests. The practical consequence: never compare a quoted CPM to a reported eCPM and conclude you are being underpaid. They measure different things. A fuller treatment of the arithmetic lives in our breakdown of CPM and eCPM, but the table below covers the four metrics you will actually argue about in a revenue meeting.
Metric What it measures Denominator Use it to
CPM Price a buyer pays per 1,000 impressions of one campaign Impressions of that campaign Compare demand quality, set floors
eCPM Blended revenue per 1,000 impressions served All served impressions Compare placements, formats, geos
RPM (page/session) Revenue per 1,000 pages or sessions Pages or sessions, not impressions Judge placement density
ARPDAU Ad revenue per daily active user Daily active users Judge whether the whole system works
Read them in that order when something breaks.
  • If CPM held but eCPM dropped, you have a fill or format problem.
  • If eCPM held but RPM dropped, players are seeing fewer ads per session.
  • If RPM held but ARPDAU dropped, you have a retention problem wearing a monetization costume.

What Good Looks Like on the Web

Web display inventory generally clears in the $0.50–$2 CPM range. Rewarded video on AppLixir delivers $4+ CPM, across more than 100 million monthly impressions. That gap is the single largest structural fact in web game monetization, and it exists because the two formats sell fundamentally different things: display sells screen space next to a game, rewarded video sells a completed, opted-in, full-attention view. Within that, expect real spread. Tier-1 traffic — US, Canada, UK, Germany, Japan, Australia — clears at a multiple of Tier-3 traffic, and a game with 80% emerging-market audience will post a blended eCPM well below one with an inverted mix, at identical placement quality. Before you conclude your setup is broken, break performance out by country and compare like with like. Our web game monetization benchmarks cover the ARPU and engagement-rate side of the same picture. Seasonality is the other honest caveat. Advertiser budgets concentrate in Q4 and reset in Q1. A January eCPM read against a December baseline will look like a failure and usually is not. Compare year over year, or compare against the immediately preceding weeks, and do not restructure your waterfall on the strength of one bad fortnight.

Diagnose Before You Optimize: The Five-Step Funnel Audit

Most eCPM problems are located precisely by walking the funnel from left to right and finding the first stage where the number is wrong. Do this before you touch a floor price.
    • Opportunities. How many times per session does a player reach a moment where a rewarded ad could be offered? If this is one, no amount of yield work will save you.
    • Offers shown. Of those opportunities, how many actually surfaced a prompt? Frequency caps, cooldowns, and conditional logic silently eat this stage.
    • Opt-in rate. Of prompts shown, how many players tapped through? This is a reward-design number, not an ad-tech number. Weak rewards read as weak here.
    • Fill rate. Of ad requests made, how many returned a paid ad? Low fill in specific countries points at demand coverage; low fill everywhere points at configuration or consent.
    • Completion rate. Of ads started, how many ran to the end? Buyers pay for completions. Loading stalls, autoplay blocks, and players who close the tab all land here.
Record the five numbers weekly. The value is not the snapshot but the drift: a fill rate that slid four points over a month is a specific, fixable event, while “our eCPM feels low” is not.

Fix 1: Change the Format Mix Before Anything Else

The fastest structural gain in web eCPM is shifting revenue weight from passive display to opted-in video. A rewarded impression is worth several times a display impression, and it costs you no additional screen real estate because it occupies the screen only when the player has asked for it. This is not an argument for removing display. Banners generate steady baseline revenue from inventory that would otherwise earn nothing, and a hybrid mix — a modest display baseline plus rewarded video at high-intent moments — outperforms either alone. What it argues against is a monetization stack that is 100% display, which describes a surprising number of HTML5 and IO games running at meaningful scale. If you are weighing rewarded against interstitial specifically, the trade is yield and retention against volume and simplicity; our comparison of rewarded video and interstitial ads works through both sides. The short version for web: forced interstitials on a browser game compete with the back button, and the back button usually wins.

Fix 2: Place the Reward Where the Player Already Wants It

Opt-in rate is the stage of the funnel most publishers under-invest in, and it is entirely within your control. The mechanism is simple: a rewarded prompt converts in proportion to how badly the player wants the thing on offer at the exact second it appears.

Moments that convert

    • Failure recovery. Continue from where you died. The player has just lost progress and the reward restores it.
    • Gate skip. Bypass a wait timer or energy refill instead of leaving the tab.
    • Result multiplier. Double the coins or score just earned, offered at the results screen while the number is still on screen.
    • Trial unlock. Temporary access to a premium skin, weapon, or level that also seeds an in-app purchase.

Prompt hygiene

State the reward and its quantity in the button itself. Show the video length. Never surface a prompt during active input. Preload the creative so that the gap between tap and first frame is imperceptible — players abandon in that gap, and abandoned starts depress completion rate, which depresses what buyers will pay next time. The reward-plus-purchase interaction is covered in more depth in our guide to hybrid monetization with rewarded ads and IAP.

Fix 3: Fill Rate and Demand That Actually Serves the Browser

An unfilled request earns zero and drags blended eCPM down with it. The most common cause of chronic low fill on web inventory is also the most avoidable: the demand stack was assembled from mobile networks. Unity Ads, AdMob, AppLovin, and ironSource are strong networks with deep budgets, and they do not serve the browser. Their SDKs target iOS and Android app environments. A studio that ships a WebGL build or an HTML5 title and then integrates a mobile mediation stack ends up with test ads, empty responses, or a support thread that goes nowhere. AppLixir exists to serve exactly this inventory. If you are comparing the landscape properly, our network-by-network comparison lays out which demand reaches which environment. Distribution platforms are a separate category and a complementary one. If your game lives on Poki, CrazyGames, or a similar portal, that portal’s monetization applies to their traffic. Your own domain, your itch.io build, your embeds, and your Telegram or Discord distribution are inventory you control, and a web rewarded layer runs alongside portal revenue rather than in place of it. Additive, not substitutive. On the technical side, three things reliably suppress fill on the web: ad requests blocked by a Content Security Policy that has not been updated for the ad domain, iframe sandboxing that prevents the player from initializing, and autoplay policies that block video with sound outside a user gesture. All three are single-line fixes once identified, and all three look identical to “low demand” in a revenue report. Uniform price floors are the most common self-inflicted eCPM wound. A floor calibrated for US demand applied globally will block fill across Southeast Asia, Latin America, and Eastern Europe, where the alternative to a low-priced impression is not a high-priced one — it is no impression. Set floors per country tier and review them monthly against fill. Consent is the second lever, and on European traffic it is a large one. Non-consented users can generally only be served contextual, non-personalized inventory, which clears below personalized demand. That makes consent rate a direct eCPM input. AppLixir ships TCF 2.3 and GDPR compliance built in through Didomi, so the consent string is passed correctly to demand partners rather than defaulting every EEA impression to the lowest-value bucket. If your current setup has no TCF signal at all, your European eCPM is being priced as though every user opted out. Viewability is the third. A video player rendered below the fold, in a collapsed container, or at a size that fails standard viewability thresholds will be bid on cautiously. Render rewarded video in a centered overlay at a size that dominates the viewport, and confirm it behaves the same way at 1366×768 as it does on your development monitor.

Fix 5: Frequency, Session Depth, and the ARPDAU Test

Once yield per impression is healthy, the remaining growth is volume — more monetizable moments per player, per day. This is where eCPM as a scoreboard becomes actively misleading, because adding a second and third rewarded opportunity per session often lowers reported eCPM slightly while raising total revenue substantially. Judge every change on ARPDAU measured over a full 7-day and 30-day window, alongside D1 and D7 retention. If retention holds and ARPDAU rises, the change was correct regardless of what eCPM did. If retention softens, revert, no matter how good the eCPM looked. Our practical guide to improving ARPDAU covers the test design in more detail. Two guardrails apply everywhere. New players in their first session should meet gameplay before they meet monetization; introduce rewarded offers once a player has demonstrated intent to stay. And cap rewarded views per session at a level your reward economy can absorb — an unlimited coin multiplier will inflate your currency until the reward stops being worth watching an ad for, at which point opt-in rate collapses and takes eCPM with it.

Frequently Asked Questions

What is a good eCPM for rewarded video on web games?

Use $4+ as the reference point for web rewarded video — that is what AppLixir delivers across 100M+ monthly impressions — against $0.50–$2 for typical web display. Your own blended number will sit above or below depending on geo mix, seasonality, and consent coverage, so compare country by country rather than against a single global figure.

What is the difference between eCPM and CPM?

CPM is the price attached to one campaign or one demand source. eCPM is your blended, realized revenue per thousand impressions across everything that served, including unfilled and low-value inventory. CPM is what a buyer offers; eCPM is what you actually earned.

Why is rewarded video CPM higher than banner or interstitial CPM?

Rewarded video is opted into, watched to completion, and rendered at full attention with sound. Buyers price completed, consented, viewable video well above passive display placements, and completion rates on rewarded formats are structurally high because the player forfeits the reward by leaving early.

Can I run AppLixir alongside my existing ad setup?

Yes. AppLixir is a rewarded video layer for web inventory and runs alongside existing display, direct deals, and portal distribution rather than replacing them. The publisher threshold is 5,000 DAU; the technical requirements and integration path are documented in how it works.