Skip to main content

Documentation Index

Fetch the complete documentation index at: https://theoptimizer.io/docs/llms.txt

Use this file to discover all available pages before exploring further.

Automation rules are powerful on their own, but individually they only react to a single moment in time. Rule chains let you build sequences of rules that execute in a deliberate order — each rule picking up exactly where the previous one left off. The mechanism that makes this possible is tags: structured labels you attach to campaigns, ad sets, ads, or sites that carry history forward from one rule to the next.

How rule chains work

Every rule in TheOptimizer can be configured to add or remove tags from the items it acts on. Those tags then become available as conditions in other rules, so you can create logic like: “Only run this rule on campaigns that have already been processed by that other rule.” This creates a pipeline: Rule A fires and tags the item, and Rule B is waiting for exactly that tag before it acts. Example: Rule checks for tags using the “Tags” condition.
Rules Tag Conditions
Example: Rule Adds and/or Removes Tags once it finishes the execution. It prepares the campaign, ad set or ad for the next stage.
Rules Tags
The key principle: a tag is a signal that something has already happened. It carries history forward.

Setting up tags on a rule

When editing any rule, navigate to the Auto Tags section.
  • Tags to Add — one or more tags applied to every item the rule acts on when it fires.
  • Tags to Remove — tags stripped from items when the rule fires (useful for clearing a stage so an item can move to the next one).
Rules Tags
Tags are applied immediately after the rule’s main action executes. If a rule pauses a campaign, the tags are added or removed from that campaign at the same time. To use a tag as a condition in another rule, add a condition in Step 2 (Conditions) using the Tags field:
FieldConditionValue
TagsContainsyour-tag-name
This ensures the downstream rule only applies to items that carry that tag.
Use descriptive, stage-based tag names rather than rule-based ones. passed-learning or budget-scaled-once are far more readable at a glance than rule3-fired. Name the stage, not the rule.

Example chains

1. The Probation Chain — pause, wait, re-test

Goal: Pause campaigns that lose money, hold them for a cooling-off period, then automatically reactivate them for a second chance before deciding whether to kill them permanently. Why chain this? A direct pause-and-forget rule loses campaigns that may have had a bad day. This chain distinguishes between temporary underperformers and genuine losers.
1

Rule 1 — Stop-loss with tagging

Fires when a campaign has spent enough to judge performance and is not profitable.
MetricConditionValue
SpendGreater than$50
CPAGreater than$40
Action: Pause CampaignTags to Add: on-probationSchedule: Every 4 hours
2

Rule 2 — Reactivate after cooling-off

Fires on campaigns tagged on-probation that have been paused for at least 3 days.
MetricConditionValue
TagsContainson-probation
Days Since Last ActionGreater than3
Action: Enable CampaignTags to Add: retest-round-2 | Tags to Remove: on-probationSchedule: Once daily
3

Rule 3 — Final verdict

Fires on campaigns tagged retest-round-2 that are still unprofitable after their second chance.
MetricConditionValue
TagsContainsretest-round-2
SpendGreater than$30
CPAGreater than$40
Action: Pause CampaignTags to Add: permanent-pause | Tags to Remove: retest-round-2Schedule: Every 4 hours
Items tagged permanent-pause are excluded from all other rules — preventing them from being re-enabled by broader reactivation rules. Add a condition Tags does not contain permanent-pause to any reactivation rule you run.

2. The Winner Escalation Chain — validate, scale, clone

Goal: Automatically move profitable campaigns through a structured scaling process — only unlocking larger budget increases and cloning after sustained performance, not just one good day. Why chain this? Scaling too fast on early signals wastes budget on campaigns that regress. This chain requires proof at each stage before moving to the next.
1

Rule 1 — Flag potential winners

Fires when a campaign shows early profitability signals.
MetricConditionValue
ROASGreater than200%
SpendGreater than$100
Action: No action (or Send Notification)Tags to Add: potential-winnerSchedule: Every 6 hours
2

