@company-manager/docs

Automation Flows

Email automation sequences, triggers, and campaign workflow diagrams

Email Automation Flows

This page covers email automation including triggers, sequences, and campaign workflows.

Automation Rule State Machine

stateDiagram-v2
    [*] --> DRAFT: Create Rule

    DRAFT --> ACTIVE: Activate
    DRAFT --> DRAFT: Edit

    ACTIVE --> PAUSED: Pause
    ACTIVE --> ACTIVE: Running

    PAUSED --> ACTIVE: Resume
    PAUSED --> ARCHIVED: Archive

    ARCHIVED --> [*]

    note right of ACTIVE
        Processing triggers
        and sending emails
    end note

Trigger-Based Automation Flow

flowchart TD
    subgraph "Triggers"
        T1[Contact Created]
        T2[Form Submitted]
        T3[Purchase Made]
        T4[Page Visited]
        T5[Date-Based]
        T6[Segment Entry]
    end

    subgraph "Evaluation"
        T1 --> EVAL[Evaluate Conditions]
        T2 --> EVAL
        T3 --> EVAL
        T4 --> EVAL
        T5 --> EVAL
        T6 --> EVAL

        EVAL --> MATCH{Conditions Met?}
    end

    subgraph "Actions"
        MATCH -->|Yes| ACTION[Execute Actions]
        MATCH -->|No| SKIP[Skip - No Match]

        ACTION --> A1[Send Email]
        ACTION --> A2[Add to Segment]
        ACTION --> A3[Update Contact]
        ACTION --> A4[Wait/Delay]
        ACTION --> A5[Branch/Split]
        ACTION --> A6[Notify Team]
    end

    A4 --> NEXT[Next Action]
    A5 --> BRANCH{Branch Condition}
    BRANCH --> PATH_A[Path A]
    BRANCH --> PATH_B[Path B]

    style ACTION fill:#e8f5e9

Welcome Sequence Example

sequenceDiagram
    participant User
    participant System as Automation System
    participant Queue as Email Queue
    participant Email as Email Service
    participant DB as Database

    User->>System: Signs up (trigger)
    System->>System: Evaluate rules

    System->>DB: Add to welcome sequence
    System->>Queue: Queue welcome email #1

    Queue->>Email: Send immediately
    Email->>User: Welcome email

    Note over System: Wait 1 day

    System->>System: Check engagement
    System->>Queue: Queue email #2

    Queue->>Email: Send email #2
    Email->>User: Getting started tips

    Note over System: Wait 3 days

    System->>System: Check if converted
    alt Not converted
        System->>Queue: Queue email #3
        Queue->>Email: Send special offer
        Email->>User: Conversion offer
    else Converted
        System->>DB: End sequence
        System->>DB: Move to customer segment
    end

Drip Campaign Flow

flowchart TD
    START[Contact Enters Campaign] --> EMAIL1[Email 1: Introduction]

    EMAIL1 --> WAIT1[Wait 2 Days]
    WAIT1 --> CHECK1{Opened Email 1?}

    CHECK1 -->|Yes| EMAIL2A[Email 2A: Product Details]
    CHECK1 -->|No| EMAIL2B[Email 2B: Re-engagement]

    EMAIL2A --> WAIT2[Wait 3 Days]
    EMAIL2B --> WAIT2

    WAIT2 --> CHECK2{Clicked Any Link?}

    CHECK2 -->|Yes| EMAIL3A[Email 3A: Case Study]
    CHECK2 -->|No| EMAIL3B[Email 3B: Benefits Recap]

    EMAIL3A --> WAIT3[Wait 2 Days]
    EMAIL3B --> WAIT3

    WAIT3 --> EMAIL4[Email 4: Call to Action]

    EMAIL4 --> WAIT4[Wait 5 Days]
    WAIT4 --> CHECK3{Converted?}

    CHECK3 -->|Yes| END_SUCCESS[End - Success]
    CHECK3 -->|No| FINAL[Final Email: Last Chance]

    FINAL --> END[Campaign End]

    style END_SUCCESS fill:#e8f5e9

Conditional Branching Logic

