Dashboard
Northlight Media — Wordfall and northlight.co. Last 30 days, compared with the baseline agreed on 2026-07-14.
Coverage is 83.5% of impressions, derived from the source table on Data Availability rather than stated. The remaining 16.5% is Meta Audience Network, AdMob Partner Bidding and AdX web, which report in aggregate only. Those impressions are in revenue totals and excluded from anything per user.
Revenue per user against the frozen pre-Publifter baseline. Measured on user-level impressions only, then extended to total volume.
Daily, blended across app and web: 889,400 active users (612,400 app, 277,000 web). Total revenue over the same denominator implies $0.0496.
All sources, including the aggregate-only ones.
Requests filled across app and web. Backfill recovered inventory that earned zero before.
Setup
What is still outstanding before every number here is complete.
AdLynk revenue carve-out
Excluded from the uplift fee, every month, visible here.
AdLynk-sourced revenue is 9.0% of your 30-day ad revenue. It is counted in your totals and subtracted before the uplift fee is calculated, so you never pay a yield fee on demand we brought. Check this number against your own statement whenever you like.
71% of active users are on an app version carrying the SDK. Adoption ramps as users update their app, not on the release date, so per-user figures cover this share of users and no more. Everything above it is measured on that share, then extended.
Revenue per user
Daily, with the agreed baseline marked.
Revenue concentration
Users ranked by 30-day ad revenue, split into deciles.
The top decile is 38.4% of ad revenue. The top fifth is 56.5%. One floor for all of them leaves money on both ends.
Open User Value →Feed health
What is live, what lands tomorrow, what never arrives per user.
| Source | Granularity | Freshness | Share of impressions |
|---|---|---|---|
Google AdMob AdMob SDK paid-event callback + AdMob Reporting API | per impression | real-time | 31.2% |
Google Ad Manager GMA SDK paid-event callback + Ad Manager API | per impression | real-time | 14.6% |
AppLovin MAX MAX SDK revenue callback + User-Level Ad Revenue API | per impression | 8h after UTC day end | 22.8% |
ironSource / Unity LevelPlay LevelPlay SDK impression callback + User Ad Revenue API | per impression | next-day | 9.4% |
Prebid.js (web) Prebid.js auction event listeners | per impression | real-time | 8.3% |
Meta Audience Network Meta Audience Network Reporting API | aggregate only | next-day | 9.8% |
Google AdSense / AdX (web) AdSense Management API | aggregate only | next-day | 3.9% |
86.3% of impressions carry per-user revenue. The rest is reconciled at cohort level and never enters a user score.
Alerts
Newest first.
- Supply chain2 h ago
The unityads.com line 5851a4b7 is no longer present in app-ads.txt. It earned $41,600 in the 30 days before it vanished. Buyers cannot purchase that path at all right now.
Look at it → - Feed6 h ago
LevelPlay user-level API returned no file for 11 Sep. Retention is 14 days, so this gap closes permanently on 25 Sep.
Look at it → - AcquisitionYesterday
TikTok Android does not pay back on its measured revenue curve. Cost per user is $1.51 against $1.28 of revenue per user over 60 days.
Look at it → - RoutingYesterday
Premium-tier floor test finished. Measured lift 6.8% against a modelled 7.4%.
Look at it →
Users with 30 days of user-level impressions. Below that they sit unscored in Core.
App and web combined.
Baseline is frozen. It does not move when yield improves.