Setiap bounce adalah sinyal. Memahami perbedaan antara 421 temporary failure dan 550 permanent rejection bisa menyelamatkan reputasi domain Anda dari blacklist โ atau mempercepat recovery dari masalah deliverability.
Anda kirim 10.000 email. Tiba-tiba SMTP server merespons dengan kode misterius: 550 5.7.1. Apa artinya? Apakah retry? Apakah suppress? Atau ada yang salah dengan konfigurasi DNS?
85% marketer Indonesia tidak memahami kode SMTP response. Hasilnya? Hard bounce di-treat sebagai soft bounce (domain terus dikirimi), atau sebaliknya โ subscriber valid dihapus karena misinterpretasi temporary error.
๐จ Bounce Rate Benchmark 2026
- Hard bounce <0.5%: Excellent (industry standard)
- Hard bounce 0.5-2%: Warning (perlu immediate action)
- Hard bounce >2%: Critical (blacklist risk)
- Soft bounce >5%: Infrastructure issue (server, reputation)
- Overall bounce >5%: Most ESP akan suspend account
๐ Memahami Kode SMTP Response
Struktur Kode: XXX Y.Y.Z
XXX = Class (2xx Success, 4xx Temporary, 5xx Permanent)
Y.Y = Subject (1.x Address, 7.x Security, etc)
Z = Detail (specific reason)
| Class |
Arti |
Action |
| 2xx |
Success โ email accepted |
Continue, track delivery status |
| 4xx |
Transient failure โ temporary |
Retry dengan exponential backoff |
| 5xx |
Permanent failure โ fatal |
Suppress permanently, investigate root cause |
โ ๏ธ Kode 4xx: Temporary Failures (Bisa Retry)
421 Service Not Available
421 4.7.0 Too many messages sent, rate limit exceeded. Try again later.
421 4.4.2 Connection dropped due to inactivity
421 4.7.1 IP reputation too low, greylisting in effect
โ
Action: Retry dalam 1-4 jam. Jika persist >24 jam, cek IP reputation.
450 Mailbox Unavailable
450 4.1.1 Recipient address rejected: Greylisted, try again in 300 seconds
450 4.2.1 Mailbox full
450 4.7.1 Access denied, IP blocked by policy
โ
Action: Retry 3-5x dengan interval meningkat. Greylisting normal, akan pass setelah retry.
451 Local Error
451 4.3.0 Mail server temporarily rejected message
451 4.7.1 SPF check failed (temporary DNS issue)
451 4.4.5 Insufficient system storage
โ
Action: Retry dalam 1 jam. Jika SPF-related, cek DNS propagation.
452 Insufficient System Storage
452 4.2.2 Mailbox quota exceeded
452 4.3.1 Message size exceeds fixed limit
452 4.4.5 Server busy, try again later
โ
Action: Untuk mailbox full, retry dalam 24-48 jam. Untuk size limit, compress attachment atau split message.
4xx Retry Strategy
Attempt 1: Immediate (initial failure)
Attempt 2: +1 hour
Attempt 3: +4 hours
Attempt 4: +24 hours
Attempt 5: +48 hours (final)
If still 4xx after 5 attempts โ Treat as hard bounce, suppress
โ Kode 5xx: Permanent Failures (Suppress Immediately)
500 Syntax Error
500 5.5.1 Syntax error in parameters or arguments
500 5.5.2 Syntax error, command unrecognized
500 5.3.3 Unrecognized command
โ ๏ธ Cause: Malformed email address, corrupted header, atau bug di SMTP client.
โ
Action: Fix syntax error, jangan retry ke address yang sama. Audit email validation di signup.
550 Mailbox Unavailable (The Big One)
550 5.1.1 The email account does not exist
550 5.1.10 Recipient not found
550 5.7.1 Message rejected due to content restrictions
550 5.7.26 This message does not pass authentication checks (SPF/DKIM/DMARC)
550 5.7.508 Access denied, banned sender
550 5.7.606 Mail forwarded to unregistered recipient
| Sub-code |
Arti |
Root Cause |
| 5.1.1 |
Bad destination mailbox |
Typo, account deleted, domain expired |
| 5.1.10 |
Recipient not found |
Address tidak ada di directory |
| 5.7.1 |
Delivery not authorized |
Content filter, attachment blocked |
| 5.7.26 |
Authentication failure |
SPF/DKIM/DMARC invalid |
| 5.7.508 |
Banned sender |
IP/domain blacklisted |
โ
Action: Suppress immediately. Jangan retry, jangan coba lagi. Investigation required untuk 5.7.x codes.
551 User Not Local
551 5.1.1 User not local; please try forwarding-path
โ
Action: Jarang terjadi di era modern. Update MX record jika domain pindah hosting.
552 Message Size Exceeds
552 5.2.3 Message size exceeds fixed maximum message size
552 5.3.4 Message too large for system
โ
Action: Compress attachment, gunakan cloud link (Google Drive, Dropbox), atau split message. Retry dengan versi lebih kecil.
553 Mailbox Name Invalid
553 5.1.3 The recipient address is not a valid RFC-5321 address
553 5.5.4 Invalid address
โ
Action: Suppress dan fix validation di frontend. Cek untuk typo umum: gmai.com, yahooo.com, dll.
554 Transaction Failed
554 5.7.1 Service unavailable; Client host blocked
554 5.7.9 Message not accepted for policy reasons
554 5.7.60 The message was rejected because it contains a virus
๐ฅ Critical: 554 often indicates blacklist atau severe reputation issue.
โ
Action: Check blacklist immediately (Spamhaus, Barracuda, SURBL). Pause sending, investigate, request delist.
๐ข Provider-Specific Bounce Codes
Gmail/Google Workspace
550 5.7.26 This message does not have authentication information or fails to pass authentication checks (SPF/DKIM/DMARC)
550 5.7.1 The user or domain that you are sending to (or from) has a policy that prohibited the mail that you sent
550 5.7.26 Unauthenticated email from domain.com is not accepted due to domain's DMARC policy
421 4.7.0 Too many login attempts, try again later
450 4.2.1 The user you are trying to contact is receiving mail at a rate that prevents additional messages
โ
Gmail Tips: Google Postmaster Tools wajib dipantau. Authentication failure = fix DNS immediately. Rate limiting = slow down warming.
Outlook/Microsoft 365
550 5.7.1 Access denied, your IP is in the block list
550 5.7.1 Message rejected as spam by Content Filtering
550 5.7.26 Your message has been rejected because it contains a virus or banned attachment
421 4.7.0 [TSS04] Messages from IP temporarily deferred due to user complaints
โ
Outlook Tips: Microsoft SNDS (Smart Network Data Services) untuk monitoring. Junk Email Reporting Program untuk feedback loop.
Yahoo/AOL
421 4.7.0 [TSS04] Messages from IP temporarily deferred due to user complaints
550 5.7.9 Message not accepted for policy reasons
550 5.7.1 [BL23] Message rejected due to spam classification
553 5.7.2 [TSS09] All messages from IP permanently deferred
โ
Yahoo Tips: Complaint Feedback Loop (CFL) wajib didaftarkan. Spam rate >0.3% = throttling agresif.
๐ ๏ธ Sistem Handling Bounce yang Efektif
Real-Time Bounce Processing
POST /webhook/bounce HTTP/1.1
Content-Type: application/json
{
"event": "bounce",
"email": "
[email protected]",
"status": "5.1.1",
"reason": "The email account does not exist",
"type": "permanent",
"provider": "gmail",
"campaign_id": "camp_12345",
"timestamp": "2026-03-15T14:30:00Z",
"ip": "192.168.1.100",
"domain": "smtpku.com"
}
// Processing logic
if (event.type === 'permanent') {
await suppressEmail(event.email);
await incrementHardBounce(event.campaign_id);
// Alert if rate >1%
if (getBounceRate(event.campaign_id) > 0.01) {
await sendAlert('High bounce rate detected');
}
} else if (event.type === 'transient') {
await scheduleRetry(event.email, exponentialBackoff(attempt));
}
Bounce Classification Logic
function classifyBounce(smtpCode, message) {
const code = smtpCode.substring(0, 3);
const subcode = smtpCode.substring(4); // Y.Y.Z
// Permanent failures
if (code === '5') {
if (subcode.startsWith('1.1') || subcode.startsWith('1.10')) {
return { type: 'suppress', reason: 'invalid_address' };
}
if (subcode.startsWith('7.26')) {
return { type: 'alert', reason: 'authentication_failure' };
}
if (subcode.startsWith('7.1') || subcode.startsWith('7.5')) {
return { type: 'alert', reason: 'reputation_issue' };
}
return { type: 'suppress', reason: 'general_permanent' };
}
// Temporary failures
if (code === '4') {
if (subcode.startsWith('2.2')) {
return { type: 'retry', reason: 'mailbox_full', delay: '24h' };
}
if (subcode.startsWith('7.0') || subcode.startsWith('4.7')) {
return { type: 'retry', reason: 'rate_limit', delay: '4h' };
}
return { type: 'retry', reason: 'general_temporary', delay: '1h' };
}
return { type: 'unknown', reason: 'unclassified' };
}
๐ Dashboard Monitoring Bounce
๐ Metrics yang Wajib Dipantau
- โ Hard bounce rate by campaign (target <0.5%)
- โ Soft bounce rate by provider (identify problematic ISP)
- โ Bounce reason distribution (authentication vs invalid vs content)
- โ Retry success rate (berapa % soft bounce yang berhasil di retry)
- โ Time-to-bounce (delayed bounces vs immediate)
- โ List quality trend (bounce rate meningkat atau menurun)
๐ง Troubleshooting Common Bounce Issues
Issue: Authentication Failures (5.7.26)
1
Diagnosis Steps
- Check SPF record:
dig TXT yourdomain.com | grep "v=spf1"
- Verify DKIM:
dig TXT default._domainkey.yourdomain.com
- Test DMARC:
dig TXT _dmarc.yourdomain.com
- Validate alignment: From domain = DKIM domain = SPF domain
โ
Quick Fix: Gunakan SMTPku setup wizard โ otomatis configure SPF, DKIM, DMARC dengan alignment yang benar.
Issue: Sudden Spike in Bounce Rate
2
Possible Causes
- List baru dengan data kotor (purchased list, old database)
- Domain expiration atau DNS propagation issue
- IP blacklist (check MXToolbox)
- Content filter trigger (new template dengan spam keywords)
- Provider policy change (Google/Yahoo new rules)
โ
Action Plan: Pause campaign โ identify affected segment โ check blacklist โ audit recent changes โ resume dengan smaller test batch.
Issue: Delayed Bounces (D-SNAR)
3
Non-Delivery Reports (NDR)
Bounce yang datang 1-7 hari setelah send, bukan immediate. Biasanya dari corporate mail server dengan complex routing.
โ
Handling: Parse D-SNAR message untuk extract original recipient. Update bounce status retroaktif. Jangan kirim lagi ke address yang delayed-bounce.
๐ก๏ธ Prevention: Jangan Sampai Bounce
๐ Pre-Send Checklist Anti-Bounce
- โ Email validation: Syntax + domain + MX record check
- โ Role email removal: info@, admin@, support@
- โ Duplicate elimination: One email per recipient
- โ Spam trap detection: Third-party validation service
- โ Authentication check: SPF/DKIM/DMARC valid
- โ IP reputation: Check blacklist sebelum send besar
- โ Content check: Spam score <5 (Mail-Tester)
๐ฉบ Bounce Diagnosis Gratis
Kirim sample bounce message Anda (copy-paste SMTP response). Kami analisis: root cause, severity, dan action plan spesifik.
Diagnosa Bounce Saya โ
โ FAQ: Email Bounce
Berapa kali retry untuk soft bounce?
โผ
Maximum 5 attempts dengan exponential backoff: 1 jam, 4 jam, 24 jam, 48 jam, 72 jam. Setelah 5x, treat as hard bounce.
Apakah bounce rate mempengaruhi sender reputation?
โผ
Sangat signifikan. Hard bounce rate adalah signal kualitas list utama. Google dan Yahoo track ini agresif. Bounce rate tinggi = throttling atau blacklist.
Bedanya bounce dan complaint?
โผ
Bounce = technical failure (email tidak sampai). Complaint = recipient mark as spam (email sampai tapi tidak diinginkan). Keduanya merusak reputation, tapi complaint lebih berbahaya.
Bisa recover email yang hard bounce?
โผ
Tidak untuk email yang sama. Tapi jika typo (budigmail.com vs
[email protected]), bisa fix dan retry. Gunakan "did you mean" validation di signup untuk prevent typo.
Mengapa bounce rate tinggi di provider Indonesia (Telkom, Indihome)?
โผ
Corporate firewall dan strict filtering. Banyak enterprise Indonesia pakai aggressive spam filter. Solusi: dedicated IP dengan good reputation, whitelist request ke IT department, atau gunakan transactional route.