Reading Time: 4 mins.

Facebook Ads Manager offers you so many ways to optimize your ads, so many ways to visualize the data, that it might feel overwhelming.

I will give you a quick and easy framework to optimize your Facebook Ads.

First, you need to understand that the main goal of the game is not to beat the Facebook Ads algorithm (it is impossible.) The main goal is to get cheaper conversions.

Setting goals

Before you even touch a single ad, you need to have the answers for these four questions:

  1. What is the most important conversion for you? Is it visits? Is it subscribers? Is it sales?
  2. What is your budget? Are you going to spend $10k a month? $50 a day?
  3. What is the max cost you can afford per conversion? Is it $10, or $100?
  4. How many conversion do you expect per day? If I have a $1k/day budget, and the max cost I can afford is

Managing time

The next big question is: how much time can you devote to optimize your campaigns? Is it just you or you have a media team?

This largely depends on your budget. If you are spending $1 per day, it doesn’t make sense to have a team. Their cost will be much higher than any gain they can get.

On the other hand, if you are spending $1M per month, it might worth the time of a full-time media analyst focused on reducing the conversion costs.

Optimization framework

Assuming you already defined your audience, and you have created the ads, now you have two variables you can use to optimize your Facebook ads: levels and dimensions.

Levels

You can optimize your Ads at three different levels: campaigns, ad set, and ads. The latter is the lowest level.

The deeper you get, the more time you will spend.

If you go as deep as ad level, different ads will perform differently, and you might want to keep the winners and turn off the losers (the ones with the highest cost per conversion.)

Since the ad creative (text + image + video) does have a significant impact on performance, my recommendation is that you optimize at the ad level. Just don’t create too many ads, each new ad adds incremental costs in optimization time.

It is fine if you want to optimize at the campaign level, let’s say you have a branding, retargeting and promotion campaigns, and you don’t care much about the ads running on each (because they are similar.) As long it makes sense for your business, optimizing at the campaign level is always less time-consuming.

Dimensions

There is a fair amount of dimensions you can choose from to optimize your Facebook Ads:

  • Audience: age, location, interests.
  • Creative: type of ad, text, image, video.
  • Placements: news feed, stories, in-stream videos, native.
  • Device: desktop, mobile, tablet.
  • Platform: Facebook, Instagram.

The Facebook Ads Manager allows you to break down the data by dimension and gives you a cost per conversion for each. You can compare if you are doing better on mobile or desktop, for example.

If you are running ads for a mobile application, you can exclude the device dimension, and focus on the platform for example.

Making changes

OK, you’ve decided to optimize at the ad level, and you’ve chosen the platform variable. What’s next?

You have to have at least two ads running, with totally different creatives. Let them run for a time (see frequency below.) Watch over their performance, but do not make any change. When the times come, you have two things to watch over before making any change:

  1. Is ad #1 performing better than ad #2?
  2. Am I getting better results from Facebook or Instagram?

You have two changes you can make at this point: turn off the low performing ad, OR remove Facebook or Instagram from the platforms (at the ad set level.)

Make one change. Wait for the same period. Then repeat. If you are done with the platform dimension, move onto another one, like placement.

Frequency

Now the hardest part of the optimization framework: How often do I need to optimize my campaigns?

Let me tell you what you should avoid doing (especially if you are spending a decent amount of money): making changes every hour.

I made this mistake myself many times: I panicked and made multiple changes a day without letting the ads to run for a prudential amount of time.

If you launch an ad at 1 pm and make a change at 2 pm, one hour worth of data is not enough to make any conclusion, and it might be not accurate as well (Facebook could take more than 24hs to report the real numbers.)

There is a simple rule you can apply here: once you’ve decided your optimization level (campaign, ad set or ad) and the dimension you will be optimizing on (placements, devices, etc…) wait for 24hs, check at the next day.

If you found that one ad is heading way above your max conversion costs, turn it off. The goal of the game is to get cheaper conversions, so any outlier that is moving away too far from your goal should be terminated.

Make one change at a time, keep a changelog. Once your campaigns, ad set or ads, are getting conversions below your max cost, it is time to optimize using dimensions.

If you are spending a considerable amount of money (>$10k per day), make one change per day. If you are not, then a change per week should be enough.

Maintenance mode

Once you’ve optimized your campaigns, ad sets, or ads, and exhausted all the possible dimensions, it means you have an optimized combination of audience, creative, platform, device and placement.

The Facebook campaigns will consistently give you a cost per conversion below your max costs.

You can enter in maintenance mode. At this stage, you can play by increasing or decreasing the budget and watching over volume. If you can afford to increase your budget by x2, are you getting double in conversions? If those are below the max cost threshold, then great, you can scale to the infinite.

Chances are that there will be a max budget you can afford and you can use on your Facebook campaigns, before hurting cost per conversion and volume.

That’s fine, you’ve learned a ton by then, and you can use that knowledge to approach your audience with different Facebook Ads.

leocelis

Hi! My name is Leo Celis. I’m an entrepreneur and Python developer specialized in Ad Tech and MarTech.

read more