D30 payback for midcore F2P: censoring and maturity rules

Editorial collage hero: measurement-lab-d30-payback-midcore-censoring

Illustrative lab showing how immature D30 windows distort midcore payback when late cash is censored.

Midcore cash often arrives after day 7. Reading a D30 payback on a cohort that is only 12 days old silently censors unpaid future days. This lab makes the censoring explicit with illustrative inputs.

Define the calculation before using it

For a cohort aged A days where A < 30, observed revenue-to-date is not D30 revenue. Define mature D30 payback only when A >= 30 under your revenue definition. For immature cohorts, report observed_payback_to_date and days_observed, not “D30”. AppsFlyer activity metrics define ROAS as revenue/cost; they do not licence calling partial windows by a mature label.

Work through the synthetic example

InputValueStatus
Cohort media cost20,000illustrative
Revenue observed through day 123,600illustrative
Days observed (`A`)12illustrative
Mature window target30definition
OutputResult
Observed payback to date0.1800
Window mature for D30 label?false
Label to use in the meetingpayback_to_day_12

A second synthetic mature cohort: cost 20,000, D30 revenue 7,400 → D30 payback 0.3700, mature=true.

Facts versus limits

FieldEvidence
ROAS definition pointerAppsFlyer activity metrics
Midcore LTV shapeNot claimed as a market curve
Forecast from day 12 to day 30Not performed here

Download the lab CSV.

Related posts

Türkiye child-profiling ad limits for F2P

media buying

·

1 min read

Türkiye child-profiling ad limits for F2P

VIP / loyalty points as a UA claim: what must be in the store

media buying

·

1 min read

VIP / loyalty points as a UA claim: what must be in the store

Lunar New Year Vietnam (Tết) operator checklist

media buying

·

2 min read

Lunar New Year Vietnam (Tết) operator checklist