Day-0 ROAS predicted day-28 ROAS better than cost per purchase did. I checked it on 38 Meta app campaigns and $606,462 of spend.
Two definitions first
These terms get used loosely, so let me pin them down.
D0 VO is value optimization against a day-0 revenue signal. The bidder is looking for users who spend money in the first 24 hours. For this app it runs on Meta’s standard purchase value, since a custom day-0 revenue event is not yet shared. And the app keeps monetizing well beyond day 0 thanks to its high value, so day 0 is an early signal here, and by no means the whole picture.
CPA optimization is cost per purchase. The bidder is looking for the cheapest purchase event it can find, and nothing in that objective tells it what the purchase was worth.
The test
I ranked the same 38 campaigns both ways, then checked what each ranking actually returned by day 28 in the MMP.
Rank correlation with day-28 ROAS came out at +0.96 for day-0 value and -0.81 for cost per purchase.
Said another way, take any two campaigns from that account. Day-0 value calls the better one 92 percent of the time. Cost per purchase manages 80.
The gap opens when you get selective
Back all 38 campaigns and both rankings hand you the same account. Back the best 13 and the day-0 ranking returns 96.6 percent by day 28, against 85.9 for the CPA ranking.
38 campaigns, $606,462 of spend, April to June 2026. Adjust cohorts and Meta Ads Manager.
Caveats worth stating
April to June only, so day 28 is observed and not modeled. One account. 38 campaigns is a direction rather than a rule, so I would rerun it on your own data before moving budget.