Every Meta campaign makes you answer one question before it spends a dollar.

Who decides where the money goes: you, or Meta?

That's the whole CBO vs ABO debate. The right answer depends on what the campaign is for.

The short version

With CBO you set one budget for the campaign and Meta splits it between ad sets. With ABO you give each ad set its own budget and Meta can't move it.

CBO = one budget, Meta splits it. ABO = one budget per ad set, you split it.

The names have changed. CBO stands for campaign budget optimization, and Meta now calls it Advantage+ campaign budget, or simply "campaign budget". ABO is "ad set budget". Media buyers still say CBO and ABO, so I will too.

The jar and the envelopes

I explain it as the jar and the envelopes.

CBO is one jar of money. Meta reaches in all day and hands more to whichever ad set has the best chance of a result right now.

ABO is envelopes. You put a fixed amount in each one, and that ad set spends it whether it's the best use of the money or not.

The jar is better at getting results. The envelopes are better at getting answers.

How CBO actually behaves

Meta's description: the budget "continuously distributes in real time to ad sets with the best opportunities" (Meta Business Help Center). Three things follow from that.

1. The split won't be even. Meta says it "may not spend your budget equally", and that it might put most of the budget on one ad set. That's the feature working, not a bug.

2. Bigger audiences usually get more. If your ad sets differ a lot in audience size, Meta says the largest will probably receive the most budget.

3. You judge the campaign, not the ad set. An ad set that got 5% of the budget hasn't failed. It was never really tested.

It also needs something to choose between. Meta says campaign budgets suit campaigns with at least two ad sets, and that a campaign with one ad set "works the same as an ad set budget".

When I use CBO

  • Scaling what already works. Proven ads, proven audiences, and I want the most results for the money.
  • Ad sets that are roughly alike. Similar audience sizes, same goal.
  • Advantage+ sales campaigns. A campaign budget is one of the three switches that keep Advantage+ on. More in Advantage+ shopping campaigns are now sales campaigns.

When I use ABO

  • Testing. If three new concepts need $50 a day each to get a fair read, envelopes are the only way to guarantee it. With a jar, one concept can take the lot before the others have been seen.
  • Very different audiences in one campaign. Retargeting next to broad prospecting, for example. The big audience would swallow the budget.
  • Fixed budgets per market or product. Meta says so directly: with strict budget requirements for each ad set, consider ad set budgets.
  • Different bid strategies or schedules. Ad set budgets let each ad set have its own.

How those tests are structured is in creative testing on Meta.

The mistakes that break CBO

Most CBO complaints trace back to one of these. They're all in Meta's own best practices.

Pausing and unpausing ad sets. Pausing one sends its share to the others. By the time you turn it back on, Meta warns, "there might not be any budget left".

Pausing ad sets with low delivery. It feels tidy. Meta says it stops the system finding tomorrow's opportunities and can raise the cost per result on the ad sets you kept.

Leaning on ad set spend limits. Minimums and maximums are allowed, and Meta says to use them "sparingly, or not at all". Every limit takes money out of the jar. Add enough of them and you've rebuilt ABO with extra steps.

Editing one thing at a time. Make your changes together. One at a time, the campaign can re-enter learning with each edit.

Adding ad sets one by one. Add them in a batch. Meta says the budget can take about two hours to readjust each time a new ad set appears.

What it does to the learning phase

Less than people fear. From Meta's page on significant edits:

  • Learning takes the same time with a campaign budget as with ad set budgets.
  • Meta moving money between ad sets does not reset learning.
  • Adding a new ad set does not reset the others.
  • A big change to the campaign budget, or a new bid strategy, can reset several ad sets at once.

The last one matters when you scale. Raise a CBO budget in steps rather than doubling it overnight. The full list of what resets learning is in the Meta ads learning phase.

The setup I use most

Both, in separate campaigns.

A testing campaign on ABO, where every new concept gets its own envelope and a fair read. A scaling campaign on CBO, where the winners go and Meta decides how to spend between them.

Tests answer "does this work?". The scaling campaign answers "how much of it can I buy?". Mixing the two jobs in one campaign is how you end up with neither answer.

Pool rule 005Every test has one job.

Quick answers

What is CBO in Facebook ads? Campaign budget optimization: one budget at the campaign level that Meta distributes across ad sets. Meta now calls it Advantage+ campaign budget.

What is ABO? Ad set budget optimization: each ad set has its own fixed budget.

Is CBO better than ABO? For getting the most results from proven ad sets, usually. For tests where each ad set needs guaranteed spend, ABO is better.

Why does one ad set get all the budget in CBO? Meta sends money to where it expects the best results, and larger audiences tend to get more. Judge the campaign total, or move that ad set to its own campaign.

Can I set a minimum spend per ad set with CBO? Yes, with ad set spend limits. Meta recommends using them sparingly, because each limit reduces what it can optimize.

The one-line version

Use the jar when you want results and the envelopes when you want answers. Don't ask one campaign for both.