Still managing Meta ads manually? Automate the repetitive work with Bïrch.
Learning how to automate Facebook ads becomes increasingly valuable as campaigns and budgets grow. Monitoring performance and making timely adjustments across campaigns, budgets, bids, and creatives becomes increasingly difficult to do manually. In the meantime, campaigns can continue to spend even while results fade.
Automation enables campaigns to be adjusted and optimized faster, without constant monitoring.
In this guide, you’ll learn how to automate Facebook ads using Meta’s native tools and a few practical automation strategies. We’ll also cover when Meta’s built-in automation is enough and when it makes more sense to use Bïrch.
AI, automation and the future of Meta ads
Meta has introduced a set of AI features to Ads Manager that shape how campaigns run.
- Advantage+ automation adjusts targeting, placements, and budgets during delivery.
- Advantage+ creative includes:
- Generative image variations and background expansions
- AI-driven text suggestions for headlines and ad copy
- Opportunity score highlights recommendations that Meta believes could improve campaign setup and performance.
Meta’s implementation of AI means the system now handles more of the execution. Your inputs matter more than they did before. Event configuration, CAPI accuracy, and the creative supply you feed into the system all influence how well these features perform.
Generative AI can help create that supply faster, making it easier to test new concepts and creative variations without slowing down your workflow.
This direction isn’t unique to Meta. Every major ad platform is leaning further into automation and giving advertisers fewer levers to manage manually. As the platforms take on more of the execution, the logic behind your automated rules becomes the part that's actually yours to control.
Meta Ads automation fundamentals
With Facebook ads automation, actions are triggered automatically when predefined conditions are met. Instead of repeatedly checking performance and manually acting on the same metrics, you create rules that handle those actions for you.
But before you set any automated rules, you need to know the highest cost per result your business can sustain at each stage of your funnel.
Let’s assume your business model works if you can acquire a paying customer for under $30. You know that 10% of those who install your app become paying customers. That means the maximum cost per app install you can afford to pay is $3.
With this same method, you can define the maximum cost for every step of the funnel for your business model. If you don’t have historical data, use a simple benchmark: campaigns should return around 3x more value than they cost. It isn’t perfect, but it gives your rules a starting point while you gather more reliable data.
Read more: How much should I spend on Facebook ads?
Meta-native rules: what they can do and where they fall short
Meta provides two types of native automation inside Ads Manager: Automated Rules and Automatic Adjustments.
Automated Rules let you define a condition and an action. For example, increase the budget when performance exceeds a target, or send a notification when a metric changes. Meta checks the conditions you set and takes action when they are met.
Automatic Adjustments work differently. Instead of building your own rules, you allow Meta to automatically apply selected recommendations related to campaign structure, audiences, creative, placements, and delivery. You decide which recommendations Meta can apply, but Meta decides when those changes should happen.
This is sufficient for straightforward campaigns. Native rules handle the basics: pausing underperformers, catching spend anomalies, applying Meta’s own recommendations.
The limits show up as accounts grow.
You can only combine conditions using AND logic, so you can’t fire a rule when one of several conditions is true. Check frequency is fixed, with no true interval setting below what Meta allows. And if you’re managing multiple ad accounts, there’s no way to apply consistent logic across them from a single place.
Performance teams that run their own CPA targets, attribution windows, and reporting workflows tend to hit these walls quickly.
That’s the point where automation needs to follow your logic, not Meta’s. Bïrch lets you build rules around your own metrics, thresholds, and check intervals, so the system runs the way your team already makes decisions. Once your rules are running, Bïrch AI analyzes your full rule setup and ad account data to surface the contradictions, the blind spots, and the rules worth doubling down on. You review the suggestions and decide what to implement.
Let’s look at how to set it up.
How to set up rules in Bïrch
These steps walk you through building your first rule in Bïrch.
1. Set up your rule and label it clearly
You can start creating a rule from scratch or choose one of Bïrch’s strategies.

