← Docs

Meta Ads Concepts

CBO vs. ABO: who controls the budget across your ad sets

How Campaign Budget Optimization distributes spend across ad sets automatically, when to use it instead of setting budgets by hand, and how it interacts with the Campaign Wizard's variants.

Every campaign has to answer one structural question before it answers anything about targeting or creative: who decides how much money each ad set gets? Campaign Budget Optimization (CBO) hands that decision to Meta’s algorithm, at the campaign level. The alternative, Ad Set Budget Optimization (ABO), keeps that decision with you, one ad set at a time.

What each one actually does

With CBO, you set a single budget on the campaign. Meta continuously reallocates spend across every ad set inside it, shifting money toward whichever ad set is currently producing the best results and pulling it back from ones that aren’t. This happens throughout the day, not once at launch.

With ABO, each ad set gets its own fixed budget that you set directly. Nothing shifts between ad sets unless you move it yourself.

CBO ABO
Budget lives at Campaign level Ad set level
Distribution decided by Meta, continuously You, manually
Strongest for Scaling a set of ad sets that already convert Comparing new audiences on equal footing
Weak point One large or cheap audience can absorb most of the spend A losing ad set keeps its full budget until you notice and intervene

Where this maps onto the Campaign Wizard

When the Campaign Wizard builds variants from your detailed targeting, placement, and naming template, it’s effectively producing the set of ad sets that CBO or ABO will then have to fund. That makes the choice a structural one, not a preference:

  • Testing a new set of variants, different detailed-targeting criteria, different placement splits, calls for ABO. CBO will happily starve a slower-starting variant in favor of a larger or cheaper one before you’ve learned anything about relative quality.
  • Scaling a naming-template structure that’s already proven, the same ad sets, now with a track record, is exactly where CBO earns its keep. It shifts budget toward the best-performing combination without you rebalancing spend by hand every day.

Rules of thumb worth keeping

CBO needs real options to optimize across. With only one or two ad sets in the campaign, there’s nothing meaningful for the algorithm to compare, use ABO and set the split yourself. Three or more ad sets, ideally with audiences of a similar size, is where CBO starts to work as intended.

Audience size skews the outcome more than audience quality. If one variant’s detailed targeting reaches 20 million people and another reaches 200,000, CBO will lean toward the larger pool simply because cheap results are easier to find there, even if the smaller audience has a better underlying cost per result. Keep audience sizes in the same order of magnitude, or split them into separate campaigns.

Spend limits can quietly turn CBO back into ABO. Meta lets you set a minimum and maximum spend per ad set inside a CBO campaign, which is useful for guaranteeing a retargeting ad set doesn’t get starved. But if the minimums you set add up to most of the campaign budget, you’ve recreated ABO with extra steps. Keep minimum limits, in total, well under half the campaign budget so CBO still has room to actually redistribute spend.

Switching from ABO to CBO resets the learning phase. Every ad set in the campaign re-enters learning when this changes, and a dip in performance for several days is normal, not a sign the switch was wrong. Either launch new structures on CBO from the start, or make the switch and hold off judging results for a full week.

What YieldBI surfaces

Growth Controls read spend distribution across every ad set alongside your Profit Goal. If a CBO campaign is routing the bulk of its budget into one variant, the daily action list distinguishes between “this variant is genuinely outperforming” and “this variant just has the larger audience”, the two situations that are otherwise easy to confuse from Ads Manager alone.