Placement drift: the leak hiding in your average

Your account is at 3.8× and everything looks fine. Inside that number, one placement is returning 1.1× on a fifth of your budget, and the average is doing an excellent job of hiding it.

Adgent · Notes from building the analyst

Type
How-to
Topic
Attribution
Reading time
7 min
Published
19 March 2026
Updated
31 October 2026
Cover: a blended 3.8x ROAS split into a Feed 4.2x bar and an Audience Network 1.1x bar marked 'the leak'.

The most dangerous number in your account is the one that looks fine. A blended ROAS of 3.8× does not prompt an investigation; it prompts a nod and a move to the next tab. An average is a summary, and summaries are where problems go to hide.

Short answer A blended ROAS is a weighted average, so strong placements carry weak ones. A Feed at 4.4× on most of your budget hides an Audience Network at 1.1× on the rest, and the top-line 3.8× never moves. The waste is real; the arithmetic just averages it out of sight until you break the number down by placement.

How placements drift

Advantage+ placements let Meta's delivery system move your budget across Feed, Stories, Reels, Audience Network and the rest, chasing whatever the optimisation signal says is cheapest. Usually that is what you want; it is the whole point of letting the system optimise.

The catch is what “cheapest” is measuring. If the system is optimising toward a signal that fires more easily in one surface than another, it will happily pour budget into placements that generate the signal but not the outcome. Cheap impressions, cheap clicks, and revenue that never shows up. The drift is gradual, it is automatic, and nothing in the interface announces it.

The point, in one line The average did not lie to you. It just answered a different question from the one you were asking.

Why the arithmetic hides it

This is Simpson's paradox wearing a media-buying costume. A weighted average lets strong performers carry weak ones, and the more strong performers you have, the more weakness they can carry before the top-line number moves at all.

Feed and the placements carrying it · 81% of spend4.4×
Audience Network · 19% of spend1.1×
Blended, the number you watch3.8×
Blended, leak cut and budget redeployed4.4×
A worked sum, not an account: 0.81 × 4.4 + 0.19 × 1.1 ≈ 3.8.

Run the numbers: 81% of spend at 4.4× blended with 19% at 1.1× gives you 3.8×. Perfectly healthy-looking. Cut the leak and redeploy that budget into the placements that were carrying it, and you are at 4.4×: a 16% improvement that was invisible in the metric you were watching.

Finding the leak

The mechanical part is easy: break down by placement, sort by ROAS, look at the bottom. The judgement part is knowing what you are allowed to conclude from what you see.

  • Check the volume before the verdict. A placement at 1.1× on $80 of spend is noise. At $4,000 it is a decision. Small slices produce wild ratios for the same reason small samples do.
  • Check attribution before you cut. Upper-funnel placements often earn view-through credit that a last-click read never shows. A weak Reels number can be a strong Reels contribution being attributed to the Feed ad that closed it.
  • Check the trend, not the snapshot. Drift is a direction. A placement that has been sliding for three weeks is a different animal from one that had a bad Tuesday.

Nobody breaks down every campaign by placement every day. It is twelve clicks per campaign, it is boring, and it is usually nothing, which is exactly why it is usually missed. The check that only matters one week in eight is the check that never gets done.

Averages are answers to questions about groups. Your budget is not spent by a group. It is spent slice by slice, and that is where you have to look.

What drift actually looks like week to week

Placement drift is easy to miss because it does not arrive as an event. There is no alert, no red number, no day where the account breaks. It is a slow reallocation. Week one, Audience Network is 12% of spend at 2.9×. Week three it is 17% at 2.1×. Week five it is 21% at 1.4×. Every individual week looks like noise, and the blended number barely twitches because the placements carrying it are getting a little stronger at the same time. The trend only becomes obvious once you line up the weeks, and nobody lines up the weeks for a metric that looks fine.

This is the same failure that shows up across the whole discipline: the summary number moves last. By the time your blended ROAS dips enough to prompt a question, the leak has been growing for a month and you have already spent the money. Meta's delivery system is not malfunctioning when this happens; it is doing exactly what you told it to do. Advantage+ placements optimise toward the conversion signal, and if that signal is cheaper to trigger on the Audience Network than on Feed, the system will keep shifting budget there. Cheaper to trigger and cheaper to convert are not the same thing, and the gap between them is where your money goes.

