Email, written down
Notes on deliverability, transactional and marketing email, and what we’ve learned building email infrastructure at scale.
Introducing marketing emails in Lettr
Marketing email now lives inside Lettr. The new module adds Audiences for managing who you send to and Campaigns for designing and sending bulk email, all in the same account and on the same domains you already use for transactional sending.
Managing Lettr from your AI assistant: the MCP integration
A bounce report comes in and you tab between dashboard, terminal, and editor copying IDs. MCP turns that into a sentence in the AI assistant you already have open. Here’s how the integration works.
The hidden cost of DIY transactional email
Rolling your own email stack feels cheap until you count the dev hours, the deliverability surprises, and the 2 a.m. pages. Here’s what it actually costs.
How to warm up a new sending domain
You set up SPF, DKIM, and DMARC, flip the switch, send 50,000 emails on day one — and half vanish. Nothing is broken. Your domain is just new and untrusted. Here’s how to warm it up.
Why you should separate transactional and marketing email
Your password reset and your weekly newsletter have almost nothing in common — yet most teams send both from the same domain, then wonder why 2FA codes hit spam after a campaign goes sideways.
SMTP vs. REST API: how to choose and when to switch
Most developers reach for the email transport they’ve used before — until they’re debugging a recycled SMTP connection in a serverless function at 2 AM. Here’s how to pick the right one and switch if you picked wrong.
SPF, DKIM, and DMARC explained for developers
Open a terminal and you can send mail claiming to be from support@stripe.com — SMTP won’t stop you. Three DNS-based standards close that gap. Here’s what each one does and how to tell if it’s working.
The journey of an email: from API call to inbox
You POST /emails, get a 200 OK, and assume it went through. Fifteen minutes later: “I never received my verification email.” Here’s everything that happens between your API call and the recipient’s inbox.
How transactional email actually works
A user clicks “Reset Password,” waits, checks spam, gives up — and files a ticket about an email you didn’t know was broken. If you’re shipping your first signup or receipt flow, the transactional vs. marketing distinction matters.