# Transactional and marketing email

A transactional message is about something the recipient did — an order, a reset, an appointment. A marketing message promotes. The distinction matters because consent rules, opt-out obligations and sending infrastructure all hang off it, and because it is decided by the content of the message, not by which system happened to send it.

- **Status:** Reference
- **Audience:** both
- **Channels:** email
- **Last verified:** 2026-09-10
- **Canonical:** https://connectbyjbrh.com/docs/technology/transactional-vs-marketing/

## Where the line is drawn

| Message | Usual classification | Why |
|---|---|---|
| Order confirmation, invoice, delivery notice | Transactional | Triggered by an act of the recipient and about that act alone |
| Password reset, security alert | Transactional | The recipient cannot use the service without it |
| Appointment reminder | Transactional | About a commitment that already exists |
| Newsletter, offer, product announcement | Marketing | Promotes; the recipient's prior act did not ask for it |
| Receipt with three recommended products under it | Contested — often marketing in full | In strict consent regimes a promotional element can colour the whole message |
| 'Your trial ends Friday — upgrade now' | Contested | Genuinely informational and genuinely promotional at once |

The contested middle is where systems get into trouble, and the resolution is nearly always the same: split the message. A receipt that is only a receipt is unambiguous, and the recommendation can be its own message under its own consent.

## What hangs off the classification

**Consent** — In consent-based regimes marketing needs a lawful basis obtained before the first message; transactional mail rides on the relationship itself.
**Opt-out** — A marketing stream needs a working, easy opt-out and, for bulk senders at the largest providers, [one-click unsubscribe](/docs/technology/unsubscribe/). Offering an opt-out from invoices is not a kindness.
**Suppression semantics** — Marketing suppression must not silence transactional mail. A do-not-contact instruction is the stronger record and does stop both.
**Sending identity** — Separating the streams — commonly by subdomain — means a marketing reputation problem cannot take down password resets.
**Timing and volume** — Transactional mail is spiky and expected; marketing is batched and scheduled. Mixing the shapes makes both harder to reason about.

> **Careful** Classification follows content, not the sending system. Calling a batch 'transactional' because it left the transactional service is the error that unites almost every case where a business believed it was exempt from an opt-out requirement.

## Three ways it is got wrong

1. **The upsell in the receipt.** One promotional line in an otherwise transactional message, reused across every receipt, turns a stream nobody could object to into one people report.
2. **The 'service announcement' that is a launch.** If the recipient can do nothing about it and it names a new product, it is marketing however it is labelled internally.
3. **Suppression applied to the wrong stream.** Someone unsubscribes from marketing and stops receiving invoices, which is discovered weeks later, usually by the person's accounts department.

## Does Connect use this distinction?

Not in those words, because most of what Connect sends is neither: it is conversational mail — a reply in a thread a person started. The split Connect actually enforces is **outreach versus reply**, and those are two paths with different gates that are never merged.

Outreach is the path that carries the compliance weight. Suppression, unsubscribe, complaints and do-not-contact are checked in one place before an outreach message leaves, and the Connect Assistant cannot clear a do-not-contact entry. A reply to somebody who wrote to you is not gated by a marketing suppression, for the same reason a receipt should not be.

On the voice side the equivalent vocabulary is the line's **purpose** — `inbound`, `service`, `transactional` or `promotional` — which selects the voice profile and behaviour for a call. There is no campaign object behind it: 'per campaign' is 'per purpose'. If you run genuine marketing campaigns, they belong in a campaign platform with its own consent record, and the suppression decisions it produces belong here as well.

## Questions

### Can a message be both?

In practice yes, and in several regulatory readings that makes the whole message marketing. The engineering answer is to stop producing the hybrid: send the receipt as a receipt, and send the offer separately to people whose consent covers it. That also makes both streams measurable.

### Does an unsubscribe stop invoices?

It should not, and if it does the suppression is being applied at too coarse a level. A marketing opt-out belongs to the marketing stream. A do-not-contact entry is the deliberate exception — it is set when the answer is 'no contact of any kind' and it is not something the Assistant can lift.

### Where does an AI-drafted reply sit?

With replies, not with either category here. It answers a message the person sent, through the mailbox they wrote to, under the autonomy rule for that channel. The consent question was settled when they wrote in.

## Related

- [One-click unsubscribe](https://connectbyjbrh.com/docs/technology/unsubscribe/)
- [Suppression lists](https://connectbyjbrh.com/docs/technology/suppression/)
- [Email deliverability](https://connectbyjbrh.com/docs/technology/deliverability/)
- [Email in Connect](https://connectbyjbrh.com/docs/email/)
- [Prospecting in Connect](https://connectbyjbrh.com/docs/prospects/)

## What this page is based on

- Source pack: email — `docs-source/sources/CHANNELS.md` §1 (outreach and reply as separate paths; the single compliance check)
- Source pack: phone and voice — `docs-source/sources/PHONE.md` §6 (line purpose: inbound, service, transactional, promotional)
- RFC 8058 — one-click unsubscribe, the bulk-sender mechanism (https://www.rfc-editor.org/rfc/rfc8058)
- Connect capability registry (`docs-source/facts.py`)