Once you have chosen your starting point, give your automated rule a clear, descriptive name. It should be easy to understand without opening it. Best practice is to state the action followed by the condition.
Examples:
- Pause ad set if Spend > $100, Purchase < 1
- Increase budget once a day if CPA < $25
- Increase bid by $0.5 if Impressions < 1 (last 2 hrs)
2. Filter what objects you want the rule to apply to
Bïrch rules can be applied to any level of the Meta ads hierarchy: the ad account, campaign, ad set, or ad. Ad set-level rules are still used most often. You can only associate a single rule with objects on the same level.

Click on the plus (+) sign in the filter section and select “Specific items.” From there, you can choose:
- Campaign level: applies the rule to all ad sets or ads inside that campaign
- Ad set level: applies the rule to all ads inside that ad set
- Individual items: manually select specific campaigns, ad sets, or ads
3. Choose what your automated rule does
Next, decide the action you want the rule to take. This is where your automation actually does the work for you, whether that’s managing delivery, budgets, bids, or even how your assets are organized. Bïrch gives you several options:
- Pause campaigns, ad sets, or ads
- Start (unpause) campaigns, ad sets, or ads
- Increase, decrease, or set the budget (by value or percentage)
- Set bid strategy to either automatic, target cost, or lowest cost with a cap
- Increase, decrease, or set the bid (by value or percentage)
- Duplicate campaigns, ad sets, ads
- Add or remove any text from the campaign, ad set, or ad name
- Delete a campaign, ad set, or ad

4. Define tasks
You now need to choose the criteria—or “conditions”—that trigger your rule. This is the heart of your automation.

5. Choose how often your rule should run
In Bïrch, you can control how often a rule checks your performance. You can choose intervals of 15 minutes or 72 hours—or select a custom schedule. This level of control matters when you’re managing larger budgets where a few hours of delay can cause wasted spend.
Meta’s native system works differently. It lets you choose when a rule is allowed to run, but each time block only triggers one execution, usually within 30–60 minutes of the set time. You can add multiple blocks to get more checks in a day, but you can’t set true intervals or adjust the conversion window it uses.

6. Set alerts
With Bïrch, you can receive notifications about triggered actions via email or Slack.

With Meta, you’re limited to in-app notifications.
7. Set the conversion attribution window
Use the same conversion window your campaigns optimize for. This keeps performance checks consistent and prevents rules from triggering on data that doesn’t match how Meta attributes conversions.

How to automate Facebook ads using Bïrch
Now that your rule structure is set up, here are the automations worth building first.
Pause underperforming ad sets and ads
Pausing poor performers is one of the easiest and most valuable automations to set up.
Timing is key. Pause too early, and you may kill an ad that’s still optimizing. Pause too late, and you waste budget.

Not a single sale after enough ad spend
If your maximum cost per purchase (CPA) is $50, set a rule to pause an ad set once it spends around 1.5x that amount without a conversion (in this case, $75). This gives Meta time to collect data, but your budget is protected.
You can use similar logic for other signals like CPL, CPC, and AddToCart cost, which can indicate weak performance earlier in the funnel. Just keep in mind that cost-cap bidding and server-side reporting delays from CAPI can make early CPA look higher than it actually is.
Ad sets with declining performance
Here’s a similar rule that pauses ad sets once they have generated at least one purchase but the CPA has risen above your acceptable limit.
Pause ad set if
Spend > $200 and Purchases > 0 and Cost per purchase > $50You can combine conditions with Meta automated rules only with an “and” operator. In other words, you can’t fire a rule if one or more conditions are met (an “or” operator). They all have to be true.
In Bïrch, you can use “or” operators to combine multiple conditions, and you can nest conditions.
Monitoring sudden drops in performance
Another option is to use two different timeframes to monitor both short-term and long-term performance. For example, you can compare the CPA in the last 3–7 days.

