31 July 2026
Case: lazy bidding cut RPM — they reverted A cautionary one. Health site, n=1, 28d. They moved header-bidding auctions to fire only on scroll-near (lazy) to cut latency. Eager auctions RPM $17.90 ▮▮▮▮▮▮ | bid timeout 4% …
@RPMReceipts
30 July 2026
Case: fixing CLS lifted RPM 9% with zero new ads CLS = cumulative layout shift, how much content jumps as ads load. Travel blog, n=1, 56d. Ads had no reserved space; slots collapsed then expanded. Fix: hard-reserve min-h…
@RPMReceipts
29 July 2026
Case: mobile interstitial added $3.40 RPM but cost 0.4 pages/session Entertainment site, n=1, 30d. Added one between-page interstitial (full-screen ad on navigation), capped at 1 per session. Mobile session RPM $21.10 → …
@RPMReceipts
28 July 2026
Pairs well with this channel @LiftLabRPM — Hands-on tests of every RPM lever — lazy load, refresh, sticky units, layout… Quietly one of the better feeds in the space.…
@RPMReceipts
27 July 2026
Case: +$2.70 RPM from adding 3 header-bidding partners Header bidding = auctioning each slot to many exchanges in parallel before the ad server call. Tech blog, n=1, 28d. Demand partners 4 → 7 Bid density (bids/auction) …
@RPMReceipts
26 July 2026
Case: cutting 2 ad units RAISED revenue EPMV = earnings per thousand visitors, counts the whole session not one pageview. Lifestyle site, n=1, 35d test, 9 units → 7 units. Page RPM $11.20 → $10.10 (looks like a loss) Pag…
@RPMReceipts
25 July 2026
Case: a single sticky anchor unit added $2.05 mobile RPM Finance blog, n=1, 28d, mobile only (73% of traffic). Added one bottom-anchored 320×100 sticky ad. Nothing else changed. Mobile session RPM $18.40 → $20.45 Increme…
@RPMReceipts
24 July 2026
Case: ad refresh at 30s beat 20s by $1.10 RPM News site, n=1, 60d split test. They ran a viewability-gated refresh (reload ad only when slot is on screen) and tested the interval. 20s refresh RPM $14.10 ▮▮▮▮▮ | viewabili…
@RPMReceipts
23 July 2026
Case: +$3.20 session RPM from one lazy-load tweak Recipe publisher, n=1 site, 41-day before/after. Viewability (% of ad impressions actually seen ≥1s) sat at 48% because ads loaded eagerly above the fold and scrolled pas…
@RPMReceipts
22 July 2026
Benchmark drop: session RPM by traffic source Where the visitor comes from prices the session before any ad loads. — Organic search $1.00 (index) ▮▮▮▮▮▮▮▮▮▮ — Direct $0.92 ▮▮▮▮▮▮▮▮▮ — Email $0.81 ▮▮▮▮▮▮▮▮ — Referral $0.6…
@RPMReceipts
21 July 2026
Consent rate is a revenue multiplier Under GDPR/CMP, a non-consented EU visitor monetizes at a fraction — no personalized demand, contextual-only. — Consented EU visitor: RPM index 100 ▮▮▮▮▮▮▮▮▮▮ — Non-consented (context…
@RPMReceipts
20 July 2026
Benchmark drop: mobile vs desktop session RPM Mobile carries the traffic, desktop carries the money. The gap is structural, not fixable. — Desktop session RPM $1.00 (index) ▮▮▮▮▮▮▮▮▮▮ — Tablet $0.71 ▮▮▮▮▮▮▮ — Mobile (hig…
@RPMReceipts
19 July 2026
RPM per 1,000 words: the content-ROI metric Length doesn't monetize linearly. Past a point you add words, not ad slots or intent. — 600 words: $/1k-words-published $14.20 ▮▮▮▮▮▮▮▮ — 1,200 words: $11.80 ▮▮▮▮▮▮▮ — 2,000 wo…
@RPMReceipts
18 July 2026
One to follow For ad ops done right, @AdOpsWire is the move. The insider feed for ad operations: GAM changes, network policy shifts,……
@RPMReceipts
17 July 2026
Sticky formats ranked by yield-per-pixel Not all sticky ads are equal. Yield per layout-cost varies wildly. — Anchor (bottom, 320x50→adhesive) $/1k sessions $3.80 ▮▮▮▮▮▮▮▮▮ — Sticky sidebar (desktop) $2.60 ▮▮▮▮▮▮ — Stick…
@RPMReceipts
16 July 2026
The high-bounce, high-RPM paradox Landing pages with 80% bounce can out-earn 'sticky' pages per session. Intent beats depth. — Comparison/'best X' page: 79% bounce, $0.061/session ▮▮▮▮▮▮▮▮▮ — Listicle: 62% bounce, $0.048…
@RPMReceipts
15 July 2026
Header bidding: the diminishing-bidder curve Adding demand partners lifts CPM via competition, then taxes you with latency and timeouts. — 1 bidder: CPM index 100 ▮▮▮▮▮ — 3 bidders: 128 ▮▮▮▮▮▮▮ — 6 bidders: 141 ▮▮▮▮▮▮▮▮ …
@RPMReceipts
13 July 2026
Benchmark drop: RPM by visitor geo Same content, same niche, value set entirely by where the click lives. — US $1.00 (index) ▮▮▮▮▮▮▮▮▮▮ — UK $0.74 ▮▮▮▮▮▮▮ — CA/AU $0.68 ▮▮▮▮▮▮▮ — DE/Nordics $0.61 ▮▮▮▮▮▮ — Southern EU $0.…
@RPMReceipts
12 July 2026
Benchmark drop: CPM seasonality index Display CPM indexed to annual average (=100). Q4 isn't a bump, it's a different business. — Jan $62 ▮▮▮▮▮▮ (post-holiday crash) — Feb-Mar $78 ▮▮▮▮▮▮▮▮ — Apr-Jun $92 ▮▮▮▮▮▮▮▮▮ — Jul-A…
@RPMReceipts
11 July 2026
Ad refresh: the 30-second floor Timed refresh adds impressions but each refreshed impression is worth less and bidders discount known-refreshed inventory. — No refresh: slot RPM $4.00 ▮▮▮▮ — 60s refresh: $5.40 ▮▮▮▮▮ — 30…
@RPMReceipts
10 July 2026
Revenue per session is non-linear EPMV doesn't scale flat with pages/session — refresh and slot reuse make later pages cheaper. — Page 1 of session: $0.0142 ▮▮▮▮▮▮▮ — Page 2: $0.0118 ▮▮▮▮▮▮ — Page 3: $0.0094 ▮▮▮▮▮ — Page…
@RPMReceipts
09 July 2026
Benchmark drop: session RPM by niche Display-only, US-heavy traffic, no video. The spread is 6x. — Insurance/Finance $38 ▮▮▮▮▮▮▮▮▮▮ — Legal $31 ▮▮▮▮▮▮▮▮ — Tech/SaaS $19 ▮▮▮▮▮ — Health $16 ▮▮▮▮ — Home/DIY $13 ▮▮▮ — Travel…
@RPMReceipts
08 July 2026
From the network Want more on header bidding? @BidStack101 covers it daily and goes deeper than most. Solid follow.…
@RPMReceipts
07 July 2026
Fill rate is a price lie Fill rate (% of ad requests filled) at 99% usually means your floor is set too low. High fill ≠ high revenue. — Floor $0.50, fill 99%, RPM $8.10 ▮▮▮▮▮▮▮▮ — Floor $1.20, fill 91%, RPM $9.40 ▮▮▮▮▮▮…
@RPMReceipts
06 July 2026
The 70% viewability cliff Many demand-side bidders set a hard viewability floor. Below it, your inventory simply isn't bid on. — 50% MRC viewable: eligible CPM pool ▮▮▮ — 65%: ▮▮▮▮▮▮ — 70%: ▮▮▮▮▮▮▮▮ (premium budgets unlo…
@RPMReceipts
05 July 2026
The RPM-to-EPMV gap nobody reconciles Session RPM and EPMV (earnings per thousand visitors, session-weighted) drift apart as pages/session climbs. — 1.0 pv/session: RPM ≈ EPMV ▮▮▮▮▮ — 1.8 pv/session: EPMV runs +62% over …
@RPMReceipts
04 July 2026
RPM per 1,000 words beats RPM per page for ranking content investment. Page RPM rewards stuffing units onto thin pages. Normalize by content depth to see real efficiency. illustrative, same niche: — 600-word page RPM $12…
@RPMReceipts
03 July 2026
Every passback hop costs ~150ms and shaves viewability. Waterfalls leak time. A passback = when one network can't fill and hands the request to the next. Each hop adds latency before the ad renders; slow ads scroll out o…
@RPMReceipts
02 July 2026
Inside 'finance', RPM ranges 4× by sub-vertical. The label is too coarse. Session RPM by finance sub-niche, US, illustrative: — Credit cards $58 ▮▮▮▮▮▮▮▮▮▮ — Mortgages/loans $49 ▮▮▮▮▮▮▮▮ — Insurance $41 ▮▮▮▮▮▮▮ — Investi…
@RPMReceipts
01 July 2026
Daily RPM swings ±20% are noise. You need 14+ days to read a change. RPM variance by window, illustrative: — 1 day ±21% ▮▮▮▮▮▮ (daypart, weekday, one big bid) — 3 days ±12% ▮▮▮▮ — 7 days ±7% ▮▮▮ — 14 days ±4% ▮▮ — 28 day…
@RPMReceipts