Bounce Rate Audit: Find the Causes Before You Send
Run a bounce rate audit to identify bad addresses, risky sources, catch-all domains, and process gaps before they hurt deliverability.

A bounce rate audit turns bounce troubleshooting into a repeatable process. You stop guessing whether the issue is list source, validation, sending infrastructure, or campaign process, and you isolate the control that failed before you send again.
What Is a Bounce Rate Audit?
A bounce rate audit is a structured review of bounce sources, bounce types, and prevention controls.
It answers four practical questions:
- Which addresses bounced?
- Why did they bounce?
- Where did those addresses come from?
- Which process should have caught the problem earlier?
That last question matters most. Measuring bounce rate tells you what happened. An audit tells you what to fix.
Run an email bounce rate audit when:
- You are about to send to a large or dormant list.
- A campaign shows an unusual bounce spike.
- You import contacts from a vendor, event, partner, CRM, or spreadsheet.
- You move to a new ESP or sending platform.
- You change signup flows, enrichment tools, or CRM sync rules.
- You see reputation problems at one or more mailbox providers.
A normal bounce rate report may show “3.4% bounced.” That is not enough. A healthy audit breaks that number apart by bounce class, source, domain, campaign, and operational path.
You want to know whether the root cause is:
| Symptom | Likely area to audit |
|---|---|
| Many invalid recipients | List quality, imports, old data |
| Many temporary deferrals | Sending rate, throttling, provider policy |
| Bounces at one mailbox provider | Authentication, reputation, content, provider-specific policy |
| Bounces from one acquisition source | Form validation, lead vendor, event scan quality |
| Previously bounced contacts return | Suppression and sync rules |
Do not start by changing copy, domains, or ESPs. First prove whether the bounces came from bad addresses, temporary delivery issues, or a broken process.
Step 1: Separate Hard Bounces From Soft Bounces
Hard bounces usually point to invalid or undeliverable addresses, while soft bounces point to temporary or policy-related delivery failures.
This split drives the rest of the audit.
Hard bounces
Hard bounces often mean the address should not receive mail again. Common causes include:
- The mailbox does not exist.
- The domain does not accept mail.
- The address has a syntax issue.
- The recipient server rejects the user as invalid.
- The address was abandoned or mistyped.
Hard bounce prevention starts before sending. You need cleaner collection, better imports, and email verification where risk enters your system.
Soft bounces
Soft bounces are less final. They can come from:
- Full mailboxes.
- Temporary recipient server issues.
- Greylisting.
- Throttling.
- Message size limits.
- Temporary policy blocks.
- Reputation-related deferrals.
- Mailbox provider rate limits.
Soft bounce analysis matters because the fix may have nothing to do with address validity. If Gmail, Outlook, or Yahoo temporarily throttles you, deleting a chunk of your list will not solve the underlying delivery problem.
Why “total bounces” misleads you
If you lump all bounces together, you pick the wrong fix.
For example:
- A high hard bounce rate after a trade show import points to source quality.
- A high soft bounce rate at one provider points to reputation, authentication, or rate control.
- A mix of invalid users and role accounts from one form points to collection rules.
- Repeated bounces from contacts that were already suppressed points to sync logic.
What to export
Pull more than a summary chart. Export the raw data from your ESP or sending platform.
At minimum, capture:
- Campaign ID or send name.
- Recipient email address.
- Bounce type: hard, soft, blocked, deferred, unknown.
- SMTP response code and message.
- Timestamp.
- Mailbox provider or recipient domain.
- Contact source.
- Import batch or list name.
- Signup form ID or landing page.
- CRM/contact owner, if relevant.
- Suppression status after bounce.
A useful bounce log looks like this:
{
"email": "alex@example.com",
"campaign": "q1-product-update",
"source": "event-import-2024",
"bounce_type": "hard",
"smtp_code": "550",
"reason": "mailbox unavailable",
"recipient_domain": "example.com",
"bounced_at": "2026-02-18T14:22:10Z"
}
You do not need perfect data to start. You need enough data to group bounces by cause.
Step 2: Trace Bounces Back to Acquisition Sources
Bounces become actionable when you connect them to where the addresses entered your database.
Segment bounce rates by source before you blame the campaign.
Compare:
- Website signup forms.
- Product registration forms.
- Trial signup flows.
- Newsletter forms.
- Webinar registrations.
- Lead vendors.
- Event badge scans.
- Partner imports.
- Sales manual uploads.
- CRM enrichment tools.
- Old lists reactivated for a new campaign.
A source-level list quality audit often shows one or two sources creating most of the risk.
What to look for in forms
Review any form tied to a high-bounce source.
Check whether it has:
- Basic syntax validation.
- Typo suggestions, such as
gmial.comtogmail.com. - Disposable email domain blocking or flagging.
- Double opt-in, when appropriate.
- Confirmation steps for high-value workflows.
- Bot protection.
- Required business email rules, if that fits your motion.
- Clear consent language.
Do not rely on front-end validation alone. Users can bypass it. Systems can inject bad records. Server-side validation gives you a stronger control point.
What to look for in imports
Imported data deserves extra scrutiny.
Flag sources with high rates of:
- Disposable or burner domains.
- Role accounts like
info@,support@,admin@, orsales@. - Suspicious domains.
- Free mailbox providers, if your campaign targets business contacts.
- Recycled contacts from old lists.
- Missing acquisition date.
- Missing consent or source metadata.
- Many addresses from the same domain pattern.
Role accounts are not always bad. A support inbox may be valid. But role accounts often represent teams, ticketing systems, or shared inboxes. They can behave differently from personal work addresses and may complain more often if context is weak.
Turn findings into rules
A bounce rate audit should create source-level changes.
For example:
| Finding | Process change |
|---|---|
| Event list has many invalid addresses | Verify event imports before nurture sends |
| Signup form has many typos | Add typo correction and confirmation |
| Vendor list has high hard bounces | Pause vendor, require proof of source quality |
| Manual uploads reintroduce bad contacts | Block import of suppressed addresses |
| Disposable domains appear in trials | Flag or restrict burner domains at signup |
Fix the intake path. Otherwise the same problem returns next month.
Step 3: Check Address Quality Before the Next Send
Verify questionable addresses before you resend, reactivate, or expand to a risky segment.
This step is where hard bounce prevention becomes concrete.
Start with segments that carry the most risk:
- Contacts from the source that caused the spike.
- Imported lists.
- Unengaged contacts.
- Old subscribers.
- Addresses that soft bounced repeatedly.
- Contacts with no recent open, click, reply, or product activity.
- Addresses at domains with unclear acceptance behavior.
Email verification usually returns a verdict such as:
- Deliverable: Safe enough to send under normal rules.
- Risky: Mailbox may exist, but the address has risk factors.
- Undeliverable: Do not send.
- Unknown: The verifier could not determine status confidently.
Use those results to decide actions before the next campaign.
| Verification result | Recommended action |
|---|---|
| Deliverable | Keep eligible, subject to consent and engagement rules |
| Risky | Send only if source and engagement justify the risk |
| Undeliverable | Suppress before sending |
| Unknown | Treat carefully; test small or require stronger engagement |
| Disposable | Block or segment based on use case |
| Role account | Segment or suppress for personal outreach |
| Typo suggestion | Correct when confidence is high or ask user to confirm |
Be careful with catch-all domains
A catch-all email domain accepts mail for many or all local parts before deciding what to do later. That means random-string@domain.com may appear accepted during an SMTP check even if no real person uses it.
Do not assume catch-all equals safe.
For catch-all domains:
- Check engagement history.
- Review acquisition source.
- Look at domain-level bounce patterns.
- Avoid large first sends to unengaged catch-all addresses.
- Use smaller test sends when the segment matters.
Some catch-all mailboxes are perfectly fine. Others hide invalid users until after acceptance, or route messages into filters. Treat them as a risk signal, not a verdict by itself.
Correct typos before suppression
Do not suppress obvious typos without review.
Examples:
gmial.com→gmail.comhotnail.com→hotmail.comyaho.com→yahoo.comoutlok.com→outlook.com
If the address came from a form and the typo is clear, correct it before the next lifecycle message or ask the user to confirm. If the address came from a third-party list, be more conservative. You may not have permission to mail the corrected address.
Step 4: Review Suppression and Re-Import Rules
Hard bounces must stay suppressed across every tool that can send or sync contacts.
A bounce rate audit often finds that suppression works in the ESP but fails somewhere upstream.
Check these paths:
- CSV imports.
- CRM-to-ESP syncs.
- ESP-to-CRM syncs.
- Sales engagement tools.
- Data enrichment platforms.
- Reverse ETL jobs.
- Product notification systems.
- Marketing automation workflows.
- Customer support tools that send email.
- Manual contact creation by sales or success teams.
Confirm automatic suppression
Hard bounces should suppress automatically in the sending platform. Verify:
- The contact is marked as bounced.
- Future campaigns exclude the address.
- Automation workflows stop sending.
- Suppression applies globally when needed, not only to one list.
- Transactional and marketing systems handle suppression according to your policy.
Some organizations separate transactional and marketing suppression. That can be valid. For example, you may still need to send password resets to a user who unsubscribed from marketing. But hard-bounced invalid addresses should not keep receiving any class of mail until corrected.
Prevent re-entry
A bad address can re-enter through an import, CRM sync, or enrichment update.
Audit what happens when:
- A CSV contains a previously hard-bounced email.
- A salesperson edits a suppressed contact.
- An enrichment tool overwrites an email field.
- A CRM merge changes the primary address.
- A product account uses a new email that matches a suppressed record.
- A partner import contains unsubscribed or complained contacts.
Your suppression rules should win over convenience.
Include unsubscribes and complaints
This audit focuses on bounces, but you should inspect unsubscribe and complaint handling at the same time.
Confirm that:
- Unsubscribed contacts do not re-enter marketing sends.
- Complaint contacts are globally suppressed from promotional mail.
- Suppression reasons remain visible.
- Compliance fields sync correctly.
- Teams know which system owns consent status.
Document ownership. If everyone assumes another tool owns suppression logic, no one owns it.
Step 5: Look for Infrastructure and Policy Issues
Not every bounce problem comes from bad addresses.
Infrastructure and policy issues show up when bounces cluster by mailbox provider, authentication status, or SMTP response pattern.
Review authentication
Check SPF, DKIM, and DMARC for every sending domain.
You want to confirm:
- SPF includes the systems that send on your behalf.
- SPF is not broken by too many DNS lookups.
- DKIM signs messages consistently.
- DKIM alignment matches your visible From domain.
- DMARC exists and aligns with your sending setup.
- Subdomains used by ESPs are configured correctly.
- New ESP migrations did not leave old records or missing keys.
Authentication failures can create bounces, blocks, or spam placement problems. They are not list-quality problems, even if they appear in the same campaign report.
Check provider concentration
Group soft bounces and blocks by recipient domain.
Look for concentrations at:
- Gmail / Google Workspace.
- Outlook / Microsoft 365.
- Yahoo / AOL.
- Apple/iCloud.
- Comcast, Cox, Charter, and other ISPs.
- Corporate domains using common gateways.
If one provider drives most soft bounces, inspect provider-specific signals:
- Deferral messages.
- Rate limits.
- Complaint history.
- Engagement at that provider.
- Recent volume changes.
- Authentication alignment.
- Link and content reputation.
- Shared IP or dedicated IP behavior.
Identify throttling patterns
Throttling often appears as temporary rejection, deferral, or “try again later” language.
You may see patterns like:
- Many 4xx responses.
- Bounces early in a large campaign.
- Delivery improves after retry windows.
- One provider slows while others accept normally.
- New IPs or domains trigger cautious acceptance.
Do not treat throttling as proof that addresses are invalid. Adjust send rate, warm-up, segmentation, and engagement targeting before you purge valid contacts.
Separate authentication failures from bad-address problems
Use the SMTP text and provider grouping to separate causes.
| Pattern | Likely cause | First fix |
|---|---|---|
user unknown across many domains | Bad addresses | Verify and suppress invalids |
| Temporary deferrals at one provider | Throttling or reputation | Slow sending and segment engaged users |
| Authentication-related rejection | SPF/DKIM/DMARC issue | Fix DNS and alignment |
| Policy block at corporate gateways | Content, reputation, or security filtering | Review content, links, and sender reputation |
| Hard bounces from one import batch | Source quality | Audit import and vendor |
A sender reputation audit belongs here. Review bounce rate alongside complaints, spam trap risk, engagement, authentication, volume changes, and blocklist signals. Bounce rate is one symptom of reputation health, not the whole picture.
Bounce Rate Audit Checklist
Use this bounce rate audit checklist before your next large send or after any bounce spike.
1. Export bounce logs
Include:
- Campaign.
- Recipient.
- Bounce type.
- SMTP code and text.
- Timestamp.
- Recipient domain.
- Contact source.
- Import batch.
- Current suppression status.
2. Classify hard vs soft bounce reasons
Group bounces into:
- Invalid mailbox.
- Invalid domain.
- Full mailbox.
- Temporary server issue.
- Throttling.
- Authentication failure.
- Policy block.
- Unknown or unclear response.
3. Compare by source
Calculate bounce rate by:
- Signup form.
- Lead vendor.
- Event list.
- Partner import.
- Manual upload.
- CRM enrichment source.
- Reactivated old segment.
Pause or quarantine sources that produce unusual hard bounce rates.
4. Verify remaining risky segments
Before sending again, verify:
- Imported contacts.
- Old or unengaged contacts.
- Addresses from high-bounce sources.
- Repeated soft bouncers.
- Catch-all domains.
- Contacts with typo-prone domains.
Suppress undeliverable results. Review risky and unknown results before including them.
5. Inspect forms and imports
Check whether acquisition paths include:
- Syntax validation.
- Server-side email verification.
- Disposable domain detection.
- Typo suggestions.
- Source tracking.
- Consent capture.
- Bot protection.
- Import deduplication.
6. Review suppression rules
Confirm that:
- Hard bounces suppress automatically.
- Suppression applies across lists and workflows.
- CSV imports cannot revive bad addresses.
- CRM syncs preserve suppression.
- Enrichment tools cannot overwrite suppression.
- Unsubscribes and complaints stay blocked from marketing sends.
7. Review infrastructure
Check:
- SPF.
- DKIM.
- DMARC.
- Sending domain alignment.
- Provider-specific bounce patterns.
- Recent volume changes.
- Retry and throttling behavior.
- Shared or dedicated IP reputation signals.
8. Document fixes and monitor the next send
Write down:
- Root cause.
- Affected source or system.
- Owner.
- Fix.
- Date implemented.
- Segment to monitor.
- Threshold for escalation.
Then monitor the next campaign by source, provider, and bounce class. Do not rely only on the total bounce rate.
How Bounceable Supports a Bounce Rate Audit
Bounceable helps you check questionable addresses before you send another campaign.
During a bounce rate audit, you can use it to verify imported, inactive, or high-risk segments and return a clear deliverability verdict. That lets you decide which contacts to keep, suppress, review, or test in smaller sends.
It supports audit work by checking for:
- Deliverability before you send.
- Disposable and burner domains from a constantly updated domain list.
- Catch-all email domain behavior.
- Mailbox signals using SMTP probing.
- Role accounts such as
info@orsupport@. - Free provider detection.
- Typo suggestions for common domain mistakes.
- Risk scoring with verdicts such as deliverable, risky, undeliverable, and unknown.
You can fit verification into forms, imports, CRM workflows, or pre-campaign checks through the API or integrations like Zapier, Pipedream, and Apify.
A practical flow looks like this:
{
"email": "sam@gmial.com",
"verdict": "risky",
"risk_score": 72,
"is_disposable": false,
"is_role_account": false,
"is_catch_all": false,
"suggestion": "sam@gmail.com"
}
Use that result to avoid preventable bounces and improve your intake process. The goal is not to make every list perfect. The goal is to catch the obvious failures before they hit your sender reputation.


