# Who receives it — audience, consent & frequency limits

> How opt-in, suppression, and frequency caps decide the recipient list.

_Source: https://hexafloww.com/docs/whatsapp/whatsapp-audience-consent_

---

Every WhatsApp campaign builds its recipient list through the same set of rules: consent, the suppression list, frequency limits, and de-duplication. This is why the number sent is often lower than your segment size — and that's by design, to protect your number's health.

## Consent (opt-in)

A contact must have **opted in** to WhatsApp before you can send them a marketing template. A contact opts in when they:

- message your number first (inbound messages auto-opt-in);
- are imported with a WhatsApp opt-in column set to yes;
- are marked opted-in in bulk on `/admin/clients`, or via the one-click attestation in the campaign wizard.

An explicit opt-out always wins — an inbound message won't re-opt-in someone who previously sent STOP.

### STOP and START

If a recipient replies **STOP** (or similar), HexaFloww immediately opts them out and adds them to the WhatsApp suppression list. **START** opts them back in. These are checked before auto-replies and AI, so an opt-out is always honoured.

## Suppression list

The suppression list (`/admin/suppression`) is a global do-not-send registry, per channel. Any number on the WhatsApp suppression list is excluded from every send, no exceptions. See [Consent, opt-in & the suppression list](https://hexafloww.com/docs/contacts/consent-suppression.md).

## Frequency limits

To avoid fatiguing your audience, HexaFloww enforces self-imposed limits on **marketing** messages (utility and authentication are exempt). Set them at `/admin/whatsapp/settings/compliance`:

- **Minimum gap** between marketing messages to the same contact — default 24 hours.
- **Maximum per week** — default 3.

Contacts over either limit appear as **Frequency-capped by you** in the wizard's skip breakdown. For a deliberate extra send, the wizard has an **include anyway** checkbox that overrides your own caps (it still reports how many were overridden).

### Meta's own cap

> [!WARNING]
> Separately, Meta enforces its own per-user marketing limit. When Meta rejects a send for this reason, that contact gets a **7-day cooldown** and shows as **Meta capped**. This one **cannot be overridden** — bypassing it just reproduces the same error.

## De-duplication

If the same phone number appears more than once in your audience (for example two contact records), only one message is sent and the rest show as **Duplicate numbers**.

> [!TIP]
> **Related**
> - [Send a broadcast campaign](https://hexafloww.com/docs/whatsapp/whatsapp-broadcast.md)
> - [Segments](https://hexafloww.com/docs/contacts/segments.md)