This automated rule says to notify you if an ad set’s three-day CPA is more than 2x the CPA from the last seven days.
This type of monitoring is especially important for ad sets that run on large budgets and generate a lot of conversions. By checking recent statistics, such as the last three days, you’ll be able to see if a great ad set has recently taken a downturn.
And, instead of purchase, you can track any event like click, lead, install, checkout initiated, custom events, and so on. In other words, you should select the metric for which you can get enough valid statistical data in the selected timeframe.
Pausing ad sets with low ROAS
If you run an e-commerce business where prices and quantities vary or an app with monthly and yearly subscription plans, return on ad spend is the right metric to track.
ROAS = purchase revenue/spend
ROAS rules work best when purchase value comes from server-side events and the event match quality is high enough for Meta to reliably attribute revenue.
Before using this in automated rules, define the lowest ROAS you’re willing to accept. A general rule is to have at least a ROAS of 3.0 if the target ROAS is unknown. In that case, you can make the following rule:
Pause ad set if
Spend > $70 and ROAS < 3Which means that this ad set will pause if more than $70 is spent and recorded purchase revenue is less than $210 ($70 x 3).
Similar for mobile apps:
Pause ad set if
Spend > $100 and App purchase revenue < 3 * SpendRelaunch ad sets and ads with late conversions
Not every customer converts right away. An ad set might show zero purchases when you pause it, only for conversions to come in a few days later.
Turn ad sets back on with good performance
You can use automated rules to relaunch ad sets that have been prematurely paused either manually or from one of your other automated rules.
Start ad set if
Cost per purchase < $50 (last 12 hrs) and Purchases > 0 (last 12 hrs)This automated rule looks for paused ad sets with at least one purchase with a total cost per purchase under $50 in the last 12 hours. Late server-side conversions from CAPI can also show up in this window, so it’s worth reconsidering ad sets that pick up conversions after being paused.
In my experience, ad sets paused for longer than that lose some optimization data and may no longer work well. In that case, relaunch the ad set as a new ad set.
Turn ad sets back on
Here’s another example of why you’d want to unpause an ad set. Say a rule checks daily metrics and pauses ad sets if the cost per result is too high. But Meta is infamous for volatility, and even an exceptional ad can have a bad day. So you’d want to relaunch it the next day if its metrics from the last 7 days are good.
This rule will unpause those ad sets that were paused yesterday but performed well in the last 7 days.
Start ad set if
Impressions < 100 (yesterday) and Cost per purchase < $50 (Last 7 days) and Purchases > 1 (Last 7 days)Set up a custom schedule for such a rule so that it runs only at midnight.
If you run pause and unpause rules, make sure they don’t contradict each other.
Increase budgets for top-performing campaigns and ad sets
Conditions are similar to the pause rules, but do the opposite.