The attribution trap underneath the leak

Before you cut a low-ROAS placement, you have to be sure the number is telling the truth, and placement-level ROAS is one of the easiest numbers to misread. A last-click model assigns the whole conversion to the placement that closed it, which is almost always Feed or Search. Upper-funnel surfaces like Reels and the Audience Network do the priming work and get none of the credit. So a placement reading 1.1× on a last-click basis might be contributing far more once you account for the view-through impressions that warmed the user up three days before they converted somewhere else.

That is the difference between a placement that is genuinely leaking and one that is simply mis-credited by your attribution setup. Cutting the first recovers budget. Cutting the second quietly kills your top of funnel, and your Feed ROAS drops a week later for reasons that look unrelated. It is the same bookkeeping problem we dig into in Meta says 4.2×, Google says 3.1×: the number you trust depends on the window and the model that produced it, and two placements are rarely measured on the same one.

How to run the check without doing it by hand every day

The honest problem is that the placement breakdown is a chore that pays off maybe one week in eight. Twelve clicks per campaign, sorted by ROAS, cross-referenced against volume, trend and attribution window: done properly it is twenty minutes of tedium that usually turns up nothing. So it does not get done, and the one week it would have mattered slides past.

The fix is not discipline; it is decomposition on every read. Adgent is a team of AI agents working toward your marketing goals, and one of its ten specialists, Placement & Network Optimizer, has exactly this job: inefficient placements, devices, geos, networks and channels, each finding with an estimated monthly amount on it. On one live account, its screen held five open placement findings worth an estimated $144 a month (₺6,950), carried over from an earlier read rather than re-read in that day's run. Two of them:

AdgentPlacement & Network Optimizer · one live account, September 2026 · translated from Turkish

“Reels is 43% cheaper, but 74.5% of the budget is in Feed.”

“In this ad set the Notifications placement doubles the CPA.”

The leak runs both ways: budget sitting on an expensive surface is the same problem as budget drifting to a cheap one that does not convert. An AI media buyer turns that decomposition into a ranked decision with the current mix, proposed move and monthly impact attached. The boring check against slow leaks keeps running, and the finding stays open with an owner until the account team closes it.

None of this means Advantage+ is a mistake or that you should hand-pick every placement. Letting the system optimise is usually right. The move is to keep watching the decomposition underneath the average, to treat the blended number as a headline and never as the story, so that when a placement starts drifting you catch it in week two instead of paying for it through week six.

Frequently asked

How can a good blended ROAS hide a leak?
A blended ROAS is a weighted average, so placements that perform well carry the ones that do not. When most of your budget sits at 4.4×, a slice at 1.1× barely moves the top-line 3.8×. The loss is real but averaged out of sight.
What is placement drift?
The gradual, automatic reallocation of budget by Meta's Advantage+ delivery toward whatever surface is cheapest to trigger the conversion signal on, even when that surface converts poorly. It happens slowly, without any alert, and nothing in the interface announces it.
How do Advantage+ placements drift?
Advantage+ moves budget across Feed, Stories, Reels and Audience Network chasing the cheapest optimisation signal. If that signal fires more easily on one surface than another, the system pours spend there: cheap impressions and clicks, but not always the revenue that should follow.
How do I find a placement leak?
Break each campaign down by placement, sort by ROAS, and look at the bottom. Then check three things before you act: the spend volume behind the ratio, the attribution window feeding it, and the trend (a placement sliding for weeks, not one bad day).
Why does averaging conceal wasted spend?
It is Simpson's paradox in a media-buying costume. A weighted average lets strong performers absorb weak ones, and the more strong performers you have, the more weakness they can carry before the top-line number moves at all. The waste never shows up in the summary.
How do I fix placement leakage?
Confirm the leak is real (enough volume, a trusted attribution window, a directional trend), then cut it and redeploy that budget into the placements already carrying the account. In the 81%-at-4.4× example, that lifts blended ROAS from 3.8× to 4.4×.
Who wrote thisWritten by the people building Adgent, the AI employee that carries brand context into every growth decision. Related product: the Decisions screen.

Bring the same question to your own account. Adgent returns its position, the evidence underneath and what the finding is worth a month.

Pricing