Email That Actually Reaches the Inbox
- ShiftQuality Contributor
- Apr 2
- 4 min read
Your application sends a welcome email. The user doesn't receive it. They check spam. Not there either. The email was sent successfully according to your logs. It just never arrived.
Email deliverability — getting emails from your server to the recipient's inbox — is a problem that most developers encounter and few understand. The email was sent. The email service accepted it. But somewhere between your server and the inbox, the email was silently dropped, spam-filtered, or rejected.
This isn't random. Email filtering is deterministic. When your emails don't arrive, there are specific, fixable reasons.
Why Emails Don't Arrive
You Haven't Authenticated Your Domain
Email authentication is a set of DNS records that prove you're authorized to send email from your domain. Without them, receiving servers treat your email as potentially forged — because most spam uses forged sender addresses.
Three records matter:
SPF (Sender Policy Framework): A DNS TXT record that lists which servers are authorized to send email for your domain.
v=spf1 include:_spf.google.com include:sendgrid.net ~all
Translation: "Email from our domain is sent by Google Workspace and SendGrid. Anything else is suspicious."
DKIM (DomainKeys Identified Mail): A cryptographic signature attached to each email that proves the email wasn't modified in transit and was sent by an authorized server. Your email provider generates the signing key; you publish the public key as a DNS TXT record.
DMARC (Domain-based Message Authentication, Reporting, and Conformance): A policy that tells receiving servers what to do when SPF or DKIM checks fail: do nothing, quarantine (spam folder), or reject.
v=DMARC1; p=quarantine; rua=mailto:dmarc-reports@yourdomain.com
Translation: "If authentication fails, put it in spam. Send reports to this email address so we can monitor."
The impact: Without these three records, major email providers (Gmail, Outlook, Yahoo) will treat your email as untrustworthy. Some will deliver to spam. Some will reject entirely. Setting them up correctly is the single highest-impact thing you can do for deliverability.
You're Sending From a Shared IP With Bad Neighbors
If you use a shared email sending service, your emails are sent from IP addresses shared with other customers. If another customer on the same IP sends spam, the IP's reputation drops — and your emails suffer.
Fix: Most email services let you use a dedicated IP address (typically $20-50/month). This isolates your reputation from others. Only do this if you send enough volume (10,000+ emails/month) to build a positive reputation on the dedicated IP. Low volume on a dedicated IP can actually hurt, because there isn't enough positive signal.
Your Content Triggers Spam Filters
Spam filters analyze email content for patterns associated with spam. Common triggers:
ALL CAPS subjects — "FREE OFFER INSIDE"
Excessive exclamation marks — "Don't miss out!!!"
Spam phrases — "Act now," "Limited time," "Click here," "No obligation"
Image-heavy emails with little text — Spammers use images to bypass text analysis
Misleading subject lines — Subject doesn't match the content
Single large image as the entire email — No text for filters to analyze
Fix: Write emails like a human, not a marketer. Clear subject lines. Balanced text and images. No spam trigger phrases. If your email reads like something a real person would send, it'll pass content filters.
You Don't Handle Bounces
When an email address doesn't exist (hard bounce) or the inbox is full (soft bounce), the receiving server tells your sending service. If you keep sending to addresses that bounce, your sender reputation degrades.
Fix: Your email service handles bounce processing automatically — but you need to respect it. Remove hard-bounced addresses from your list immediately. Stop sending to addresses that soft-bounce repeatedly.
You Don't Have an Unsubscribe Mechanism
For marketing emails, a clear unsubscribe link is legally required (CAN-SPAM Act, GDPR) and practically essential. When users can't unsubscribe, they mark your email as spam. Spam complaints destroy your sender reputation far more than unsubscribes do.
Fix: Every marketing email includes a one-click unsubscribe link. Process unsubscribes immediately — not "within 10 business days." Honoring unsubscribes quickly builds trust and protects your reputation.
Transactional vs. Marketing Email
Transactional emails are triggered by user actions: password resets, order confirmations, account notifications. They have high deliverability by default because they're expected, relevant, and sent to engaged recipients.
Marketing emails are sent in bulk: newsletters, promotions, announcements. They have lower deliverability because they're less expected, more likely to be unwanted, and sent to broader lists.
Best practice: Send transactional and marketing emails from different subdomains (mail.yourdomain.com for transactional, newsletter.yourdomain.com for marketing). This isolates their reputations — if your marketing reputation drops, your transactional delivery stays intact.
Choosing an Email Service
For applications that send email, don't use your own SMTP server. Use a service:
SendGrid, Postmark, Mailgun, Amazon SES — These handle deliverability infrastructure, bounce processing, authentication, and reputation management.
Postmark is specifically optimized for transactional email and has the highest deliverability rates. Amazon SES is the cheapest at scale. SendGrid is the most common general-purpose choice.
What they handle for you:
SPF/DKIM authentication
Bounce and complaint processing
Delivery monitoring and analytics
IP reputation management
Rate limiting and throttling
What you still handle:
DNS records (SPF, DKIM, DMARC)
Content quality
List hygiene (removing bounced and unsubscribed addresses)
Compliance with anti-spam laws
Testing Deliverability
Before sending to real users, test your setup:
mail-tester.com: Send a test email to their provided address and get a deliverability score with specific recommendations.
Google Postmaster Tools: If you send to Gmail users, this shows your domain's reputation, spam rate, and authentication success rate.
MXToolbox: Checks your DNS records for SPF, DKIM, and DMARC configuration.
Run these checks after initial setup and periodically thereafter. Deliverability can degrade over time if something changes.
Key Takeaway
Email deliverability is an infrastructure problem. Set up SPF, DKIM, and DMARC DNS records — this is the highest-impact fix. Write content like a human, not a spammer. Handle bounces and honor unsubscribes immediately. Separate transactional and marketing email on different subdomains. Use an email service instead of your own SMTP server. Test deliverability before sending to real users. When emails don't arrive, the cause is almost always authentication, reputation, or content — and all three are fixable.



Comments