The ROAS doubled. Nothing had improved.
After a handover, an account's ROAS went from about 4.5x to about 9.5x. We pulled the Meta activity log and showed the improvement was almost entirely a 90% budget cut.
The situation
An ad account changed hands. Within a few weeks the reported ROAS had roughly doubled — from about 4.5x to about 9.5x — and the obvious conclusion was that the new setup was simply better.
The brand owner was comparing one number across the two periods. That is the normal thing to do, and it is almost always the wrong thing to do.
What we found
We pulled the account’s full activity log through the Meta API — every change, who made it, when, and the old and new values — and lined it up against daily insights.
No targeting, bid, optimisation or audience changes were made. The campaigns themselves were untouched. What happened was that everything was paused for two days, then restarted with budgets cut by roughly 90%: one campaign dropped from about ₹5,000/day to ₹1,000/day, another from ₹3,000/day to ₹300/day.
That alone explains the entire ROAS move. At low spend you are buying the cheapest, warmest, most organically-primed slice of the audience, and it converts extremely well. Push spend up and you buy progressively colder traffic — which is why the same campaigns sat at 4–5x at full budget and 9–10x at a fifth of it. The ROAS did not improve. The account simply stopped trying to grow.
Two things stopped this being a simple story, and both are worth stating:
The revenue was real. We confirmed the attributed sales against Shopify rather than taking the platform’s word for it, and last-14-day profit at a 40% margin came out slightly ahead of the previous benchmark — roughly ₹13,000/day against about ₹12,000/day — on a fifth of the spend. Harvesting a warm audience is a legitimate strategy. It is only a problem when it is mistaken for improved performance.
There was genuine good work in there too. Weekly small-budget product tests at ₹300–800/day, with losers killed within two to five days, produced one clear winner at 21x on a ₹119 CPA. That is real skill and it deserved credit — just not credit for the headline ROAS number.
There was also a confounder in the “before” period that had nothing to do with anybody’s management: an Instagram account suspension had killed reel delivery for about a week, which made the earlier baseline look worse than it was.
What it means for you
A ROAS number on its own tells you almost nothing, because it moves with spend level. Two accounts at 9x and 4.5x can be the same account, run the same way, at different budgets — and the 4.5x one may be building the business while the 9x one quietly stops.
If your reported ROAS has improved sharply and nobody has explained what changed, the first thing worth checking is whether spend went down. The Meta activity log will tell you, and it is a matter of public record inside your own account.
What did not work
The budget figures in Meta’s activity log are returned in paise, not rupees. Read them
as rupees and every number is off by a factor of a hundred, which we did on the first pass
and had to correct. Similarly, every asa_auto_custom_audience entry in the log is
generated automatically by Advantage+ — reading those as manual changes would have
produced exactly the wrong conclusion about who did what.
Want this run on your own account?
Comparing ROAS across two periods without checking the spend level behind it is one of the most common ways brands are misled — usually without anyone intending to mislead them. A Forensic Ads Audit checks the activity log alongside the numbers.
Want to know what your own numbers actually say?
The Forensic Ads Audit is a fixed-scope, fixed-price look inside your account and your tracking. You get a written report and a call.