Publisher Yield

Revenue per hour (RPH): the CTV publisher metric you should be tracking

Revenue per hour (RPH) is the most useful single metric for measuring CTV publisher monetisation efficiency. It captures the total ad revenue earned for every hour of content watched — not just the CPM on filled impressions, not just the fill rate, but the actual revenue per unit of viewer engagement. A publisher tracking CPM alone can have a high average CPM and still be monetising poorly if fill rate is low or ad load is miscalibrated. RPH brings everything together into one number that reflects real monetisation performance.

This article explains how RPH is calculated, what factors drive it, how to benchmark it, and how to use it diagnostically to find and fix yield problems.

How to calculate revenue per hour in CTV

The core formula is straightforward:

RPH = Total ad revenue ÷ Total hours of content viewed

More explicitly: if your platform delivered 10,000 hours of content in a month and earned ₹500,000 in ad revenue during that same period, your RPH is ₹50.

You can also build RPH from component metrics:

RPH = (Ad slots per hour) × (Fill rate) × (eCPM)

Where eCPM is the effective CPM per available impression (not just per filled impression). This expanded form is more useful for diagnosis because it shows you which component is dragging down RPH.

Example calculation

A publisher has 4 ad slots per hour of content (two pods of two slots each), a 70% fill rate, and an eCPM of ₹280 per available impression:

  • 4 slots × 70% fill = 2.8 effective impressions per hour
  • 2.8 impressions × ₹280 CPM ÷ 1,000 = ₹0.784 per viewer hour
  • At scale (1,000 viewer hours): RPH = ₹784

Note: when calculating in CPM terms, you divide by 1,000 because CPM is cost per thousand impressions. Multiply by total viewer hours and slot count to get to total revenue.

What factors drive revenue per hour?

RPH is a product of four interconnected variables. Improving any one of them lifts RPH — but they interact, so moving one can affect others.

1. Ad slots per hour (ad load)

The total number of ad impressions available per hour of content viewed. More slots per hour means more inventory to sell. But beyond a threshold, higher ad load degrades viewer experience, reduces content engagement, and — for AVOD/SVOD audiences — drives abandonment. The right ad load is content-type specific. Live sport can support more breaks than archive drama. FAST content tolerates higher loads than premium subscription content libraries.

2. Fill rate

What percentage of available slots actually fill with a paid ad. Unfilled slots contribute zero revenue but consume a viewer's ad tolerance. High fill rates indicate strong demand relative to supply. Low fill rates indicate insufficient demand, floors that are too aggressive, or technical issues in the ad serving stack. In India, programmatic fill rates for CTV inventory outside major platforms are often below 60–70%, indicating demand gaps rather than supply problems.

3. eCPM (effective CPM per available impression)

This is not the CPM on filled impressions — that number flatters performance by ignoring unfilled slots. eCPM per available impression includes the zero-revenue of unfilled slots in the denominator. It is the honest measure of how much you earn per impression opportunity. eCPM is driven by floor pricing, demand competition, audience quality, and deal mix (direct vs programmatic).

4. Content length and engagement

Longer, more engaging content enables more ad pods per session. A viewer who watches 45 minutes of a drama generates three times as many ad impressions as a viewer who watches 15 minutes and abandons. Content strategy and monetisation strategy are linked: investment in content that drives longer sessions directly improves RPH at the platform level.

Using RPH to diagnose yield problems

RPH is most valuable as a diagnostic tool. When RPH is lower than expected, the expanded formula tells you where the problem is:

Low fill rate is the dominant cause

If fill rate is under 60% and your CPM on filled impressions looks reasonable, the problem is demand insufficiency or floors that are too aggressive. Solutions: add demand partners, lower floors to the bid landscape data level, implement backfill.

Low eCPM on filled impressions

If fill rate is strong but eCPM is weak, the problem is pricing — you are filling lots of inventory at low CPMs. Solutions: raise floors, build direct and PMP deals, improve audience signal in bid requests, invest in audience data infrastructure.

Low ad slots per hour

If fill and CPM look acceptable but RPH is still low, you may be under-loading. Compare your ad slots per hour to content-type benchmarks. This is less common than the demand or pricing issues but does occur when publishers are conservative about ad load for viewer experience reasons without testing whether viewers actually notice the difference.

Short content sessions

If average session length is short, fewer pods deliver per viewer, which suppresses platform-level RPH even if per-impression metrics look fine. This points to a content engagement problem, not a monetisation problem — the fix is content strategy, recommendation systems, or UX improvements that extend sessions.

RPH benchmarks for India CTV publishers

Honest benchmarking in India CTV is difficult because few publishers report RPH data publicly and market structure varies significantly. That said, industry estimates suggest approximate ranges:

  • Live sport (IPL, major cricket, major football): Top-tier platforms are estimated to achieve ₹800–₹2,500+ RPH during premium live events, driven by high CPMs, strong fill, and high ad loads. These figures reflect direct deal revenue from premium sporting events and should not be used as general benchmarks.
  • Premium VOD (originals, popular library): ₹200–₹600 RPH is a reasonable estimate for mid-to-large India CTV publishers with mixed direct and programmatic revenue. Publishers with strong direct sales outperform the lower end of this range.
  • FAST channels: ₹100–₹350 RPH, with wide variation by channel genre and audience quality. FAST CPMs in India are still developing; channels with niche, clearly-defined audiences tend to outperform general entertainment channels.
  • General VOD / archive catalogue: ₹60–₹180 RPH for publishers reliant on open exchange programmatic demand. This range is where most smaller India CTV publishers currently operate, and represents significant upside if direct sales capability is built.

These ranges carry substantial uncertainty and should be treated as orientation, not targets. Your actual RPH depends on content quality, audience profile, deal mix, and ad serving infrastructure — all of which vary widely.

RPH vs CPM: why CTV publishers should prefer RPH

Many publishers report and optimise against CPM. CPM is a useful negotiation metric — it is what you quote to advertisers and agencies. But as an internal performance metric, CPM is misleading because it only counts filled impressions.

Consider two publishers:

  • Publisher A: ₹500 CPM average, 40% fill rate, 4 slots per hour → RPH ≈ ₹800
  • Publisher B: ₹280 CPM average, 85% fill rate, 4 slots per hour → RPH ≈ ₹952

Publisher A looks like the higher-performing publisher if you only look at CPM. Publisher B earns significantly more revenue per hour of content. RPH reveals the truth that CPM alone obscures. Teams that optimise for CPM without tracking fill and ad load are often surprised when revenue does not grow as expected despite high quoted CPMs.

Practical RPH tracking for India publishers

To track RPH, you need three data points: total ad revenue (from your ad server or SSP), total content hours viewed (from your analytics or content platform), and a consistent time window (daily, weekly, monthly). Most India CTV publishers can construct this from Google Ad Manager revenue reports and platform analytics — the data exists but often is not combined into a single RPH view.

Build a simple weekly RPH report broken down by content type (live sport, VOD, FAST). Track RPH by deal type (direct vs programmatic). Use these breakdowns to identify where your highest-RPH inventory is and focus sales and optimisation effort there. The goal is not just a high average RPH — it is understanding which content types and deal structures produce the best RPH and scaling those.