AD PLATFORM
> METRICS DESIGN FOR AN AD-SUPPORTED STREAMING PLATFORM // 0 TO 1
The founding analytics engineer on a new ads business. No dashboards exist. No metrics are defined. The product team is building an ad-supported streaming tier, and the first question is: what do we measure?
This project simulates that 0-to-1 journey. The domain models an ad-supported streaming platform end-to-end — impression requests, real-time auction, ad delivery, viewability measurement, and billing reconciliation. Every metric was chosen because it answers a specific business question a stakeholder will ask in the first 90 days.
When nothing exists yet, stakeholders arrive with questions — not requirements. The analytics engineer must translate ambiguity into measurable signals:
- > "Is our inventory monetizing?" — Fill rate, eCPM, revenue per subscriber hour
- > "Are campaigns delivering on schedule?" — Pacing ratio, budget burn, over/under detection
- > "Is our audience valuable to advertisers?" — eCPM by genre, completion rates, viewability
- > "Are we showing too many ads?" — Frequency cap compliance, ad fatigue signals
METRICS DESIGN
Fill rate, eCPM, completion, viewability, RPSH
Formulas, thresholds, and business context for each
CAMPAIGN PACING
Budget tracking, delivery status, over/under detection
Pacing ratio with configurable alert thresholds
REVENUE ANALYTICS
Advertiser mix, genre monetization, HHI concentration
Revenue diversification and pricing health signals
SELF-SERVICE TOOLING
Campaign Pacing Monitor for business users
Streamlit app — no SQL required for ad ops teams
DATA LAYER
PostgreSQL 16 — analytical database
dbt Core — 20 models across 3 schemas
Python + NumPy/Faker — synthetic ads data generation
10 ad verticals modeled (auto, CPG, tech, pharma, etc.)
PRESENTATION LAYER
Metabase OSS — ad platform health dashboard
Streamlit — Campaign Pacing Monitor
8 core metrics with formulas and thresholds
HHI concentration index for revenue diversification