Experiments and delivery

On this page 4

Campaign experiments compare message variants while preserving which recipient saw which treatment. Define the hypothesis, primary metric, allocation, and decision window before dispatch.

Delivery records

The delivery model separates several concerns:

  • Campaign recipients preserve the address, contact data, channel, schedule, status, and idempotency key used for a send.
  • Delivery attempts record provider calls and retry outcomes.
  • Delivery events record accepted, delivered, opened, clicked, bounced, complained, failed, or other provider feedback.
  • Campaign experiments record variant definitions and results.

Idempotency

A campaign recipient is unique for a contact and campaign. The dispatch action skips an existing recipient and produces a stable key based on team, campaign, and contact identity. Provider adapters should also pass an idempotency key where supported.

Retries

Retry only transient failures. Permanent address errors, complaints, and opt-outs should update suppression or consent state. Keep a bounded attempt count and move exhausted work to an inspectable failure or dead-letter state.

Reporting

Interpret opens cautiously because privacy features and image blocking affect accuracy. Prefer delivered, bounced, complained, clicked, converted, and attributed revenue metrics when evaluating campaign health.

Creator-first communications infrastructure, released under the MIT License.