Increase budget on a good day
Set budget to $500 once a day if
Purchases > 2 and Cost per purchase < $30This automated rule only increases the budget on a given day when performance is good—which, in this case, is more than two purchases at a CPA of less than $30.
For all scaling rules, set a condition time of before 12 p.m. This prevents the budget change from happening too late in the day, which may affect pacing.
Increase budget relative to performance
You can set separate rules for “good” performance and “great” performance so your budget increases match the quality of your results.
If your maximum CPA is $30, you might use a rule like:
Increase budget by 20% once a day if
Purchases > 5 and Cost per purchase < $30 and Cost per purchase >= $20This scales steady performers without overspending too quickly.
For ad sets that perform exceptionally well, you can set a stronger rule:
Increase budget by 100% once a day if
Purchases > 5 and Cost per purchase < $20These two rules allow you to scale the day’s budget based on the level of performance. The same logic applies to ROAS-based scaling:
Increase budget by 100% once a day if
Purchases > 5 and ROAS > 3You can add an “increase budget” condition only when you’ve already spent half your daily budget.
Increase budget by 50% once a day if
ROAS > 3 and Spend (today) > 0.5 * Daily budgetThese examples illustrate how performance-based scaling works in practice. In Meta, this level of control is typically available through third-party automation platforms like Bïrch, which allow more precise budget adjustments than native tools.
Bid management
Meta usually handles bids well enough to keep your cost per result in range. If you want tighter control over CPA or need to protect ROAS, you can still use bid caps, cost caps, or target constraints.
Increase the bid for ads with low impressions
The following rule will increase the bid if it’s too low for an ad to enter the auction:
Increase bid by $0.5 every 2 hours
Impressions < 100 (last 2 hrs)Set your daily budget at least 5x higher than your cap so you’re well-positioned to get around 50 optimization events per week.
Increase the bid to prioritize high-performing ads
If one of your ads is doing really well, you can prioritize it in the auction by setting a higher bid for it:
Increase ad bid by $0.25 once a day
Cost per lead > $10 (today) and Leads >= 2 (today)
Cost per lead < Cost per lead (ad set level)Duplicating ad sets and ads
Many marketers rely on duplication as a tactic because it helps with two things: horizontal scaling and relaunching paused ad sets.
This rule will scale the campaign by duplicating successful ad sets:
Duplicate ad set once in a lifetime if
Spend > $100 and Purchase > 0 and Cost per purchase < $50To duplicate an ad set that was paused, set up the following rule:
Apply to: ad sets status – inactive
Duplicate ad set once in a lifetime if
Time is less than 12 p.m.Don’t forget to unpause ads in a duplicated ad set with the following rule:
Start ad if
Hours since creation is less than 1Troubleshooting Facebook automated rules
If a rule fires when it shouldn’t or doesn’t fire at all, these are the issues worth checking first:
Check the rule logs
In Bïrch, hover over any rule and click “Logs.” You’ll see the full history of checks, the metric values pulled from Meta, which conditions matched, and any errors. This is the fastest way to understand exactly why a rule fired.

Look for rule conflicts
Some issues arise due to rules working against each other.
- Start/pause conflicts: An ad set can get paused and restarted repeatedly if both rules use overlapping conditions or similar timeframes. You’ll see this pattern clearly in the logs. Fix it by separating thresholds (e.g., lower CPA for start, higher CPA for pause).
- Duplication rules pausing originals: If you use duplication rules, make sure the task isn’t also set to pause the original campaign or ad set. This is a common issue.
- Timeframe mismatches: If you compare Ads Manager to rule checks, make sure the data comes from the same attribution window. Using different windows creates false discrepancies.
Pro tip: Spotting these patterns manually takes time, especially across multiple accounts. Use Bïrch AI to automate rule conflict detection,, so you can catch issuesbefore they affect performance.
Consider creative behavior
Meta will automatically rotate variations when you run dynamic creative or multiple asset versions.
The version you see in preview isn’t always the version that actually delivered impressions. Rules always evaluate performance based on the assets Meta served.
This can lead to:
- A rule firing because one variation underperformed
- Uneven delivery that looks like a “rule error”
- Sudden drops tied to creative rotation rather than automation
Checking which variations actually spent helps you verify why a condition matched.
If the issue seems creative-related
When the problem seems tied to creative performance—like sudden drops, fatigue, or uneven delivery—Bïrch Explorer can help you see how your ads are actually behaving across audiences and timeframes. It gives you a clearer read on whether the rule misfired or whether the creative itself is the thing that’s slipping.
As automation takes on more of the execution, defining the logic behind these systems becomes increasingly important.
Build automation that runs on your logic
Meta's native rules cover the basics, and you can get a long way with pause rules, ROAS thresholds, scaling logic, and late-conversion recovery. But limitations start showing up as your accounts grow: AND-only conditions, fixed check frequencies, no way to apply consistent logic across multiple accounts, and notifications stuck inside the app.
That's when your automation logic needs to shift. Bïrch lets you build rules around your own metrics, thresholds, and check intervals, run them across every account from one place, and get alerted in Slack or email when something fires. And once those rules are live, Bïrch AI helps you catch the conflicts and blind spots before they drain your budget.
Automate Facebook ads in a way that actually serves your team. Try Bïrch.