Rule 2 — Confirm and scale budget (Stage 1)

Fires on campaigns tagged potential-winner that maintain profitability over 3 days.
MetricConditionValue
TagsContainspotential-winner
ROAS (last 3 days)Greater than200%
Spend (last 3 days)Greater than$200
Action: Increase Budget by 30%Tags to Add: scale-stage-1 | Tags to Remove: potential-winnerSchedule: Once daily
3

Rule 3 — Scale to full speed (Stage 2)

Fires on campaigns tagged scale-stage-1 that are still performing after further spend.
MetricConditionValue
TagsContainsscale-stage-1
ROAS (last 7 days)Greater than180%
Spend (last 7 days)Greater than$500
Action: Increase Budget by 50%Tags to Add: scale-stage-2 | Tags to Remove: scale-stage-1Schedule: Once daily
4

Rule 4 — Clone the winner

Fires on campaigns tagged scale-stage-2 with sustained, strong ROAS — duplicating the campaign to expand reach.
MetricConditionValue
TagsContainsscale-stage-2
ROAS (last 14 days)Greater than180%
Action: Clone CampaignTags to Add: cloned | Tags to Remove: scale-stage-2Schedule: Once daily

3. The Creative Fatigue Chain — detect, rotate, retire

Goal: Automatically detect when an ad’s performance is fading, pause it for a rest period, then reactivate it. If performance doesn’t recover, retire it permanently. Why chain this? Creative fatigue is gradual. A single threshold rule either acts too early or too late. This chain catches the decline in stages.
1

Rule 1 — Flag fading creatives

Fires on ads that have been running long enough to have a performance baseline but are showing CTR decline.
MetricConditionValue
ImpressionsGreater than50,000
CTRLess than0.10%
ConversionsLess than3
Action: No action (or Send Notification)Tags to Add: creative-fatigueSchedule: Every 6 hours
2

Rule 2 — Pause fatigued creatives

Fires on ads tagged creative-fatigue if CTR has not recovered after 48 hours.
MetricConditionValue
TagsContainscreative-fatigue
CTR (last 2 days)Less than0.10%
Action: Pause AdTags to Add: creative-resting | Tags to Remove: creative-fatigueSchedule: Every 6 hours
3

Rule 3 — Reactivate for re-test

Fires on paused ads tagged creative-resting after 7 days, giving them a fresh start.
MetricConditionValue
TagsContainscreative-resting
Days Since Last ActionGreater than7
Action: Enable AdTags to Add: creative-retest | Tags to Remove: creative-restingSchedule: Once daily
4

Rule 4 — Retire if still underperforming

Fires on ads tagged creative-retest that still aren’t converting after their second chance.
MetricConditionValue
TagsContainscreative-retest
Impressions (last 3 days)Greater than10,000
CTR (last 3 days)Less than0.10%
Action: Pause AdTags to Add: creative-retired | Tags to Remove: creative-retestSchedule: Every 6 hours

Tips for building reliable chains

Keep each rule’s job narrow. A rule in a chain should do one thing — flag, scale, pause, or reactivate. Rules that try to handle multiple stages get hard to debug and maintain. Use Tags to Remove to prevent re-entry. If Rule 2 fires on a tag left in place, it may fire again on the same item on the next run. Always remove the inbound tag once the rule has acted. Add a notification at key transitions. For high-stakes stages — especially scaling or cloning — enable notifications alongside the tag action so you stay informed while the chain runs autonomously. Test with small scope first. Before applying a chain globally, add it to a small group of campaigns using the standard (non-global) rule type. Review the tag history on those campaigns after the first few runs to confirm the flow is working as intended.
Use permanent-pause or retired tags as circuit breakers. Add a condition Tags does not contain permanent-pause to any reactivation rule to ensure items that have been deliberately stopped never get re-enabled by a separate rule.