Operations · Deliverability
Deliverability
Notes for senders: authentication and alignment, bounces and complaints, warmup, content and headers, and the checks postfly runs for you.
postfly signs and delivers the mail; whether it lands in the inbox also depends on the domain, the recipients and the content. These notes cover what you control.
Authenticate every domain
- Verify every domain you send from — SPF, DKIM and DMARC all have to pass before postfly sends from it (Sender domains & DNS).
- Keep one SPF record per domain and under 10 DNS lookups; the domain page counts them for you.
- Start DMARC at
p=none, read the aggregate reports that arrive at theruaaddress, and tighten toquarantineorrejectonce only your own services show up in them. - Consider a subdomain for application mail (for example
notify.yourdomain.com), so its reputation stays separate from your people's mailboxes.
Keep the list clean
- Send only to addresses that asked for the mail — an account signup, a purchase, a password reset.
- A hard bounce suppresses the address for every postfly project, and a spam complaint for yours (Suppressions). Take the address out of your own database too: the
email.bouncedandemail.complainedwebhooks tell you when. - Treat
409 recipient_suppressedas an answer, not an error to retry. - When someone unsubscribes from non-essential mail, add them with reason
unsubscribe(POST /v1/suppressions) so no code path mails them again.
Warm up
Receivers judge a new sender by its first weeks. A project on warmup starts at 50 messages a day and has no cap after day 28 (Warmup & daily caps). Even without a cap, grow volume gradually on a new domain: move one kind of mail over first, then the rest.
Content & headers
- Send a
textpart along withhtml. - Use a
fromaddress that doesn't change, and afromNamerecipients recognize. - For mail people can opt out of, add a
List-Unsubscribeheader throughheaders. - Set a
tagper kind of mail (welcome,password-reset) so you can filterGET /v1/emailsand spot which one bounces.
What postfly watches
- Verified domains are re-checked daily; if SPF, DKIM or DMARC breaks, the project hears about it once, and again when it is fixed.
- Bounces are classified (Bounce categories) and hard ones suppressed automatically; complaints from feedback loops suppress the address in your project.
- postfly's operators watch the sending servers' blocklist listings, reverse DNS and Microsoft SNDS (how Outlook.com rates them).
- The dashboard shows delivery and bounce numbers per project, and a weekly summary can be mailed to the team every Monday.