# Conditional Logic — Feed Form vs. Target Form

Conditional logic appears in two places and they do different jobs.
Understanding the split keeps your campaigns precise and predictable.

------------------------------------------------------------------------

## Feed Form Logic (Control Form)

**Purpose:** Decide **whether the feed should run** when the control
form is submitted.

- Runs on the **control form’s fields** (e.g., a radio for Audience, a
  checkbox for “Send test only”).
- Example: Only run this feed if `Audience = Donors`.
- Typical pattern: One control form, **multiple feeds**. Each feed has
  its own conditions so only the correct feed triggers.

Result: If the conditions are not met, the feed **does not create a
batch**.

------------------------------------------------------------------------

## Target Form Logic (Audience Filtering, Premium)

*In the feed settings, this appears as **Mass Email Conditional**
**Logic**.*
**Purpose:** Decide **which entries are included** once the feed runs.

- Runs against the **target form’s entries** (the list you’re emailing).
- Example filters:
  - `Donation Date is this month`
  - `Role = Parent`
- Multiple conditions can be combined to create tight segments.
- You can also use merge tags to populate values from the control form
  submission in these conditions. This is powerful, but it breaks the
  preview’s estimated recipient count (the preview will show 0).

Result: The batch is created, but only entries matching these conditions
are added as recipients.

------------------------------------------------------------------------

## Common Patterns

- **Single Control Form, Many Audiences:**
  - Control form has an **Audience** field (Donors / Volunteers /
    Members).
  - Each feed’s **Feed Form Logic** checks for one audience.
  - Each feed’s **Target Form Logic** further narrows the segment (e.g.,
    donations in the last 90 days).
- **Test vs. Live Sends:**
  - Add a `Mode` field (Test / Live) on the control form.
  - Feed Form Logic: Run Test feed when `Mode = Test`; run Live feed
    when `Mode = Live`.
  - Target Form Logic: For Test feed, limit to a small internal list.

------------------------------------------------------------------------

## Tips

- Keep control-form conditions simple and obvious for staff.
- Use descriptive labels for feeds so it’s clear which audience each one
  targets.
- Start with narrow filters, preview the estimated batch size, then
  widen if needed.

------------------------------------------------------------------------

With the right split—**control form** to trigger, **target form** to
filter—you get clean workflows and accurate audiences every time.
