Campaign Budget Optimization is a Meta Ads (and now Google Performance Max) setting where the budget lives at the campaign level rather than the ad-set level. The platform's algorithm decides which ad sets get how much in real time, based on which one is currently producing the cheapest conversions. CBO replaces the old default where you set a daily budget per ad set yourself.
Why it usually wins
Manual ad-set budgets force you to predict which audience is going to perform on a given day. The algorithm sees the auction in real time and reallocates faster than any human could. For most accounts CBO produces 10-25% better CPA at the same total spend, simply by funnelling budget to whichever ad set is winning that hour.
When ABO is still right
- Testing — when you specifically want each ad set to get equal spend so you can compare them
- Mixed-stage campaigns where retargeting and prospecting share a campaign — CBO will starve the higher-CPA prospecting in favour of cheap retargeting, which kills the funnel
- Tight per-audience budget caps required by client / compliance
Operator notes
- Use CBO only when ad sets in the campaign serve the same funnel stage — never mix prospecting + retargeting in one CBO campaign
- Give CBO at least 7 days before judging — the algorithm needs delivery data to find its preferred ad set
- Min/max ad-set spend caps inside CBO let you keep some control without going back to ABO entirely