What are ads worth in your AI app?
See how we estimate your ad revenue, explore the assumptions and compare a generation’s revenue with its AI costs. External campaign reports provide market context.
What changes the result?
Audience & market
Geography, advertiser budgets and purchasing intent affect bids. A focused niche can have different prices and a smaller pool of relevant ads.
Placement & format
Use the time your product already needs. Multiple clips may fit a longer natural wait; a stable banner remains one placement. Never delay a ready result.
Context & consent
Topics, safety rules and privacy settings determine matching options.
Delivery & viewability
Timing, fill and visibility affect qualified views. Completed playback and deliberate, valid clicks matter when the agreement pays for those outcomes.
What do AI ads cost today?
Published ChatGPT campaigns: a starting point for your own ad-price assumptions.
| Campaign & source | CPM | Avg. CPC | CTR |
|---|---|---|---|
| Synter ↗2–10 Jun 2026129,663 impressions · 448 clicks | $34.16 | $9.89 | 0.35% |
| VSSL ↗Published 12 Jun 2026Two-week test · $400 reported spend | $61.62 | $11.65 | 0.53% |
| SE Ranking ↗3–15 Jun 202697,131 impressions · 1,263 clicks | Not reported | $3.16 | 1.30% |
Reported advertiser costs vary by audience, market, format and placement. They are not wavebird payout rates.
Markets, sample limits and billing basis
Synter: US, UK, Canada, Australia, New Zealand. Impression-billed campaign; CPC is the effective cost per click.
VSSL: Market not specified. Small advertiser test; the report does not specify the purchasing basis.
SE Ranking: US, Canada, Australia, New Zealand. Manual CPC campaign; no CPM quoted here because the report does not publish one.
Different audiences and small samples limit comparisons. Values are self-reported, not independently audited by wavebird. CPM and effective CPC can describe the same spend; they are never added together. ChatGPT billing guidance ↗
Cover inference costs. See what’s left.
Ad limit reached. Longer waits add no further ad revenue.
Token usage, delivery & reference prices
Adjust your share and other costs
Calculation breakdown
Break-even: 9.9% eligible generations at these settings.
Compare audiences & wait times
Same model. Different opportunities.
gpt-oss-120B · balance per 1,000 generations. Select a scenario to apply it.
Editable planning scenarios. Campaign reports provide separate comparisons. The selected payment basis and clip limit apply to every row. Assumptions & calculation →
| Task & natural wait | General chat$15.00 CPM50% fill | Film & creation$15.00 CPM45% fill | Music$15.00 CPM45% fill | Video games$15.00 CPM50% fill | High-value products$15.00 CPM35% fill | Fashion$15.00 CPM45% fill |
|---|---|---|---|---|---|---|
| Your current task4,000 in · 1,000 out+0 thinking30s · up to 2 time-eligible clips | ||||||
| Quick response1,000 in · 500 out+0 thinking10s · up to 1 time-eligible clips | ||||||
| Reasoned response4,000 in · 1,000 out+2,000 thinking30s · up to 2 time-eligible clips | ||||||
| Deep analysis16,000 in · 1,000 out+6,000 thinking60s · up to 2 time-eligible clips |
Compare all 14 models
Where ads leave a surplus.
10 of 14 models cover their entered costs in this scenario.
| Model / host | Cost per generation | Balance / 1,000 generations |
|---|---|---|
| Gemini API | $0.0008 | +$11.35Surplus |
| Together AI | $0.00093 | +$11.22Surplus |
| Together AI | $0.0012 | +$10.95Surplus |
| OpenAI API | $0.0020 | +$10.15Surplus |
| DeepSeek API | $0.0024 | +$9.75Surplus |
| Together AI | $0.0052 | +$6.95Surplus |
| Gemini API | $0.00675 | +$5.40Surplus |
| Claude API | $0.0090 | +$3.15Surplus |
| DeepSeek API | $0.00924 | +$2.91Surplus |
| Meta Model API | $0.00925 | +$2.90Surplus |
| xAI API | $0.0140 | −$1.85Gap remains |
| Claude API | $0.0180 | −$5.85Gap remains |
| OpenAI API | $0.0200 | −$7.85Gap remains |
| OpenAI API | $0.0360 | −$23.85Gap remains |
Prices, sources and methodology
Model prices checked 19 Sep 2026. The default $15 CPM is an illustrative assumption after advertising partner fees and before wavebird’s share, not a measured wavebird rate. External campaign references report advertiser spend on other platforms; they are separate comparisons with a different price basis. The selected starting prices apply to all audience columns; individual prices and fill can then be edited. Fill, qualification, reach and wait times are illustrative. Niche categories have no automatic price premium.
Input includes prompts, history and instructions. Visible output excludes separately entered reasoning. Charge reasoning at the output rate only when that provider bills it that way. Equal token counts compare prices, not model quality or identical text across tokenizers.
Eligibility applies placement, consent and safety rules. Qualification applies the selected event’s validity, visibility or completion checks; CPC adds its valid click rate separately. The illustrative 80% retention gives the second clip 80% of the first clip’s audience before fill and qualification. Two clips is a planning limit, not an industry standard. Longer waits do not automatically increase CPM or click rate.
USD per million tokens. Standard online text inference with uncached input. Token counts apply to every model; use measured billable tokens for your workload. Caching, batch discounts, taxes, regional uplifts and tool charges are excluded unless you add their costs above. Hosted open models use Together AI’s listed API prices, not self-hosting estimates.
This comparison prices text generations only. Image, audio and video workloads need their own cost model. Include allocated storage and processing in other costs, and assess support and acquisition costs for your own margin.
Input is capped at 32,000 tokens and output at 8,000 to stay within the short-context pricing used here. Prices are a checked snapshot, not a live feed. Model listing does not imply a wavebird partnership or assess quality.
Coverage = expected publisher revenue ÷ entered cost for the same generation. Surplus = expected publisher revenue − entered cost. Every generation incurs cost, including those without an ad.
Cost per generation = (input tokens × input price + (visible output + billed reasoning tokens) × output price) ÷ 1,000,000 + other costs per generation.
Expected events = eligible-generation rate × sum of reach across time-eligible positions × fill × qualified share. Each clip starts after its own loading time and the previous clip’s full scheduled duration. CPM starts from rendered opportunities and applies the entered qualification rate. The illustrative vCPM simulation uses an external measurement reference: 50% visibility for 1 continuous second for banners or 2 seconds of video playback. wavebird’s current qualified-view policy uses at least 50% verified visibility for 1 second while the document is visible; the simulation does not change that rule. CPC models valid clicks from rendered opportunities using the entered click rate. CPCV requires full playback plus server validation. Timing alone does not prove an event is valid or payable.
CPM/vCPM revenue = price ÷ 1,000 × expected events × publisher share. CPC revenue = price × valid click rate × expected events × publisher share. CPCV revenue = price per completion × expected completed events × publisher share. Percentages are divided by 100; pricing bases are alternatives, never added together. A stable banner counts at most once. Extra wait adds no events after the last threshold. The selected agreement must support these event definitions.
These timings represent one fixed-duration scenario, not a measured average. For forecasting, evaluate actual wait-time distributions and combine the results; applying event thresholds to an average duration can misstate revenue.
Ad timing: sources & assumptions
IAB Tech Lab video formats ↗ lists 6, 15 and 30 second creatives. The 15-second default is a planning choice, not an AI-ad average.
IAB/MRC-based Active View measurement ↗ supports the visibility thresholds above. Google’s format-specific billing examples ↗ show why visibility, CPV and full completion are different. Google’s rules do not define a wavebird agreement.
Better Ads research ↗ identifies long unskippable ad pods as problematic in short-form video. It does not establish a two-clip limit or an 80% retention rate for AI apps. Both are explicit scenario assumptions here.
Google Ad Manager refresh rules ↗ require declaration and at least 30 seconds for time-based refresh. This scenario does not refresh banners or assume that refresh is enabled for your integration.
Audience contexts: General chat: Broad everyday queries; diverse advertiser relevance. Film & creation: Editing software, cameras and production tools. Test a higher bid alongside narrower demand. Music: Instruments, audio software and studio equipment. Purchasing intent matters more than the topic alone. Video games: Games, peripherals and hardware. Entertainment browsing and an active purchase can have different value. High-value products: Specialist equipment and expensive products. Test higher bids against a smaller pool of relevant advertisers. Fashion: Clothing and accessories. A specific product search may differ from general style inspiration.
All positions use the same entered price, fill and click rate; real auctions and later-position performance can differ. Clip capacity does not activate a commercial agreement or guarantee independently billable ads. Reasoning and latency are separate inputs; these text-token prices do not price film, music or game asset generation.
Background: Factors affecting ad revenue ↗ · Sequential video ads and duration budgets ↗. These describe general advertising mechanics, not wavebird category rates or partner availability.
Understand the numbers.
From an opportunity to revenue.
Placement opportunities
Moments when your app could show an ad.
Starting opportunitiesEligible placements
Pass your placement, consent and safety rules.
× eligibility rateFilled placements
An advertising partner returns an ad.
× fill rateBillable impressions
For impression-priced ads, only delivery that meets the agreed measurement rules counts.
× billable-impression rate
Impression-based example. Bar lengths are schematic, not measured rates. CPC and CPCV count qualified clicks or completed views; fixed sponsorship and CPD use the booked contract quantity.
Six ways to price an ad.
The price model sets the unit the advertiser pays for. The qualification rule determines what counts. wavebird’s billing system supports the six models below; the model used for your integration depends on the commercial agreement and its activation.
| Model | What counts & how it is priced |
|---|---|
| CPM | Cost per 1,000 impressionsCounts impressions that meet the agreed measurement policy. A request, selected ad or raw render alone is not a billable impression. CPM does not automatically mean the stricter vCPM rule. Billable impressions ÷ 1,000 × CPM |
| vCPM | Cost per 1,000 viewable impressionsCounts qualified views. wavebird’s current rule requires at least 50% of the ad to be visible for at least 1 second of verified visibility while the document is visible. Qualified views ÷ 1,000 × vCPM |
| CPCV | Cost per completed viewCounts a full video Clip completion validated by the server. A partial play, a dismissed ad or an unverified completion report does not count. The price is per completion, not per thousand. Validated completions × CPCV |
| CPC | Cost per qualified clickCounts a deliberate click on the ad or its call to action, backed by a verified, single-use click record. Duplicate or invalid clicks are excluded. Dismissal, feedback and player controls do not count. Qualified clicks × CPC |
| Fixed | Fixed sponsorshipOne agreed price for a booked campaign period. Delivery is measured separately; impressions or clicks do not silently recalculate the booked price. Any delivery shortfall is handled under the agreement. 1 booked campaign × agreed price |
| CPD | Cost per dayAn agreed daily price multiplied by the booked day count. It uses contract days, not days inferred from impression activity. Delivery commitments and remedies remain part of the agreement. Booked days × daily price |
These formulas show the amount before publisher share and permitted adjustments. A listed model is not automatically active for every integration. eCPM is a comparison metric, not a seventh billing model.
Six worked examples
Separate illustrative agreements, all in USD. These are invented prices, not wavebird rates or market benchmarks. The publisher amounts use the standard 90% share and assume the full amount is eligible and settled, with no further adjustments.
| CPM | 100,000 billable impressions at $5 CPM.100,000 ÷ 1,000 × $5 = $500 → $450 publisher |
|---|---|
| vCPM | 60,000 qualified views at $8 vCPM. Other delivered ads do not count toward this quantity.60,000 ÷ 1,000 × $8 = $480 → $432 publisher |
| CPCV | 4,000 validated full completions at $0.04 per completion.4,000 × $0.04 = $160 → $144 publisher |
| CPC | 500 qualified clicks at $0.60 per click. Repeated or invalid clicks add no units.500 × $0.60 = $300 → $270 publisher |
| Fixed | One campaign booked at $1,000, with its delivery obligations met.1 × $1,000 = $1,000 → $900 publisher |
| CPD | Seven booked days at $100 per day, with the agreed obligations met.7 × $100 = $700 → $630 publisher |
Do not add these examples together or bill the same event under several models. Each describes a separate commercial obligation.
Shortfall example: a $1,000 fixed campaign delivers 750 of its 1,000 agreed units. If the contract specifies a proportional credit, the credit is $250 and the adjusted amount is $750. At the illustrative 90% share, that leaves $675 for the publisher once eligible and settled. A contract with an extension or replacement-delivery remedy follows that remedy instead.
Measure more than the price.
Use billing units to calculate money and performance metrics to understand delivery. Compare the same period, currency and placement scope, and state whether revenue is gross or publisher net.
| Metric | How to read it |
|---|---|
| eCPM | Effective revenue per 1,000 impressionsA comparison metric across pricing models. For publisher net eCPM, use net publisher revenue and the measured impressions for that same activity. It does not convert a click or booked day into an extra billable impression. Publisher net revenue ÷ impressions × 1,000 |
| Fill rate | Demand coverageThe share of eligible ad opportunities that receive an ad. Filled does not mean viewed, completed or billable. Filled placements ÷ eligible opportunities × 100% |
| Qualified-view rate | Visibility that meets the policyQualified views divided by measured rendered impressions. Name the visibility policy and denominator when comparing results. Qualified views ÷ rendered impressions × 100% |
| Qualified CTR | Clicks that pass qualificationQualified clicks divided by measured impressions. Raw click counts can be useful for diagnostics, but cannot replace the validated count used for CPC billing. Qualified clicks ÷ impressions × 100% |
| Completion rate | Full playbackValidated full completions divided by playback starts for the same Clip scope. The rate explains performance; only the eligible completion count creates CPCV units. Validated completions ÷ playback starts × 100% |
| Delivery progress | A booked commitmentFor fixed sponsorship or CPD, compare verified delivery with the agreed goal in its original unit. Report booked value and any credits separately. Verified delivery ÷ agreed delivery goal × 100% |
If a denominator is zero or has not been measured, the rate is unavailable, not 0%. Do not mix qualified views, playback starts, clicks, sessions or booked days as though they were the same unit.
AI-specific measurement details
The billing models above determine the payable unit. The AI-specific concepts below help compare sponsorship with generation cost; they are proposals, not additional implemented billing models or established industry standards.
| CPG · Cost per generation | Cost of sponsoring one eligible generation.Sponsor spend ÷ sponsored generations |
|---|---|
| CPT · Cost per token | Cost of sponsoring one token.Sponsor spend ÷ sponsored tokens |
| CPT 1K · Cost per 1,000 tokens | Cost of sponsoring 1,000 tokens.Sponsor spend ÷ sponsored tokens × 1,000 |
| CPW · Cost per wait | Cost of sponsoring one generation wait window, regardless of its duration.Sponsor spend ÷ sponsored wait windows |
| RPG · Revenue per generation | Publisher revenue per eligible generation, for comparison with its compute cost.Publisher ad revenue ÷ eligible generations |
| RPT · Revenue per 1,000 tokens | Publisher revenue per 1,000 generated tokens, for comparison with token-level compute cost.Publisher ad revenue ÷ generated tokens × 1,000 |
| Sponsored Generation Rate | Share of eligible generations with a valid sponsored exposure.Sponsored generations ÷ eligible generations |
Token volume alone does not prove ad exposure. Independently qualified clips may fit within a natural wait; do not extend generation or delay a ready result to create more ad time. Repeated frames are not new ad impressions.
Access to advertising demand
Connect to the global advertising market through established partners, without building your own ad-sales operation. Your app sets the placement; wavebird checks, requests, returns and measures the ad.
An OpenRTB auction bid remains CPM-based unless the partner protocol explicitly defines another basis. It does not by itself establish a CPC or CPCV agreement. Direct fixed sponsorship and CPD follow the advertiser’s booked contract.
How we estimate your revenue
Our illustrative scenario assumes $15 per 1,000 billable impressions after advertising partner fees. You keep 90% after wavebird’s share. Eligibility, ad availability and billable delivery are included in the calculation.
Billable impressions = monthly active users × sessions per user × opportunities per session × eligibility × fill × billable delivery. Publisher revenue = billable impressions ÷ 1,000 × $15 × 90%. Partner fees are already included in the $15 basis; wavebird’s share is applied once.
These are planning assumptions, not measured Consumer AI averages or guaranteed payouts. A session is a potential ad opportunity, not necessarily one generation. The separate generation configurator uses its own delivery settings, including clip limits and later-ad reach.
| Monthly active users | 312,000 in the initial example; adjustable on the landing page. |
|---|---|
| Sessions and opportunities | 15 sessions per user per month; one potential opportunity per session. |
| Eligibility | 80% of potential opportunities are suitable for an ad. |
| Ad availability | 50% of eligible opportunities receive an ad. |
| Billable delivery | 80% of filled opportunities qualify for billing. |
| Price and publisher share | $15 per 1,000 billable impressions after advertising partner fees, then 90% to you. |
Example: 312,000 × 15 × 1 × 80% × 50% × 80% = 1,497,600 billable impressions. At $15 per 1,000 and a 90% share, that is $20,217.60 per month. The landing page displays approximately $20,200.
Annual revenue = unrounded monthly revenue × 12: $242,611.20, displayed as approximately $243,000. This annualization assumes the same traffic and delivery conditions each month. The effective publisher revenue is $0.00432 per potential opportunity.
External benchmarks provide market context. Appodeal’s 2025 report covers Q4 2024 mobile gaming and varies by format and country; rewarded ad prices do not establish wavebird’s format mix. IAS reports viewability, not our billable-delivery rate. Google explains ad metrics and match-rate factors. Playwire reports on its own publisher data. None validates this scenario as a Consumer AI average or wavebird payout benchmark.
The separate Fit Finder retains its own planning range of $0.0018–$0.0162 per planned monetizable session, already after wavebird’s share. Its monthly estimate is audience × sessions × free-usage share × that range. Audience choices are 5k / 50k / 300k / 750k / 1.5M, session choices are 2 / 6 / 20 / 60 and free-usage shares are 75% / 50% / 20%. Do not apply the publisher share again to that range.
Open the landing calculatorPut your scenario to work.
Start with one placement. Compare measured delivery and settled revenue with your assumptions before expanding.