What is Email Bounce Handling?
Email bounce handling is the process of managing emails that cannot be delivered to recipients. Bounces are categorized as hard bounces (permanent failures like invalid addresses) or soft bounces (temporary issues like full mailboxes). Proper bounce handling is crucial for maintaining sender reputation and email deliverability.
Types of Bounces
Hard Bounces (Permanent)
- Invalid email address
- Domain doesn't exist
- Recipient server permanently rejects
- Action: Remove immediately from list
Soft Bounces (Temporary)
- Mailbox full
- Server temporarily unavailable
- Message too large
- Action: Retry, then remove after multiple failures
Block Bounces
- Spam filter rejection
- IP/domain blacklisted
- Content-based filtering
- Action: Investigate and fix the underlying issue
Handling Bounces in Your Application
Most email services provide bounce handling via webhooks:
// Example bounce webhook handler
app.post('/webhooks/email-bounces', async (req, res) => {if (type === 'hard_bounce') { // Immediately mark as invalid await db.user.update({ where: { email }, data: { emailStatus: 'invalid', emailInvalidReason: reason } }); } else if (type === 'soft_bounce') { // Track soft bounces, disable after threshold await db.emailBounce.create({ data: { email, reason, timestamp } }); }
res.status(200).send('OK'); }); ```
Test your bounce handling by sending to known invalid addresses in staging.
Testing Bounce Handling
Testing bounce scenarios requires different approaches:
Webhook Testing
- Use your email service's test endpoints
- Simulate bounce webhooks in integration tests
- Verify user records are updated correctly
End-to-End Testing
- Some services provide special addresses that always bounce
- Test that bounced users are handled in your UI
- Verify re-engagement flows for soft bounces
Note: plop.email is for testing successful delivery. For bounce testing, use your email service's testing features.
Related Terms
Related Use Cases
Try email bounce handling with plop.email
Get started with reliable email testing in minutes.