# Automation Triggers + Conditions: Full Reference

> Complete reference for AcelleMail's 12 built-in triggers, the CONDITION node operators, and the OPERATION actions. Plus the multi-branch patterns power users actually deploy.

- Canonical URL: https://acellesend.com/kb/articles/advanced-automation-triggers-and-conditions
- Author: Sofia Lindqvist, Email Marketing Editor
- Category: Automation — Triggers, workflows, welcome series, drip campaigns, behavioral flows
- Content type: reference · Difficulty: advanced
- Tags: Acellemail
- Published: 2026-04-26 · Last updated: 2026-08-15
- Reading time: 7 min
- Publisher: AcelleMail Knowledge Base, https://acellesend.com/kb

---

## What this is for

This is the **power-user reference** for AcelleMail's automation system — the catalog you skim when designing a flow, not a how-to walkthrough. If you're just starting with automations, read [Build a Welcome Email Series](https://acellesend.com/kb/articles/building-a-welcome-email-series-in-acellemail) first; come back here when you need to know what trigger to pick for a specific scenario.

## All 12 built-in triggers

These are every trigger card on the *Create Automation* page:

![Create Automation trigger picker showing all 12 trigger cards in a 4x3 grid — full reference of available trigger types](https://acellesend.com/plugins/acelle/landing/images/help/kb/welcome-automation/02-create-trigger-picker.png)

| # | Trigger | Fires when | Most common use | Deep-dive article |
|---|---|---|---|---|
| 1 | **Welcome new subscribers** | New subscriber added to the connected list | Welcome series | [Welcome Series](https://acellesend.com/kb/articles/building-a-welcome-email-series-in-acellemail) |
| 2 | **Say goodbye to subscriber** | Subscriber unsubscribes from the connected list | Exit survey, win-back, internal alert | — |
| 3 | **Say 'Happy birthday'** | Subscriber's *Birthday* date field matches today (year-agnostic) | Birthday email | [Birthday + Anniversary](https://acellesend.com/kb/articles/birthday-and-anniversary-email-automations) |
| 4 | **Subscriber added date** | Yearly anniversary of `subscribed_at` | Anniversary email | [Birthday + Anniversary](https://acellesend.com/kb/articles/birthday-and-anniversary-email-automations) |
| 5 | **Specific date** | One-time send on a fixed calendar date | Event reminder, appointment | — |
| 6 | **API 3.0** | External webhook call to AcelleMail's API | Custom server-side triggers | [API Triggers](https://acellesend.com/kb/articles/using-api-triggers-for-custom-automation-workflows) |
| 7 | **Weekly recurring** | Same day every week | Weekly digest, weekly check-in | — |
| 8 | **Monthly recurring** | Same day every month | Monthly invoice, billing reminder | — |
| 9 | **Tag based** | Subscriber receives a specified tag | Post-purchase, re-engagement, lead scoring | [Post-Purchase](https://acellesend.com/kb/articles/post-purchase-follow-up-automation), [Re-engagement](https://acellesend.com/kb/articles/re-engagement-campaigns-win-back-inactive-subscribers), [Lead Scoring](https://acellesend.com/kb/articles/lead-scoring-with-email-automation) |
| 10 | **Remove Tag** | Subscriber loses a specified tag | Exit-flow, bucket transitions | — |
| 11 | **Contact Attribute Update** | Custom field value matches a specified condition (incl. wildcards) | Lifecycle stage changes, score thresholds | [Lead Scoring](https://acellesend.com/kb/articles/lead-scoring-with-email-automation) |
| 12 | **Abandoned Cart Reminder** | WC cart abandonment via the sync plugin | Cart recovery | [Abandoned Cart](https://acellesend.com/kb/articles/creating-an-abandoned-cart-email-sequence) |

### Trigger anatomy

Every trigger you configure has the same three pieces:

| Piece | What it does |
|---|---|
| **Trigger event** | One of the 12 above. Determines WHAT starts the workflow. |
| **Audience list** | Limits which subscribers are eligible. Only subscribers on this list enter the flow. |
| **Filters** *(trigger-dependent)* | Tag-based / Contact Attribute Update / Specific date need additional config (which tag, which field+value, which date). |

Every trigger fires **once per subscriber per qualifying event**. AcelleMail prevents re-firing on the same subscriber while they're in the flow — to re-enter, they need to be removed from the active session first (via *Contacts → Delete trigger* on the automation's Contacts tab).

## The CONDITION node — the branching workhorse

The CONDITION node creates a YES/NO split in your flow. It's how you build *"if engaged, do X; if not, do Y"*.

### CONDITION evaluates against four kinds of facts

| Fact | Example | Use |
|---|---|---|
| **Tag presence** | "Has tag `engagement-hot`?" | Bucket-based routing |
| **Custom field value** | "Plan field equals `enterprise`?" | Account-type-based content |
| **Activity history** | "Opened campaign 'Welcome'?" | Engagement-based pruning |
| **Compound (AND/OR)** | "Tag X AND field Y > 50?" | Complex multi-criteria checks |

For each fact, AcelleMail offers operators appropriate to the data type:

| Data type | Operators |
|---|---|
| Tag | has tag · doesn't have tag |
| Custom field (text) | equals · not equals · contains · doesn't contain · starts with · ends with · is empty · is not empty |
| Custom field (number) | equals · greater than · less than · between |
| Custom field (date) | greater than (days) · less than (days) · is past · is future |
| Activity (email opened) | opened · did not open |
| Activity (link clicked) | clicked any link · clicked specific link · did not click |

### Build a CONDITION node

In the flow builder:

1. Click **+** on the downstream arrow where you want the split
2. Pick **CONDITION** from the node picker
3. The side panel opens with three dropdowns: **Field → Operator → Value**
4. Configure your check
5. Two arrows appear from the new node: **YES** (top) and **NO** (bottom)
6. Build the downstream flow on each branch

### Multi-branch via chained CONDITIONs

The YES/NO split is binary. For more than two outcomes, chain CONDITION nodes:

```
CONDITION → Has tag `vip`?
            ├─ YES → SEND EMAIL: VIP exclusive
            └─ NO  → CONDITION → Has tag `customer`?
                                  ├─ YES → SEND EMAIL: Customer offer
                                  └─ NO  → CONDITION → Engagement-warm?
                                                       ├─ YES → SEND EMAIL: Warm nurture
                                                       └─ NO  → SEND EMAIL: Cold-list welcome
```

4 branches built from 3 CONDITIONs. Each YES/NO is one decision; the chain reaches every outcome.

## The OPERATION node — mutate the subscriber

The OPERATION node is how a flow changes the subscriber's data, not just sends them email. Five operation types:

| Operation | What it does | Use |
|---|---|---|
| **Add tag** | Adds a tag to the subscriber | Mark progress (`completed-onboarding`), trigger downstream flows |
| **Remove tag** | Removes a tag | Reset state, exit a bucket |
| **Update field** | Sets a custom field to a new value (literal or formula) | Lead scoring, lifecycle stage |
| **Move to blacklist** | Permanent block on all sends | Sunset non-responders ([Re-engagement](https://acellesend.com/kb/articles/re-engagement-campaigns-win-back-inactive-subscribers)) |
| **Copy to list** *(in some installs)* | Add the subscriber to another mail list | Multi-list segmentation |

The **Update field** operation can take a literal value (`Plan = enterprise`) OR a formula referencing the current value (`{{subscriber.lead_score}} + 25`). Formula support makes OPERATION the engine of any points-based scoring system.

## The WAIT node — pause the flow

WAIT pauses the subscriber's journey for a configurable duration before the next node fires.

| WAIT unit | Practical range | Use |
|---|---|---|
| Minutes | 5 min – 60 min | Cart-recovery near-real-time |
| Hours | 1h – 48h | Day-to-day welcome series |
| Days | 1d – 365d | Multi-week nurture, anniversaries |

**WAIT pauses persist across automation pauses** — if you pause the automation, all WAIT nodes hold their place; un-pausing resumes from where each subscriber was. This is critical to know if you're iterating on a flow in production.

## Designing multi-trigger flows

Sometimes one automation isn't enough. Common patterns:

### Pattern 1 — One canonical flow, multiple entries

Build one *"customer nurture"* automation with a Tag based trigger on `customer-new`. Then build:

- Pre-purchase flow → adds `customer-new` tag → enters nurture
- Post-purchase flow → adds `customer-new` tag → enters nurture (via the same trigger)

The nurture flow doesn't care HOW the subscriber became a customer — it just sees the tag.

### Pattern 2 — Coordinated trigger pairs

For a 2-stage funnel:

```
Automation A — Welcome series
  TRIGGER: Welcome new subscribers
  …5-email flow…
  Final OPERATION: Add tag `nurture-eligible`

Automation B — Long-tail nurture
  TRIGGER: Tag based: nurture-eligible
  …monthly content + offers…
```

Two automations, one handoff. The first ends with a tag operation; the second triggers off that tag. Clean separation, easier to maintain than one giant flow.

### Pattern 3 — Exit-on-tag-set

Any automation can exit early if a sentinel tag appears. The pattern:

```
… (any path) …
CONDITION → Has tag `exit-now`?
            ├─ YES → END
            └─ NO  → continue
```

Place these checks before each SEND EMAIL. Useful for "stop sending if customer complained" or "stop sending if customer converted".

## Anti-patterns

| Pattern | Problem | Better |
|---|---|---|
| **One giant flow with 30+ nodes** | Hard to debug, slow to evaluate, easy to break | Split into multiple smaller automations linked via tags |
| **CONDITION on every step** | Performance overhead; flow becomes unreadable | Use ONE upstream CONDITION + segment-based filtering |
| **Trigger on Contact Attribute Update with no filter** | Fires on every field change to any field — chaos | Always specify the field + condition in the trigger config |
| **WAIT 0 between nodes** | Pointless; just remove the WAIT | Remove |
| **Multiple automations triggering on the same event** | Subscribers receive duplicate emails | Use one canonical automation + handoff via tags |
| **Manual subscriber adds to "trigger" the flow** | Easy to forget, doesn't scale | Use the actual trigger — Tag based with a bulk-tag action |

## Performance notes

- AcelleMail evaluates trigger conditions on a polling basis (typically every minute for tag/attribute changes, daily for date triggers). Don't expect sub-second responsiveness.
- A subscriber can be in **multiple automations simultaneously** — each automation tracks them independently. Watch for cross-automation send overlaps.
- The **Contacts → Trigger all subscribers** action on an automation fires the trigger for every subscriber on the list at once. Use sparingly on large lists (10k+).

## Related articles

- [Build a Welcome Email Series in AcelleMail (Visual Flow Builder)](https://acellesend.com/kb/articles/building-a-welcome-email-series-in-acellemail)
- [Tag-Based Re-engagement Pattern](https://acellesend.com/kb/articles/re-engagement-campaigns-win-back-inactive-subscribers)
- [Lead Scoring in AcelleMail](https://acellesend.com/kb/articles/lead-scoring-with-email-automation)
- [Using API Triggers for Custom Automation Workflows](https://acellesend.com/kb/articles/using-api-triggers-for-custom-automation-workflows)

---

## Related articles

- [Build a Welcome Email Series in AcelleMail (Visual Flow Builder)](https://acellesend.com/kb/articles/building-a-welcome-email-series-in-acellemail): AcelleMail's automation builder ships with 12 triggers. "Welcome new subscribers" + 5 email nodes + a WAIT + a YES/NO CONDITION gives you a working welcome series in 30 minutes. Walkthrough with the actual flow canvas.
- [Post-Purchase Follow-Up Automation in AcelleMail — Thank, Review, Cross-Sell](https://acellesend.com/kb/articles/post-purchase-follow-up-automation): A confirmation email is just the start. Layer in a delivery-day check-in, a 7-day review request, a 30-day cross-sell, a 60-day "we miss you". This guide builds the full post-purchase flow in AcelleMail's automation builder using tags or custom events fired from your ecommerce backend.
- [Lead Scoring with AcelleMail Automation — Score, Tag, and Route](https://acellesend.com/kb/articles/lead-scoring-with-email-automation): Add points when a subscriber opens a campaign, clicks a key link, or fills a form. Route high-score subscribers to a sales-handoff tag automatically. This guide walks the AcelleMail automation builder + custom-field scoring, with API-driven scoring patterns for ecommerce + CRM integrations in the collapsible section.
- [Birthday & Anniversary Automations in AcelleMail — Date-Triggered Sends](https://acellesend.com/kb/articles/birthday-and-anniversary-email-automations): Send a happy-birthday discount on the day, a year-since-signup gift on the anniversary, a renewal reminder 30 days before expiry. AcelleMail's date-relative automation trigger handles all of these — this guide walks the setup with screenshots.
- [API Triggers for Custom Automations — Wiring AcelleMail to Anything](https://acellesend.com/kb/articles/using-api-triggers-for-custom-automation-workflows): Your CRM, app, or backend can fire AcelleMail automations directly — no Zapier, no manual tagging. This guide walks the UI setup (custom-event triggers + API token generation) plus a complete payload + signing reference in the collapsible developer section.