flowchart TD
    TRIGGER[Trigger: Purchase Made] --> EVALUATE[Evaluate Purchase]

    EVALUATE --> VALUE{Order Value?}

    VALUE -->|> $500| HIGH[High Value Path]
    VALUE -->|$100-500| MEDIUM[Medium Value Path]
    VALUE -->|< $100| LOW[Standard Path]

    HIGH --> VIP_EMAIL[Send VIP Thank You]
    VIP_EMAIL --> VIP_TAG[Add VIP Tag]
    VIP_TAG --> VIP_FOLLOW[Schedule Personal Follow-up]

    MEDIUM --> THANK_EMAIL[Send Thank You]
    THANK_EMAIL --> UPSELL[Send Upsell Sequence]

    LOW --> BASIC_EMAIL[Send Order Confirmation]
    BASIC_EMAIL --> REVIEW[Request Review in 7 Days]

    subgraph "Category Branch"
        EVALUATE --> CATEGORY{Product Category?}
        CATEGORY -->|Electronics| ELEC[Electronics Tips Series]
        CATEGORY -->|Clothing| CLOTH[Style Guide Series]
        CATEGORY -->|Food| FOOD[Recipe Series]
    end

A/B Testing Flow

flowchart TD
    CAMPAIGN[Create Campaign] --> AB{A/B Test?}

    AB -->|Yes| VARIANTS[Create Variants]
    AB -->|No| SINGLE[Single Version]

    VARIANTS --> VAR_A[Variant A]
    VARIANTS --> VAR_B[Variant B]

    VAR_A --> SPLIT[Split Audience]
    VAR_B --> SPLIT

    SPLIT --> TEST_A[Send to 15% - Variant A]
    SPLIT --> TEST_B[Send to 15% - Variant B]
    SPLIT --> HOLD[Hold 70%]

    TEST_A --> TRACK_A[Track Opens/Clicks]
    TEST_B --> TRACK_B[Track Opens/Clicks]

    TRACK_A --> WAIT[Wait for Results]
    TRACK_B --> WAIT

    WAIT --> ANALYZE[Analyze Performance]
    ANALYZE --> WINNER{Winner Determined}

    WINNER --> SEND_WINNER[Send Winner to Remaining 70%]
    SEND_WINNER --> COMPLETE[Campaign Complete]

    SINGLE --> SEND_ALL[Send to All]
    SEND_ALL --> COMPLETE

    style WINNER fill:#e8f5e9

Automation Rule Sequence

sequenceDiagram
    participant Event as Event Source
    participant Engine as Automation Engine
    participant Rules as Rules Engine
    participant DB as Database
    participant Queue as Email Queue
    participant Email as Email Service

    Event->>Engine: Trigger event (e.g., form_submit)
    Engine->>Rules: Find matching rules

    Rules->>DB: Query active rules for trigger type
    DB-->>Rules: Matching rules

    loop For each matching rule
        Rules->>Rules: Evaluate conditions
        alt Conditions met
            Rules->>Engine: Execute actions
            loop For each action
                alt Send Email
                    Engine->>Queue: Queue email
                    Queue->>Email: Send
                else Update Contact
                    Engine->>DB: Update contact
                else Add to Segment
                    Engine->>DB: Add to segment
                else Wait
                    Engine->>DB: Schedule next action
                end
            end
        end
    end

    Engine->>DB: Log automation execution

Segment-Based Automation

flowchart TD
    subgraph "Dynamic Segments"
        SEG1[New Subscribers<br/>Joined < 7 days]
        SEG2[Engaged<br/>Opened 3+ emails]
        SEG3[At Risk<br/>No opens 30 days]
        SEG4[VIP Customers<br/>Spent > $1000]
    end

    subgraph "Automated Actions"
        SEG1 --> WELCOME[Welcome Series]
        SEG2 --> REWARD[Loyalty Rewards]
        SEG3 --> WINBACK[Win-Back Campaign]
        SEG4 --> EXCLUSIVE[Exclusive Offers]
    end

    subgraph "Entry/Exit Triggers"
        ENTRY[Contact Enters Segment]
        EXIT[Contact Exits Segment]

        ENTRY --> START[Start Automation]
        EXIT --> STOP[Stop Automation]
    end

Automation Analytics

flowchart LR
    subgraph "Tracking Points"
        ENTER[Sequence Entered]
        EMAIL_SENT[Email Sent]
        OPEN[Email Opened]
        CLICK[Link Clicked]
        CONVERT[Goal Converted]
        EXIT[Sequence Exit]
    end

    subgraph "Metrics"
        FUNNEL[Conversion Funnel]
        DROP[Drop-off Analysis]
        TIME[Time to Convert]
        REVENUE[Revenue Attribution]
    end

    ENTER --> FUNNEL
    EMAIL_SENT --> FUNNEL
    OPEN --> FUNNEL
    CLICK --> FUNNEL
    CONVERT --> FUNNEL

    FUNNEL --> DROP
    FUNNEL --> TIME
    CONVERT --> REVENUE