Why my mail is landing in spam
The most common reasons, in order of how often we see them.
1. DKIM isn't verified
Check GET /v1/domains/{domain}. If status isn't verified, Gmail and Outlook will treat your mail as unauthenticated and heavily filter it. Run GET /v1/domains/{domain}/verify to re-check DNS, and wait for propagation (up to an hour for some nameservers).
2. You're on a brand-new domain
New domains have zero sending reputation. Even with perfect auth, Gmail is wary. The fix is domain warming: send low volumes for the first week, prefer recipients who have engaged (replied to you) before, and gradually ramp.
3. Your content looks spammy
Content filters still matter. Things that raise red flags:
- ALL CAPS subject lines
- Many exclamation marks
- Tracking-heavy HTML (hidden pixels, URL shorteners)
- Large image-to-text ratios
- URLs that don't match the sender domain
- Generic "Hi {first_name}" template skeletons that didn't get filled in
Agent-generated mail tends to be clean — short, conversational, personalized. That's a deliverability advantage. Don't undo it with HTML email templates styled like marketing newsletters.
4. Recipient address was never validated
Sending to a garbage address (typo, catch-all, spam trap) triggers a bounce, and bounces hurt your reputation. We soft-enforce this: if you try to send to an address that has never engaged with your inbox, you must set verified: true in the body to assert you've validated it out-of-band (e.g. via POST /v1/verify-email).
5. You're sending through an inbox that bounced too much
When the bounce rate on an inbox crosses our safeguard threshold we auto-pause sending from that inbox. See Bounces and auto-pause for the threshold and how to unpause.
Diagnosis checklist
- Send a test to mail-tester.com. It grades your auth, content, and blacklist status.
- Check DKIM + SPF + DMARC records with
dig TXT. - Inspect the raw headers of one of your sent messages — look for
Authentication-Results: dkim=pass. - Check
GET /v1/metricsfor your recent bounce count.