Facebook Ads

GEN12c: Testing, Optimizing, and Scaling (Part 3)

Continuing with our testing/optimization/scaling strategy:

1)Pause non-performing ads/adsets.

2)Test more ads for current audiences.

3)Test more audiences to find more people to target.

4)Scale profitable audience+ad combinations to higher budgets.


We’ve covered the first three in previous posts. Let’s move onto the final one on the list.

However, before we can talk about the actual scaling strategy, we need to cover a couple of relevant topics first: The Learning Phase, and CBO (Campaign Budget Optimization).



About the Learning Phase

With every new adset you create, FB will need some time to collect data to learn what type of traffic will achieve the best results for that adset, by trying different audience pools (within your defined audience) and placements etc. to learn which audience pools will respond the best to your ads.

This initial testing period is called the “Learning Phase”. You’ll know when an adset is in this phase, because the “Delivery” column in the reporting will say “Learning”.

In order to exit the learning phase, an adset needs to make around 50 optimization events in a 7-day period. So if you set up the campaign to optimize for purchases, then its adsets will EACH need to make around 50 purchases over a week in order to exit the learning phase.

So – if you want an adset to stand a chance of exiting the learning phase, you’d need to make sure to assign a large enough budget so that it can reach that many optimization events over the 7 days.

Supposedly – and this is what FB tries to tell us – the benefit of having an adset exit the learning phase is that it will allow FB to find the best audience segments to target, which will allegedly result in better and more stable performance.

The downside, of course, is that you may not want to spend the budget required to make that many purchases in a week. Here’s a sample calculation:

Let’s say you have a profitable adset (with a profitable ad+audience combo) that you’re wanting to scale by duplicating it into a new campaign (again – more on scaling strategy later – just try to follow along for now). Let’s say it’s been making one purchase with every $20 in ad spend in the original campaign. Question: What daily campaign budget would you need to assign to the new campaign in order to get 50 purchases in a week?

Answer: $20 x 50 / 7 = $142/day/adset

And that’s just for ONE adset. What if you’re running 5 adsets per campaign? That would cost $142 x 5 = $714/day in campaign budget.

Now imagine having 10 of these campaigns…the budget can really skyrocket.

Which may not be such a bad thing as long as you’re making positive ROI. But not everyone has that type of cashflow lying around – especially if you’re promoting affiliate offers from networks that have long payment cycles.

But here’s where I deliver the good news: It’s not a must to exit the learning phase. When I first learned about how the learning phase worked, I busted my ass to get enough conversions to exit the phase, expecting to see higher CR and lower CPC and more stable performance at the end of that tunnel.

Well guess what? I haven’t seen any big improvements in performance after the learning phase was over. In fact, sometimes I would even get WORSE and MORE UNSTABLE performance. (If I was more cynical, I may even suspect that the whole learning phase thing is just a ploy to get us to up our budget. But let’s not go there.)

So my suggestion would be to just ignore the learning phase for the most part.

YMMV, so again, DYOT. If you’re wanting to try to exit the learning phase, but want to do so at a smaller budget than what I’ve illustrate above, consider optimizing for events further up the funnel than the final conversion (e.g. Purchases).

For example, for ecom, try to optimize for IC or ATC. For affiliate offers, optimize for landing page CTA clicks to the offer. If you’re REALLY strapped for cash, you can even try to optimize for video views. The cost associated with these actions are less than the cost required for purchases or offer conversions – which will require a smaller budget to get the 50 conversions a week to exit the learning phase.

When an adset has exited the learning phase, the “Delivery” column will say “Active”.

If however an adset doesn’t collect enough optimization events to exit the learning phase after 7 days, the status will say “Learning Limited” – which I would just ignore and continue to run the campaign as usual.

If you’re wanting to play the learning phase game, another thing you need to know is that making any significant edits to the adset or the campaign may/will cause the learning phase to be reseted for one or more adsets.

For details on what edits are considered to be “significant”, please see this article:

https://www.facebook.com/groups/Adva…6494378512323/



Introduction to CBO

Thus far, when setting up a campaign, we’ve left the “Campaign Budget Optimization” setting

at “OFF”.

This has allowed us to set budgets at the adset level, i.e. specify a budget for each adset. This is referred to “on the streets” as “ABO”, or Adset Budget Optimization.

No matter how each adset performs, FB will always aim to exhaust the adset budget you set – even on a bad day with really shitty performance.

