Senders & Domains

Sender Rotation

Cleanmails automatically rotates between your sender accounts when sending campaign emails. This distributes volume, protects reputation, and avoids triggering rate limits.

How Rotation Works

  1. Filter eligible senders — Only senders with status "ready", health > 20, and remaining daily limit are considered
  2. Domain-aware assignment — Avoids sending from the same sender domain to the same recipient domain in the same batch
  3. Reputation-weighted selection — Healthier senders (higher health score) get proportionally more sends
  4. Cooldown respect — Senders in cooldown (after consecutive errors) are skipped

Per-Domain Rate Limiting

Cleanmails enforces per-recipient-domain rate limits to avoid being throttled by major providers:

ProviderRate Limit
Gmail / Google Workspace2 emails/second
Outlook / Hotmail / Live2 emails/second
Yahoo / AOL2 emails/second
iCloud / me.com / mac.com2 emails/second
ProtonMail / Proton.me1 email/second
All other domains5 emails/second
Automatic throttling

If the rate limit is hit, the worker automatically waits until the next second window before sending to that domain again. No configuration needed.

Daily Limits

Each sender has a configurable daily limit (default: 50). Once reached, that sender is excluded from rotation for the rest of the day. Limits reset at midnight UTC.

Best Practices

  • Use 5-10 senders per campaign — More senders = better distribution and lower per-sender volume
  • Mix domains — Use senders across 3-5 different domains for maximum rotation
  • Set conservative daily limits — 30-50/day for new senders, 100-200/day for warmed-up ones
  • Monitor health scores — If a sender drops below 50, investigate bounces