💡 In this article you'll learn how to use Campaign Budget Optimization (CBO) to maximize your campaign performance and how to combine it with Smartly.io optimization features such as Predictive Budget Allocation to improve performance and automation further.
We'll talk about Campaign Budget Optimization best practices, such as
- CBO campaign structures
- how to bid with CBO
- when to use Smartly.io optimization features with or without CBO
For a more general overview on Meta CBO, see Introduction to Campaign Budget Optimization (CBO).
Combine CBO with Smartly.io features for best performance
CBO handles optimal spend between ad sets of a single campaign. Beyond that, there are many ways that Smartly.io can help you:
- optimize towards 1st and 3rd party metrics with Budget Pools
- optimize across campaigns using Budget Pools
- automatically scale your spend using Budget Scaling
- automate your monthly/quarterly/any budgets using Smart Budget Scheduling
Read more below on using Smartly.io features with CBO.
How to structure CBO campaigns
1. Separate different funnel steps in different CBO campaigns
The CBO algorithm maximizes the number of attributed conversions you get from the campaign. In other words, it only cares about how many conversions happen during a number of days after clicking or seeing the ad – it doesn't care about how many conversions were caused by the campaign! With this in mind, don't mix different funnel stages in a single campaign, for example retargeting and prospecting.
For example, if you put retargeting and prospecting audiences in the same campaign, CBO will likely spend all of the budget on the retargeting audience. This is not ideal: the conversions in the retargeting audience could have happened anyway, even without the ads, because those users already showed intent towards your product. The retargeting audience probably has lower lift, and without prospecting, you're not acquiring new customers who did not yet know about your product.
2. Don't use ad sets with very different audience sizes in one CBO campaign
Experience has shown us that CBO can have trouble optimizing when the ad sets in the campaign have very different audience sizes. It seems that CBO will often neglect the smallest ad sets and only spend in the largest ones, even if the smaller audiences are the most valuable for you.
- If your target audiences are of very different sizes – for example tens of thousands vs. millions – consider creating separate campaigns for them
How does Meta decide which ad sets to spend on?
CBO prioritizes spending by subtracting the estimated cost of a conversion from your bid cap. The greater the difference, the higher the ad set gets prioritized. Meta optimizes the allocation of your campaign budget in real time and on an opportunity-by-opportunity basis.
This means that you can control the importance of different audiences by bidding more on the audiences that provide a higher lifetime value (LTV) or return on ad spend (ROAS). More than ever, it makes sense to bid your true value! You can also have CBO optimize ROAS by using Value Optimization in all ad sets of the Campaign.
Manual spend control
You can micromanage your ad set spend by using CBO ad set min & max spend limits. Note, however, that if you limit Meta's freedom to optimize, performance might decline.
How to bid with Campaign Budget Optimization
When using Meta CBO, it's important to consider your ad set goals when configuring bid types. Below we'll talk about Campaign Budget Optimization best practices for bidding in several scenarios.
Case 1: Lowest cost without bid cap, all ad sets have same goal
You can use lowest cost bidding (without a bid cap) if all of your ad sets are optimizing towards the same conversion event. Meta will simply spend your whole campaign budget on the people that it can convert the cheapest.
⚠️ Caution: if you use Lowest Cost bidding and your ad sets optimize towards different events (such as Purchases and ViewContent), Meta will still aim to maximize the number of conversions. This will result in CBO focusing on the ad set optimized for ViewContent events, as they are much easier to achieve than Purchases. Change the ad sets to optimize towards the same goal, or use bid caps instead.
Case 2: Lowest cost with bid cap, all ad sets have same goal
If your ad sets are all optimized towards the same conversion event, but you still know that some audiences generate more valuable conversions than others, you can specify different bid caps for the audiences. Give a higher bid cap for ad sets targeted to more valuable audiences — bid your true value! Like explained above, Meta will prioritize delivery to the ad set where the difference between your bid cap and the expected CPA is the largest.
Case 3: Lowest cost with bid cap, ad sets have different goals
If you want to optimize different ad sets towards different conversion events, use Lowest Cost with Bid Cap bidding, and specify the bid caps according to the true values of each conversion event. Otherwise, Meta will assume that each conversion is of similar value, and will get you the conversions that are easiest to get.
Using CBO with Smartly.io features
In this section, we'll talk about campaign budget optimization best practices when combining CBO with Smartly.io features.
Use CBO with Budget Pools
- You can add CBO campaigns to Budget Pools just like regular campaigns
- The Predictive Budget Allocation algorithm will determine the campaign's total budget based on performance relative to other campaigns, and lets CBO handle the optimization across the campaign's ad sets
- Don't set too tight ad set spend limits. Setting too strict limits might result in situations where your campaign can't spend its whole budget.
- Added benefits:
- Optimize towards 3rd party metrics, even though the CBO campaign can only optimize for Facebook native metrics
- Use Budget Scaling to automatically maximize spend while reaching a CPA/ROAS goal
- Use Smart Budget Scheduling to automate your budgeting on a monthly basis, quarterly basis, or any other period
- The other PBA benefits also stand, read more below
CBO in special campaign types
- Use CBO in Automated Ads campaigns
- Each created ad set will simply share to common total budget – great for keeping the total spend stable even as new targetings and products come and go
- Use CBO in Automated Post Boosting campaigns
- Great for keeping the total budget stable, even if each post goes to a separate ad set in order to limit the promotion time
PBA and CBO together in a single campaign
You can toggle on Predictive Budget Allocation in a campaign that also has Meta CBO enabled. In practice, this is just so that you can use the Budget Scaling feature. Use it to scale your CBO campaign's total budget up or down based on your performance goals (Meta, 1st or 3rd party metrics).
If PBA and CBO are enabled in a single campaign, the PBA algorithm will not interfere with the CBO algorithm. Since CBO means that ad sets don't have individual budgets, PBA won't try to change them at all. If you toggle on CBO and PBA but no Budget Scaling or Budget Pool, the PBA algorithm won't do anything. If PBA and CBO are enabled across multiple campaigns that are in the same Budget Pool, PBA will handle distributing the budget between campaigns.
Why use CBO instead of PBA?
- Meta has access to real-time user-level data — thus, it probably does a better job in cases where you can use it. If you can, you should use it!
- When you are optimizing towards a Facebook metric (such as a pixel or app event) that usually happens soon-ish after ad impression, Meta is likely capable of better optimization than PBA
- Especially when you bid your true value, differentiated for each ad set, Meta is able to take this into account and prioritize those audiences with higher bids
- If you want to pause ad sets and ads inside a campaign, while keeping its budget stable, this feature will help
⚠️ Caution: Do not set ad set min or max spend limits if the CBO campaign is also part of a Budget Pool. PBA can not impact such set limits which can result is significant over or under spend, even in case of budget scheduling. If you still want to set ad set min or max spend limit, make sure to either remove a campaign from a budget pool or disable the budget pool completely. If you remove a campaign from a budget pool which has Budget Scheduling enabled, please note that the budget for the period will not be decreased by the removed campaign daily budget. Make sure to adjust the budget in Budget Scheduling is needed.
When should I use Predictive Budget Allocation (PBA) instead?
Smartly.io's Predictive Budget Allocation has evolved since 2014 to use world-class artificial intelligence for improving results. In 2018, Facebook rolled out their campaign level-budget solution. The benefits of using Predictive Budget Allocation instead of campaign-level budgets include:
- Budget Pools: Optimize your budgets across multiple campaigns.
- Optimize towards 3rd party goals, like a Google Analytics Event, a custom App event, or MMP data.
- Budget Scaling: Switch on Budget Scaling with PBA to scale your spend automatically while maintaining a target Cost per Result or ROAS.
- Weekly seasonality modeling: the algorithm learns and adjusts for weekday performance fluctuations.
- Attribution choices: Ability to control how the algorithm attributes a conversion.
- No minimum number of conversion: Meta can fail to deliver your ads if you do not have enough conversions for the optimization goal, whereas PBA will work with any number of conversions. However, note that the budget changes will be smaller when there is less data. This means you can optimize towards a less common bottom-funnel goal with PBA, and use some intermediate conversion as Facebook optimization goal.
Read more about Predictive Budget Allocation.
Should I split test CBO against PBA?
We mainly recommend PBA when you have a 3rd party metric you want to optimize with – that's the use case where PBA can add value on top of CBO. If you optimize towards Meta-reported conversions only, CBO probably works better. Even if you optimize for 3rd party conversions using PBA, it's possible that CBO optimized towards Meta metrics would still improve performance. Either way, we recommend running a split test to see what's the right choice for your business.
If you end up running a split test, we recommend this test setup:
- Create your PBA campaign(s) like you normally do
- Create the CBO campaign to optimize towards a conversion event as close to your end goal as possible
- CBO optimizes towards the bidding conversion goal, so choose that accordingly
- If PBA optimizes revenue, use Value Optimization with CBO if possible
- Use the bid strategy you use regularly
- Create both campaigns as new campaings
- Don't test a new campaign against an old one, since campaign history and learnings give the old campaign an unfair advantage
- The campaigns should have the same total budget
- Having the campaigns spend differently makes it impossible to compare performance fairly
- This means, don't use Budget Scaling unless you plan to run the CBO campaign with unlimited budget as well
- It's difficult to test the Budget Pool feature against CBO since CBO can't optimize across campaigns
- Suggestion: test Budget Pool with regular campaigns vs. Budget Pool with CBO campaigns, using the best of both worlds — CBO and PBA simultaneously!