Deliverability
If you’re blasting a “beautiful” HTML newsletter and wondering why replies are dead and your open rates are sliding — it’s probably not your copy. It’s your format.
Inboxes (and spam filters) don’t reward design. They reward trust. And a heavy HTML template screams “marketing automation” — which is exactly what Gmail/Outlook try to classify away from the primary inbox.
Deliverability people care about one thing: Inbox Placement. Not “sent”, not “delivered”, not “bounced” — where the email actually lands.
A classic failure mode is spending time on a gorgeous template that:
The no-bullshit version: if you want replies, write like a human and send like a human. Plain-text-ish is the fastest way to get there.
I’m not saying you need to send raw text-only MIME with zero formatting. “Plain-text-ish” means:
This is especially true for:
A lot of mail merge tools route your email through their own infrastructure or add “sent via” branding. Sometimes it’s visible in the body, sometimes it’s in headers. Either way, it reduces trust.
ListMailer avoids this by sending through your accounts and relays:
Net result: recipients see your domain and your sending identity. No “what tool is this?” friction.
Here are example SMTP settings you can use in ListMailer. (Exact values depend on your provider and region.)
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
ENCRYPTION=STARTTLS
SMTP_USERNAME=you@yourdomain.com
SMTP_PASSWORD=your_app_passwordSMTP_HOST=smtp.office365.com
SMTP_PORT=587
ENCRYPTION=STARTTLS
SMTP_USERNAME=you@yourdomain.com
SMTP_PASSWORD=your_app_passwordSMTP_HOST=email-smtp.eu-west-1.amazonaws.com
SMTP_PORT=587
ENCRYPTION=STARTTLS
SMTP_USERNAME=AKIA...YOUR_SMTP_USER
SMTP_PASSWORD=...YOUR_SMTP_PASSWORDWarm-up note: new accounts and new domains should ramp. Even with SES. Account age and gradual volume increases matter.
Every provider has caps. Google Workspace and Microsoft 365 have daily limits. SES/Mailjet have throughput and reputation constraints.
If you push all volume through one sender, you create two problems:
ListMailer’s SMTP Rotation distributes sends across multiple SMTP connections. Practical examples:
If your “personalization” is only , you’re not personalizing. You’re just mail-merging.
With ListMailer, your CSV headers become Payload/Variables. That lets you reference real context.
email,first_name,company,role,trigger,stack
jane@acme.com,Jane,Acme,Ops Lead,invoice backlog,n8n
sam@north.io,Sam,North,Growth,"new landing page",MakeSubject: quick question about
Hey ,
Saw you’re the at — noticed .
If you’re using , I can share a simple setup to keep outreach deliverable at scale.
Would it be stupid to send a 3-line example?
— HenrikThis format tends to get fewer spam complaints (and more replies) because it reads like a real message. That’s how you bypass spam filters in the only way that matters: by not looking like spam.
You can do everything “right” with plain-text and rotation… and still tank deliverability by re-mailing people who already opted out.
ListMailer solves that with a persistent Global Opt-out layer (the Global Blacklist) that applies across lists and imports. If someone unsubscribes once, they stay unsubscribed — even when you upload a “fresh” CSV next month.
HTML templates aren’t “bad”. They’re just the wrong default for outreach. If you want inbox placement, trust, and replies — keep it plain-text-ish, rotate SMTPs to stay under caps, and enforce global opt-out.
Import a CSV, map payload variables, connect Google Workspace/Microsoft 365 or SES/Mailjet, enable SMTP rotation, and let ListMailer enforce the Global Blacklist automatically.
Start for Free