Optimize Facebook and Instagram campaign budget allocation across ad sets based on performance data and your goal.
Each ad set's recommended daily budget is derived from the optimization goal you select. Revenue-weighting allocates more dollars to ad sets driving the most revenue, inverse-CPA weighting favors the cheapest converters, and equal split divides the budget evenly. A floor is then applied so no ad set drops below your minimum threshold and starves itself of learning data.
CPA = Spend / ConversionsROAS = Revenue / SpendROAS goal: Recommended = Total Budget x (Ad Set Revenue / Total Revenue)CPA goal: Recommended = Total Budget x (1/CPA) / Sum(1/CPA)Equal goal: Recommended = Total Budget / Number of Ad SetsProjected Conversions = (Recommended Budget / CPA) x 30Projected Revenue = Projected Conversions x (Revenue / Conversions)Campaign Budget Optimization, commonly known as CBO, is one of the most powerful and most misunderstood features in the Meta Ads ecosystem. Instead of manually setting a budget for every individual ad set inside a campaign, CBO lets you set a single campaign-level budget and allows Meta's machine learning to automatically distribute it across the ad sets that are most likely to deliver the best results in real time. The promise is simple: rather than guessing which audience or creative will perform best, you let the algorithm shift dollars hour by hour toward the winners. In practice, however, CBO requires the right setup, the right data, and the right expectations. Our free Meta Campaign Budget Optimizer calculator helps you decide how much budget each ad set should actually receive based on your real performance numbers, so you can either guide your CBO decisions or run a more disciplined ABO setup with confidence.
Campaign Budget Optimization is a Meta Ads delivery feature that pools your spend at the campaign level and lets the auction algorithm distribute that pool across child ad sets based on which ad set is most likely to hit your optimization goal cheapest. With CBO turned on you cannot lock individual ad set budgets in dollars, you can only set minimum and maximum spend limits per ad set if you need guardrails. Meta is constantly comparing the predicted value of every available impression across every ad set in the campaign and routing budget to the auction that promises the best return. This is fundamentally different from manual budgeting because it removes your guesswork and replaces it with the platform's much larger dataset on user behavior, conversion likelihood, and competitive auction pressure.
Ad Set Budget Optimization, known as ABO, is the older approach where you manually set a daily or lifetime budget for every single ad set. ABO gives you complete control which makes it ideal for testing because you can guarantee that every audience or creative receives equal spend, producing clean apples-to-apples performance data. CBO, by contrast, is built for scaling proven winners. The general rule is simple: use ABO when you are testing new audiences, creatives, or placements because you need controlled budgets to read results fairly, and switch to CBO once you have validated which ad sets work and you want Meta to maximize total campaign ROI. Many advanced advertisers run a hybrid: ABO for testing campaigns and CBO for scaling campaigns built from those proven winners. CBO also tends to outperform ABO when your campaigns have at least three to four ad sets so the algorithm has meaningful options to choose between.
There are three mathematically defensible ways to allocate budget across ad sets when you are guiding spend manually or auditing what CBO is doing. The ROAS-weighted method allocates budget proportionally to the revenue each ad set has produced, sending more dollars to the ad sets that are generating the most top-line return on ad spend. The inverse-CPA method allocates budget proportionally to one divided by each ad set's cost per acquisition, which favors ad sets that produce the cheapest conversions even if their absolute revenue is smaller. The equal split method divides the budget evenly, which is the right choice during early testing because you want each ad set to receive enough spend to exit the learning phase. Each method has tradeoffs: ROAS-weighted scales high-revenue winners but can starve cheaper niche audiences, inverse-CPA optimizes for efficiency but can underfund high-AOV high-CPA winners, and equal split is fair but ignores performance signals. Most professional accounts default to a blend that respects both efficiency and absolute return.
Use CBO when your campaign has at least three ad sets, when each ad set has historically generated enough conversions to exit the learning phase, when your audiences do not have heavy overlap, and when your goal is to maximize total campaign-level results rather than guarantee per-audience volume. Avoid CBO when you are running structured tests and need controlled spend per ad set, when audience sizes are wildly different and the algorithm will simply chase the largest one, when most ad sets have very few conversions and the algorithm cannot distinguish quality, or when you have one ad set you specifically need to push for strategic reasons such as a remarketing pool that must always run regardless of immediate ROAS. As a final discipline, always set a recommended minimum budget floor per ad set so the algorithm cannot zero-spend ad sets that you still want to keep alive for learning, brand, or remarketing reasons.