CBO (Campaign Budget Optimization), on the other hand, allows us to define a budget at the campaign level, then let FB decide how much budget to allocate to each adset in that campaign.

For a CBO, FB will constantly adjust how much budget it allocates to each adset, so that the best-converting adsets will get the most budget, whereas less budget would be assigned to adsets that are performing poorly, on any given day.

It’s kind of like when you’re gambling and luck is on your side, and you choose to double-down to take advantage of it. When an adset is doing well on a given day, CBO will give it more traffic.

This can save us a lot of time in having to monitor the campaign constantly to pause adsets that aren’t performing well on a given day, and to leave adsets that ARE doing well to keep running. CBO automatically takes care of that for us.

In short, CBO can maximize and stabilize the performance of a campaign, while saving us from having to do a lot of babysitting.

So if CBO is so great, then why didn’t we turn it on in our first campaign? Here’s the thing: Unproven ads and/or audiences don’t typically do too well with CBO.

Let’s say you’re wanting to test 5 new audiences using 5 adsets, and you put them in a CBO campaign. Unless they all rock or suck equally, CBO will give a lot of the traffic to the best-performing adsets, and not leaving enough traffic to test the rest of the adsets adequately.

Some of those adsets that may turn out to be winners, wouldn’t have a chance to prove themselves, just because one of the adsets manages to make the first couple conversions so the algo decides to give it most of the traffic.

That would be like pulling 5 random guys off the street and pitting them against each other. If one of them happens to be a good fighter, the others will get knocked down in 10 seconds.

This is why I’m suggesting to use ABOs for TESTING new ads and new audiences, and to use CBOs for SCALING profitable ad+audience combinations.

Continuing with the fighting analogy above: Using ABOs to test ads and audiences first is akin to pre-qualifying a big group of contestants with a series of test (e.g. endurance, speed, weights…) to eliminate a group of people down to 5 that have the most potential, before letting them duke it out. That way they’d put on a good show instead of a 10-second fight, as they’d all be proven fighters at similar skill level.



CBO Scaling Strategy

Finally, I’ll suggest a 10-step scaling strategy below. There’s really no single best way to do this – so again, try different things to see what works best.

Before attempting to scale, make sure you notify your affiliate manager if you’re running an affiliate offer. And if you’re selling ecom products, make sure there are enough units available for shipping, and that your customer service etc. can handle the extra volume.

Here’s the strategy:


1)Pick a suitable adset for scaling. Let’s call the adsets you’ve been using to test ads and/or audiences, “Tester” adsets. As soon as a tester adset has made a few purchases (5 or more to be safe), with an ROAS of at least 1.5 and preferably 2+, it’s ready to be scaled.

(Reminder: ROAS = return on ad spend. You can customize FB reporting to display that metric as we’ve covered in a previous post.)

The ROAS needs to be high enough, because when you scale anything, chances are the ROAS will become unstable and decline. I’m suggesting an ROAS of 1.5 or above, but feel free to DYOT.

Also, for best results, make sure that the audience size is at least one million or up. If the audience size is below say 250k, it may be better to just leave the original adset running at the small budget until it saturates eventually. Again, DYOT.


2)Duplicate that adset into its own CBO campaign.

At the campaign-level options, remember to toggle Campaign Budget Optimization “On”.

As for campaign budget, starting with $100-300/day would be a reasonable guideline.

As for bid strategy – we’ve covered that in a previous post. If unsure, leave that at the default “lowest cost”.

3)Set Ad Set Spend Limits. In the adset level options, under “Budget & Schedule”, click on “Show More Options” and look for “Ad Set Spend Limits”. Set it to 1/10th of the campaign budget (so if the campaign budget is $100/day, set this amount to $10).

This is to ensure that FB will give each adset SOME spend to give it a chance to gather a bit of data to prove itself. We’re essentially “forcing” FB to take half the total budget and spread it equally across the 5 adsets (jumping ahead a bit here as you’ll see in the next steps), leaving the other half at the sole discretion of the CBO algo for distributing to the best-performing adset(s).

This way we can benefit from the power of CBOs as well as prevent the algo from making decisions too quickly – a yields a pretty good balance.


4)Choose 1 day click and publish the campaign. Still in adset level options. Under “Optimization & Delivery” > “Conversion Window”, choose “1 day click”. This should allow FB to optimize and react to changes in campaign performance more quickly than 7 day click.

