Skip to content
Production SMTP
step 1/5

Reading — step 1 of 5

Read

~1 min readProduction

Production SMTP

Operating SMTP servers at scale:

Reputation:

  • IP reputation (sender's outbound IP).
  • Domain reputation (From: domain).
  • Built over weeks/months. Burned in seconds.
  • New IPs need "warming up" — slowly increase volume.

Anti-abuse:

  • Rate limit per sender, per domain, per IP.
  • Greylisting: temporarily reject (4xx) on first contact; legit senders retry, spammers don't.
  • Blocklists (Spamhaus, SpamCop, Spam Eating Monkey): consult on inbound.
  • DNSWL: allowlists.

Spam classification:

  • SpamAssassin: rule-based + Bayesian.
  • ML models: feature extraction from headers + body.
  • User feedback: Mark as Spam → train classifier.

Deliverability monitoring:

  • DMARC aggregate reports.
  • Postmaster tools (Gmail, Outlook).
  • Bounce rate, spam folder rate.
  • Active monitoring: send to seed accounts, track outcomes.

Bounces & feedback loops:

  • Proper DSN parsing.
  • Hard bounces (5xx): remove address from list immediately.
  • Soft bounces (4xx): retry; remove after persistent failure.
  • FBL (Feedback Loops): Yahoo, AOL forward "Mark as Spam" to senders.

Compliance:

  • CAN-SPAM (US): unsubscribe link, physical address, no false headers.
  • CASL (Canada): explicit consent.
  • GDPR (EU): consent + right to unsubscribe + data minimization.
  • List management: every bulk email needs a List-Unsubscribe header.

Self-hosting realities:

  • Major providers (Gmail, Microsoft) suspicious of small senders.
  • Need: PTR records, reverse DNS, SPF, DKIM, DMARC, established IP, low bounce rate.
  • One missed step → straight to spam folder.

Service providers:

  • SendGrid, Mailgun, Postmark, Amazon SES: high-deliverability transactional mail.
  • Pre-warmed IP pools, dedicated IPs for big senders, automatic bounce management.
  • API simpler than SMTP.

Don't:

  • Roll your own outbound MTA without expertise.
  • Send bulk mail without warming.
  • Buy email lists.

Do:

  • Use a service for transactional + bulk.
  • Self-host for receiving + relaying internal mail.

Discussion

Ask a question, share an insight, or help someone who’s stuck.

Sign in to post a comment or reply.

Loading…