CBO vs ABO in 2026: The Auction Math Behind Why We Run 90% of Client Budget on CBO

A homewares brand came to us last quarter running eleven ABO campaigns, each one a tidy little box with the budget pinned to the ad set. Spending ~$40k a month. The owner was proud of it - he could tell you exactly what every ad set was getting, to the dollar.
The problem was that one ad set, sitting at a 1.2x return, had quietly eaten ~$5k of the month while three ad sets clearing 2x got starved at $20 a day each. He'd built a system that forced money into his worst performers and choked his best ones. And he genuinely believed ABO was outperforming CBO for him, because he'd never run the comparison properly.
That account is the whole argument in miniature. So let me actually open the bonnet on this one, because "CBO vs ABO" gets argued on vibes and almost never on the mechanic that decides it.
Quick definitions first, so we're on the same page. ABO (ad set budget optimisation) means you set the budget at the ad set level - you decide each ad set gets $20, or $100, or $350 a day. CBO (campaign budget optimisation, what Meta now calls Advantage campaign budget) means you set one budget at the campaign level and let Meta distribute it across the ad sets based on what's working that day.
That distinction sounds administrative. It isn't. It changes the auction you're playing in.
The auction-overlap problem nobody draws out
Here's the bit that gets skipped. When you run several ad sets inside one campaign targeting broadly similar people, those ad sets can end up bidding in the same auctions, for the same person, at the same time. That's auction overlap. And how you've set your budget decides whether overlap quietly taxes you or barely touches you.
Picture one customer Meta could show your ad to. Four of your ad sets all want her.
Under ABO, every one of those ad sets has a budget it's been told to spend. So all four are pushed to keep bidding to hit their number. They compete against each other for the same impression. The winning bid drags the price up - you effectively bid against yourself, and you pay a CPM you set in motion. You spent more to reach a person you were always going to reach.
Under CBO, Meta isn't obligated to make all four chase her. It picks the ad set with the best shot at your result, spends through that one, and stands the others down for that auction. Less internal competition, less self-inflicted price inflation.
Let me put rough numbers on it so it's not just theory.
Say that impression is genuinely worth about a $12 CPM to reach. Under ABO with four ad sets elbowing each other, you might clear it at a $16-18 CPM - call it a third more than you needed to pay, purely because your own ad sets bid the price up. Run that ~30-40% inflation across a month of overlapping auctions and it's not a rounding error. On a ~$40k spend that's the difference between a blended 2.0x and something closer to 1.6x, and you'd swear the creative was the problem.
Under CBO that same impression clears nearer the $12 it was actually worth, because only one of your ad sets showed up to bid for it.
That's the mechanic. It's not that CBO is "smarter AI". It's that CBO stops you from competing with yourself.
"But ABO works better for me"
This is the line I hear most, and I want to be fair to it before I push back. Plenty of experienced buyers will tell you ABO beats CBO in their account. I don't think they're lying. I think, almost always, they're comparing a well-managed ABO against a badly-built CBO.
Here's my honest take: most "ABO wins for me" results are a setup problem, not a structure truth.
When someone says CBO underperformed, I'll ask what their CBO actually looked like. The answers are usually some version of the same three mistakes:
- They mixed wildly different audiences and offers in one campaign. CBO distributes to the best opportunity - so if one offer is structurally cheaper to convert, it hoovers the budget and the rest get nothing. That's not CBO failing. That's CBO doing its job on a badly grouped campaign.
- They never let it exit learning. They launched a CBO, panicked at day-two numbers, and started yanking budgets and pausing ad sets. A CBO that's reset every 48 hours never gets to do the thing it's good at.
- They ran it with no guardrails at all, then concluded the loss of control was inherent to CBO. It isn't. You can absolutely pull levers inside a CBO - more on that below.
In reality, a clean CBO against a clean ABO, same creative, same offer, properly grouped - the CBO wins on blended efficiency the large majority of the time, for one reason: it isn't paying the overlap tax. Across the accounts we manage, roughly 90% of total spend sits in CBO campaigns and about 10% in ABO, and that split has held as we've scaled brands from ~$30k to past ~$200k a month.
I'm not telling you to take that on faith. I'm telling you the comparison most people ran wasn't a fair fight.
The control problem, and how to actually solve it
The real, legitimate gripe with CBO is control. You hand Meta the budget, and sometimes a new ad set you genuinely want tested gets zero spend because the campaign's existing winners are starving it. That's a real frustration, and it's where a lot of people bail back to ABO.
But the fix isn't ABO. The fix is ad set spend minimums inside the CBO.
In any CBO ad set there's a minimum and maximum spend control. Switch the new ad set from a percentage to a dollar minimum, and set the minimum to roughly 1x your target cost per acquisition. If you're aiming for a ~$50 CPA, force that ad set a ~$50 daily floor.
Now one of two things happens, and both are useful:
- The ad set spends its forced floor and performs - great, it earned a real test and you scale it.
- It spends the floor and flops, or it can't even spend the floor - also great, because after 7 to 14 days you kill it knowing it had a genuine shot and didn't take it.
Either way you've kept the CBO's overlap advantage and bought back the control you actually wanted. You don't need to abandon the structure to get a fair test. You need one setting.
That's the move I wish more people knew about, because it dissolves the single best argument for going back to ABO.
Where ABO genuinely wins (these cases are real)
I'm not an ABO absolutist in reverse. There are two situations where I'll happily run it, and they're specific.
1. High-ticket, low-volume products. If your average order value is north of ~$1,000 and you're getting a handful of purchases a week, CBO struggles. It optimises on signal, and at that volume there simply isn't enough purchase data flowing for it to distribute confidently. It'll lurch. In that world I want to force budget into the ad sets and audiences I've reasoned my way to, and feed the algorithm manually while learnings build. Think furniture, high-end equipment, considered-purchase B2C. Here ABO's control is a feature, not a tax.
2. Deliberate, protected testing where you refuse to let the budget move. Sometimes you want to give a specific angle a clean, guaranteed read - a price test, a new audience you have conviction about, a creative concept you don't want strangled at birth by your incumbent winners. An ABO ad set, or a small standalone ABO campaign at maybe a tenth of your main CBO's budget, guarantees that test gets its spend regardless of how it's tracking hour to hour. You're trading efficiency for a clean signal, on purpose, for a short window.
Notice what both exceptions have in common: low data, or a deliberate decision to override the algorithm. That's the honest boundary. Outside of those, the overlap maths just favours CBO, and I'd rather have one budget doing the distributing than eleven ad sets bidding the price up against each other.
What I'd actually do in your account
If you're sitting in a pile of ABO campaigns wondering whether to consolidate, here's the short version of my take.
Group by genuine business objective, not by audience type - one CBO per real objective (a product line, a country with its own shipping and language, a distinct offer), winners living together inside it. Add new test ad sets into that same CBO with a dollar-minimum floor at ~1x CPA so they get a fair shot. Keep ABO in your back pocket for true high-ticket low-volume, or for a protected test you've consciously chosen to ring-fence. And whatever you change, give it more than 48 hours before you judge it.
Most of all, stop comparing a loved ABO against a neglected CBO and calling it evidence. Build both properly, then look at the blended number.
The honest reason I'm confident here isn't that the algorithm is magic. It's the auction. CBO stops your own ad sets bidding against each other, and that overlap saving compounds across every auction you're in, all month.
If you've run the ABO-versus-CBO comparison yourself and ABO genuinely came out ahead, I'd love to be proven wrong - but I'd want to see how each one was actually built first. That's usually where the answer is hiding, and it's exactly the kind of thing a Signal/Noise Audit pulls apart: we rebuild the comparison properly, strip out the overlap tax, and show you where your blended efficiency is really leaking. Half the time the structure was never the problem at all.
.webp)





