Copy as markdown[View .md](https://docs.funnelfizz.com/concepts/email "View the raw markdown for this page")[Open in Claude](https://claude.ai/new?q=Read%20https%3A%2F%2Fdocs.funnelfizz.com%2Fconcepts%2Femail.md%20and%20help%20me%20with%20this%20FunnelFizz%20topic%3A%20Email "Open this page in Claude with context")[Open in ChatGPT](https://chat.openai.com/?q=Read%20https%3A%2F%2Fdocs.funnelfizz.com%2Fconcepts%2Femail.md%20and%20help%20me%20with%20this%20FunnelFizz%20topic%3A%20Email "Open this page in ChatGPT with context")

# Email

FunnelFizz has its own email engine. You don't need Mailchimp, HubSpot, or ConvertKit — though you can migrate away from them if you want ([see tutorial](https://docs.funnelfizz.com/tutorials/migrating-from-brevo-hubspot.md)).

This page is an overview. The full feature reference is at [Features → Email](https://docs.funnelfizz.com/features/email.md).

## What makes FunnelFizz email different[​](#what-makes-funnelfizz-email-different "Direct link to What makes FunnelFizz email different")

Two things:

1. **Recipient lists are dynamic.** You don't manage a static "Newsletter Subscribers" list. Instead, a campaign targets "everyone currently in the TRIAL stage of my funnel" — the list re-evaluates at send time. If someone moved from TRIAL to CUSTOMER between the moment you drafted the campaign and the moment it sends, they'll fall out of the audience automatically.

2. **Stages are the primary targeting axis.** You're emailing *people at a specific point in their journey with you* — not a generic blast list. That changes what you write. A TRIAL- stage user gets "here's how to get the most out of your trial." A CUSTOMER-stage user who moved into the Churned bucket gets "we miss you — here's 20% off to come back."

## What you can send[​](#what-you-can-send "Direct link to What you can send")

* **Broadcast campaigns** — one-time send to everyone in a given stage (or split branch).
* **A/B tested campaigns** (PRO) — split the audience, pick a winner based on open or click rate, auto-fan-out the winner to the rest.
* **Scheduled campaigns** — set a send time, FunnelFizz queues it up.
* **Automation drips** — a DAG of SendEmail / Wait / Split steps that fires on stage entry or Stripe subscription events. See [Automations →](https://docs.funnelfizz.com/concepts/automations.md).
* **Churn recovery** — a specific pattern: target the *Churned* slice of CUSTOMER and send a "come back" offer. This is just an automation with a condition, but it's common enough we call it out.

## How it's built[​](#how-its-built "Direct link to How it's built")

* **Editor:** drag-and-drop MJML blocks (header, text, image, button, divider, columns, video, logo, social, HTML passthrough). MJML compiles to email-client-safe HTML with inline CSS.
* **Sender:** Resend under the hood, with fallback to SMTP for transactional mail.
* **Tracking:** open pixel + click URL rewriting, both automatic. Opens/clicks flow back into your funnel as events.
* **Domain:** you can send from `funnelfizz.com` on the HOBBY plan, or verify your own custom domain on PRO (DKIM + SPF + DMARC, we walk you through the DNS).

## Emailing people at specific points in the funnel[​](#emailing-people-at-specific-points-in-the-funnel "Direct link to Emailing people at specific points in the funnel")

The most common pattern:

```
Someone enters TRIAL stage

    │

    ├─ Day 0: "Welcome — here's the quickstart"

    ├─ Day 2: "3 things Pro users do first"

    ├─ Day 5: "Trial ends in 2 days — here's what you'd lose"

    └─ Day 7: "Trial ended — unlock for $X"
```

You build this as an **Automation** (DAG of Send/Wait/Send/Wait) with trigger = "subscription\_trial." FunnelFizz evaluates it per-profile — if someone upgrades during the trial, they're pulled out of the sequence automatically.

## Emailing churned users[​](#emailing-churned-users "Direct link to Emailing churned users")

Also common:

```
Someone's Stripe subscription is canceled

    │

    ├─ 7 days later: "Sorry to see you go — can you tell us why?"

    └─ 30 days later: "We fixed [thing]. Here's 20% off to come back."
```

Built as an automation with trigger = "churn" (Stripe `customer.subscription.deleted` webhook). The condition filters to "no active subscription anywhere" (the Churned bucket of the trichotomy) so you don't accidentally email someone who just upgraded.

## Quotas & limits[​](#quotas--limits "Direct link to Quotas & limits")

| Plan      | Emails/month | Custom domain                 | A/B testing | Max automations/stage     |
| --------- | ------------ | ----------------------------- | ----------- | ------------------------- |
| **FREE**  | —            | No                            | No          | —                         |
| **HOBBY** | 3,000        | No (send from funnelfizz.com) | No          | 1 per stage, 3-step depth |
| **PRO**   | 20,000       | Yes (verified)                | Yes         | 5 per stage, 5-step depth |

Hard bounces and unsubscribes are automatically suppressed — once someone unsubscribes, they won't receive *any* subsequent emails from your workspace (not just that campaign).

## Deliverability[​](#deliverability "Direct link to Deliverability")

Custom domain setup is the biggest lever. If you're on HOBBY sending from `funnelfizz.com`, your deliverability is fine for small volume but gets throttled by some corporate mail servers. On PRO, verifying your own domain with DKIM + SPF + DMARC lands you in inboxes at roughly industry-standard rates.

See [Features → Email → Custom domain](https://docs.funnelfizz.com/features/email.md#custom-sending-domain) for DNS setup.

***

**Next:** [Automations →](https://docs.funnelfizz.com/concepts/automations.md) — how the DAG-based drip engine actually works.
