Content drop-off
Analytics → Content (/analytics/content) tells you which titles are working and where in the story users abandon. This is the primary editorial feedback loop.
Series list
Section titled “Series list”Table view of all published series with:
| Column | Definition |
|---|---|
| Series | Title + thumbnail |
| Starts | Distinct users who watched ≥1 second of episode 1 (period-scoped) |
| Completes | Distinct users who finished the series (last episode completed=true) |
| Completion % | completes / starts |
| Unlocks | Total paid unlocks across all episodes of the series |
| Coins burned | Total sink_unlock coins attributed to this series |
| Watch seconds | Aggregate viewing time |
| Avg drop-off ep | Median episode number where users last watched |
Sort by any column. Filter by market, date range.
Per-episode drop-off curve
Section titled “Per-episode drop-off curve”Click any series → detail page with per-episode drop-off:
X-axis: episode number. Y-axis: % of series starters who watched this episode.
Reading it:
- Steep drop between ep 3 and ep 4 = paywall friction (first 3 episodes are free). This is normal; the size of the drop measures conversion.
- Steep drop mid-arc (e.g. ep 7-8) = story problem. The next release should tighten there.
- Flat curve at the end = the show holds: cast a sequel.
Unlock conversion
Section titled “Unlock conversion”Per-series, per-episode:
- Paywall hits: mobile clients that surfaced the unlock prompt (from
analytics_event). - Unlocks: actual
episode_unlocksrows. - Conversion %: unlocks / paywall hits.
Under 10% conversion for a whole series = the pricing is off OR the show doesn’t earn its price. Common fix: cheaper series-level override.
Cliffhanger score correlation
Section titled “Cliffhanger score correlation”The detail page shows cliffhanger_score per episode alongside its drop-off. High cliffhanger scores should correlate with low drop-off (users pushed through the paywall). If a scored-90 episode has 70% drop-off, the score is wrong: retag it in the episode editor.
Filters
Section titled “Filters”- Market (ISO-2)
- Date range (period the numbers cover)
- Genre / Trope filters for the series list
Data source
Section titled “Data source”- Rollup:
rollup_series_daily(day, series_id, starts, completes, unlocks, coins_burned, watch_seconds) built byrollups-hourlycron. - Raw drill-down for the curve uses
WatchProgressandanalytics_eventwith a 30-day cap.
Gotchas
Section titled “Gotchas”- New series with < 100 starts: the curve is noisy. Wait for more data before drawing conclusions.
- A/B test overlap: if you’re running a price A/B, drop-off between free and paid episodes can shift. Segment by test variant if needed.
- Multiple markets: always filter by market when comparing similar-genre shows. Different markets have wildly different conversion norms.
API calls
Section titled “API calls”| Action | Endpoint |
|---|---|
| Content list | GET /v1/admin/analytics/content |
| Per-series drilldown | GET /v1/admin/analytics/content/series/:id |
Full details in API: Analytics.