Publish the new campaign.


5)If there are different ads in the adset, delete all but the best-performing ad. (I’m referring to the new ad set in the new campaign of course.)

Then, duplicate that ad 2 times so there are 3 copies of the same ad in the adset.

Finally, duplicate that adset 4 times to result in 5 copies of the same adset in that campaign. Make sure to assign the same “Ad Set Spend Limits” to all adsets.

Doing so will allow FB to test more audience pools, by “dropping more fishing lines” so to speak.

Why 5 adsets you may ask? I’ve experimented with different numbers of adsets but 5 seems to be the sweet spot for CBO campaigns. Some of the best FB experts have also recommended 5 so we can’t go far wrong with this number. You can have fewer or more than 5, but I would suggest to have at least 3 and no more than 7.

Too few adsets, and you wouldn’t be giving the CBO much room to work its magic (i.e. too few fishing lines in the lake – to pick up our analogy of dipping into different audience pools). Too many adsets, and the algo seems to get overwhelmed and confused and the whole campaign’s performance may start to dip. Again, DYOT.


6)Pause bad adsets. Remember we talked about how to pause underperforming adsets in the previous post? Here we can do the same thing. You’ve been running this ad+audience combo long enough to know what good KPIs look like. So if an adset is showing hopeless numbers, or even just numbers that are obviously and considerably worse than the other adsets in the camp, pause it.

You can also cut ads within each adset in the same manner.

Don’t try to cut down to a single adset – keep all profitable adsets running. The performance of each adset can be different from day to day. It would be good to have multiple adsets running so the CBO algo can work its magic – otherwise it would defeat the purpose of running CBO.


7)Run the campaign for a few days to make sure you’re getting stable campaign performance (at least 3 days would be a good guideline, 7 days even better – will allow the algo to collect more data to better figure out which audience pools to target), i.e. the overall campaign ROAS is holding steady. Then start increasing the budget.

You can choose to scale faster or more slowly – your choice.

Scaling faster to multiply your profits sooner is of course the more tempting option, assuming you have the cashflow required, but this approach would also be more prone to a drop in performance.

Also, the faster you scale, the faster your audience can get saturated on that particular ad, especially if your audience size isn’t very big. Which reminds me: Remember to continue testing new ads for audiences that work, using ABOs! The bigger you scale the faster ad fatigue will set in and the more ads you’ll need to keep profiting from that audience.

Here are a few sample scaling scenarios:

Safest: 10-20% every 4-7 days
Medium: 20% every 2-3 days
Aggressive: 30-50% per day
Super-Aggressive: 100-500% per day

If this is your first time scaling, try the safest approach and do your exploration from there.

Don’t even try the super-aggressive approach unless you have the experience required. You’ll also want to make sure you have a CBO that is proven to be a winner: Been running stable for many days, with a good audience size that can sustain that degree of scaling, etc.


8)Don’t limit yourself to one CBO! The more tester ABO adsets you set up, the more profitable adsets you can find to scale, each into their own new CBO – and the more profits you can stand to make!


9)If a CBO’s performance starts to decline, stop scaling it further. When it ceases to be profitable, put it on pause for a couple days and turn it back on to test it again. If performance is still bad, put it on pause for over 7 days to reset the learning phase and try again. if performance is still bad, I would suggest to just give up on it.

Hopefully by the time that happens, you’ll already have a proven ad you’ve been running in a tester ABO adset, that you can duplicate into a new CBO to replace the one that died.


10)What about the original ABO adset? For as long as it’s generating profits, you can just leave it running. With FB I like to follow the “if it ain’t broke, leave it alone” rule. Don’t worry about having multiple adsets targeting the same audience – as long as you have a decent audience size, that should take care of itself.


OPTIONAL STEP: After the CBO has collected data for a few days and performance is holding steady, and you’ve already paused the unprofitable adsets, you can experiment by reducing or even completely removing the Ad Set Spend Limits to give more control to the CBO algo.



***************

And that’s about it in terms of testing, optimization and scaling! I may start one more post to include other optimization tasks that can be done, but I should have given you all the essentials you need to get started.

Thanks so much for your support and for bearing with my long-windedness throughout this guide – and if you have any questions to ask, or expertise and insights to contribute, please don’t hesitate to post them!



Amy