How to Set Kill Rules for Meta Campaigns: Step-by-Step
A kill rule is simple: if a campaign meets X conditions, pause it automatically.
The trick is getting the conditions right. Too aggressive, you kill winners in learning phase. Too conservative, you let losers bleed budget for weeks.
Here’s how to set kill rules that actually protect your profit.
The Four Inputs You Need Before Building Any Kill Rule
Before you touch Meta Ads Manager or any third-party tool, answer these four questions:
1. What’s your break-even ROAS?
Calculate: 1 / (1 − COGS% − Fees% − Target margin%)
Example: 40% COGS + 3.8% fees + 20% target margin = 2.76x break-even ROAS.
Your kill rule threshold should be 20–30% below this: 1.9x–2.2x ROAS.
2. What’s your minimum evaluation spend?
This prevents pausing campaigns in learning phase.
Rule of thumb: 2–3× your AOV.
If AOV is €60, minimum spend is €120–180.
3. What’s your evaluation window (in days)?
How many days of data do you want before pausing?
Minimum: 3 days. 5–7 days is safer for products with longer purchase cycles.
4. What’s your data source?
- Meta ROAS (Meta’s inflated number — not recommended)
- Shopify ROAS (actual orders — recommended)
Meta’s ROAS is 20–40% higher than real performance. If you set a kill rule on Meta ROAS, you’ll pause winners thinking they’re losers.
Use Shopify profit data if possible.
Real-World Example
Let’s say you sell apparel. Here are your parameters:
- Product COGS: 40% average
- Shopify fees: 2.9% + $0.30 per order (= ~3.8% of revenue)
- Target profit: 20% of revenue
- AOV: €75
- Break-even ROAS: 2.76x (calculated)
- Kill rule threshold: 2.0x ROAS (conservative)
- Minimum evaluation spend: €150 (2× AOV)
- Evaluation window: 3 days (minimum)
Your kill rule: “Pause if ROAS < 2.0x after €150 spend for 3+ days”
How to Set Kill Rules in Meta Ads Manager
Meta has a native Automated Rules system. It’s free, but limited (runs on Meta ROAS, checks daily, not real-time). Here’s how:
Step 1: Navigate to Automated Rules
- Open Ads Manager
- Go to Campaigns (top navigation)
- Click Tools > Automated Rules
- Click Create Rule (blue button)
Step 2: Select the Action
- Under “When,” select Pausing
- Choose what to pause: Campaign or Ad set
- Select Pause (vs Resume)
Step 3: Set the Conditions
This is where you define your kill rule logic.
Condition 1: ROAS threshold
- Metric: ROAS
- Operator: is less than
- Value: 2.0 (your break-even threshold)
Condition 2: Spend threshold (prevent pausing during learning phase)
- Metric: Amount spent
- Operator: is greater than
- Value: €150 (your minimum evaluation spend)
Condition 3: Duration (ensure you have enough data)
- Metric: Condition is true for
- Value: 3 or more days
Step 4: Set the Scope
Which campaigns should this rule apply to?
Option A: All campaigns (simplest, applies rule to everything)
Option B: Specific campaigns (click “Add campaigns” and select which ones)
Option C: Campaigns with specific tags (best practice)
Recommendation: Use tags. In your campaigns, add a tag like “cold_traffic” or “testing.” Then apply the rule only to that tag. This prevents you from pausing your best-performing brand-awareness campaigns by accident.
Step 5: Notifications
Check the box: “Send me a notification when this rule is triggered”
Now you’ll know every time a campaign pauses (instead of discovering it days later).
Step 6: Save
Click Save Rule. Meta will execute it automatically starting tomorrow.
The Limitation: Native Meta Rules
Meta’s Automated Rules are good for automation basics, but they have real limitations:
- They run on Meta’s ROAS, not Shopify profit — This means you’re pausing based on inflated numbers.
- They check daily, not real-time — A campaign could be bleeding budget all day before the rule triggers at midnight.
- They can’t access COGS data — You can’t say “pause if profit margin < 20%.” You can only say “pause if ROAS < X.”
- They can’t account for product-specific thresholds — All campaigns use the same threshold, even though different products have different margins.
For serious profit protection, most merchants pair Meta’s rules with a third-party system.
Why Calatrix Rules Are Different
Calatrix uses the same basic logic, but with Shopify data:
Instead of: “Pause if ROAS < 2.0x”
You set: “Pause if profit margin < 18%”
Why this matters:
- A campaign selling high-COGS products at 2.1x ROAS is unprofitable
- A campaign selling low-COGS products at 1.8x ROAS is profitable
- Meta rules would pause the second one (it’s below 2.0x)
- Calatrix rules would pause the first one (margin is <18%)
Also: Calatrix rules run every 15 minutes, not daily. You catch declining campaigns before they bleed a day’s worth of budget.
A Complete Kill Rule Strategy
Smart stores run multiple rules, not just one:
Rule 1: Basic break-even kill (defensive)
- Condition: ROAS < 2.0x after €150 spend for 3 days
- Purpose: Pause obviously losing campaigns
Rule 2: Zero-conversion guard (emergency)
- Condition: €50 spent with zero conversions in 48 hours
- Purpose: Catch catastrophically bad creative fast
- Action: Pause immediately (don’t wait 3 days)
Rule 3: High-frequency alert (optimization)
- Condition: Frequency > 4 for 3+ days
- Purpose: Signal audience fatigue, pause to save budget
- Action: Pause for 2 days, then restart with new creative
Rule 4: Winning campaign scale-up (growth)
- Condition: ROAS > 3.5x for 5 days AND spend < €500/day
- Purpose: Double down on winners
- Action: Increase budget by 25%
Rules 1–3 are defensive (protect profit). Rule 4 is offensive (scale winners).
The Real-World Impact
Let’s say you have 10 active ad sets. Historically:
- 3 are winners (>3x ROAS)
- 4 are mediocre (1.8–2.5x ROAS)
- 3 are losers (<1.8x ROAS)
Without kill rules: You manually check maybe 3x per week. You miss the slow decline of campaigns. By the time you notice, you’ve wasted €400 on underperformers.
With kill rules: Losers pause automatically after 3 days. You notice immediately. You investigate, decide whether to restart or pivot. You save €300 by acting fast.
Savings per month: €300–500. Cost of tool (if using third-party): €50–100. ROI: 5–10x.
Common Kill Rule Mistakes
Mistake 1: No spend qualifier
Rule: “Pause if ROAS < 2.0x”
Problem: This triggers on the first day when a campaign has only €10 spend and 1 sale. You kill winners in learning phase.
Fix: Always add: “after €100+ spend”
Mistake 2: Threshold too high
Rule: “Pause if ROAS < 3.0x”
Problem: This is too aggressive for scaling campaigns. Most healthy campaigns at scale run 1.8–2.5x ROAS.
Fix: Use your break-even ROAS (2.0–2.6x based on your margins), not an arbitrary number.
Mistake 3: No time qualifier
Rule: “Pause if ROAS < 2.0x”
Problem: Triggers immediately on a bad day. Even good campaigns have off days.
Fix: Always require 3+ days of data: “Pause if ROAS < 2.0x for 3+ days”
Mistake 4: Rules that conflict
Rule 1: “Pause if ROAS < 2.0x” Rule 2: “Scale up if ROAS > 1.8x”
Problem: A campaign at 1.9x ROAS both triggers pause and scale-up. Confusion.
Fix: Use non-overlapping thresholds. Gap between rules should be 0.5x+ ROAS.
Testing Your Rules First
Before setting rules live, test them:
- Create the rule in “test mode” (if available) for 3 days
- Review what would have paused
- Confirm those campaigns were actually underperforming
- Adjust thresholds if too aggressive/conservative
- Set live
This prevents you from pausing winners by accident.
Ready to Set Kill Rules?
Calculate your four inputs: break-even ROAS, minimum spend, evaluation window, data source.
Then set up rules in Meta Ads Manager or use Calatrix for Shopify-based profit rules.
Rules aren’t passive. You still review pauses and decide whether to restart campaigns. But automation means you’re not missing the obvious losers at 2am.
Your profit margin depends on catching losers fast. Let’s set it up.
Ready to stop losing money on Meta ads?
Set up automated kill rules and let Calatrix protect your ad spend 24/7. Pair this with Shopify's real order data and COGS tracking to optimize for actual profit, not vanity metrics.
Start 14-day free trial