Bulk edit rules
Last updated: May 19, 2026
Bulk edit rules
/rules list → multi-select checkboxes → toolbar actions: Pause, Resume, Delete, Edit cooldown. Up to 100 rules per batch typical. Each rule's update writes a separate audit log entry. Use bulk when changing posture across many rules (holiday closure, traffic spike).
Who is this for
Rule owners managing 10+ rules. Especially common in agency setups (many clients, similar rule patterns per client).
When bulk edit makes sense
Holiday closure — pause all active rules across all accounts for a week
Traffic spike — raise cooldown on all CPA-based rules during a sale event (avoid over-reacting to noisy data)
Reorganization — bulk delete deprecated rules after migrating to templates
Reactivation — resume all rules paused for closure
When NOT to bulk edit: changing scope, conditions, or actions — those are rule-specific and need per-rule review.
How to use
Step 1: Filter the list first
/rules page → filter by status / entity_level / search. Reduces the selection set to what you actually want.
Filter columns:
Status:
active,paused,errorEntity level: campaign / adset / ad
Search: by rule name
Step 2: Multi-select
Tick checkboxes in the leftmost column. Top header checkbox selects all in the current view.
For large selections: sort + filter to narrow first. Selection state persists across pages of the current filtered view.
Step 3: Pick bulk action
Toolbar appears when ≥ 1 rule selected. Available actions:
Pause — flip selected rules to
status: pausedResume — flip to
status: active(skips rules inerrorstatus — need manual review)Delete — confirm modal, then permanent delete
Edit cooldown — set
cooldown_minutesfor all selected (e.g. raise to 720 during traffic spike)
Step 4: Confirm
Destructive actions (Delete) show confirm modal listing affected rule names. Pause / Resume don't require confirm.
Step 5: Per-rule processing
Bulk action enqueues per-rule updates. Each rule receives:
Database update
Audit log entry (
action: rule_toggle / rule_update / rule_delete)If
statuschange:last_evaluated_atreset where appropriate
Progress visible via toast / progress indicator. Failures (if any) reported per-rule.
Limits
Max selection: 100 per batch is the practical limit (UI imposes; server can handle more)
Rate limiting: workspace-wide rate limits apply
Error status rules: bulk Resume skips them; need manual review of
last_errorfirst
Audit log
Each rule's change writes a separate entry in audit_log:
action: rule_toggle(pause / resume)action: rule_update(cooldown change)action: rule_delete
With metadata including the change summary + bulk operation ID (so all entries from one bulk action are traceable together).
Common patterns
Holiday closure (pause all)
Filter: status =
activeSelect all
Bulk action: Pause
Done. After closure: same flow with Resume.
Raise cooldown during sale event
Filter: search for "CPA" (or name pattern matching CPA-based rules)
Select all matching
Bulk action: Edit cooldown → set 720 (raise from 360)
After event: revert with another bulk edit
Clean up deprecated rules
Filter: status =
pausedSort by
last_executed_atascending (oldest first)Select rules not fired in 90+ days
Bulk action: Delete
Common mistakes
Bulk Pause without first filtering: pauses rules you didn't mean to. Filter, then select.
Bulk Resume on error-status rules: skipped. Need to fix root cause + manually toggle each.
Bulk Delete without checking audit needs: deleted rules' execution history may still exist for retention, but the rule itself is gone. Export first if needed for compliance.
Related
Pause + resume per rule — per-rule action
Execution history — review behavior before bulk action
Ads Manager bulk actions — same pattern for entities