Sending to invalid emails tanks your domain reputation. Here's how to verify a B2B list before pressing send — and how to spot catch-all traps.
Quick answer
To verify B2B email addresses before cold outreach in 2026: run a real-time SMTP check against each email, flag catch-all domains (which accept all mail but silently discard), check the domain's MX record, and filter out disposable email services. Aim for under 5% bounce rate on sends to protect your sending reputation. Scrupp's Free Email Verifier does all four checks and labels each address as valid, risky, invalid, or catch-all. Bulk verification of a 1,000-email list takes about 3-5 minutes.
Step by step
6 steps — about 10-15 minutes end-to-end.
Gather emails from all sources (Scrupp export, Apollo, manual research). Put them in a single column in a CSV.
First pass: check if the domain even has mail servers. Domains with no MX = dead. Most verifiers handle this automatically.
For each email, Scrupp connects to the target mail server and does a RCPT TO check. The server responds 250 (valid), 550 (invalid), or 452 (temporary fail).
A catch-all domain accepts all mail and returns 250 even for fake addresses. These emails look valid but may silently disappear. Label them separately as "risky".
Disposable: guerrillamail, yopmail, mailinator. Role-based: info@, sales@, contact@ (don't send cold there, you'll get marked as spam).
Only send to verified + non-risky + non-role emails. Target bounce rate: under 3%. Above 5% and your domain reputation starts to degrade.
Pro tips
Pre-warmup verification is critical. Before launching cold email campaigns from a new domain, verify the first 500 addresses — a high bounce rate on send 1 kills the domain forever.
Catch-all domains are the #1 hidden trap. Common at large enterprises. Emails look valid, test green, then vanish. Label them risky and send at half rate.
Re-verify every 90 days. 20-30% of B2B emails go stale in 3 months (job changes). Re-verify before re-contacting.
Different tools, different results — providers disagree on catch-all detection. Best practice: use a multi-provider verifier like Scrupp that aggregates results.
FAQ
Under 3% is ideal, 3-5% is tolerable, above 5% degrades your domain reputation and triggers Gmail/Outlook spam filters. Invalid-email bounces hit hardest.
Yes, but at reduced volume. Treat catch-all emails as "risky" — send 50% of normal volume, monitor reply rates, and remove if zero engagement after 2 touches.
90-95% on standard corporate domains. Catch-alls, greylisted servers, and blocking providers (some banks, government) can't be verified reliably — flag them.
Yes — Scrupp's Free Email Verifier does 10 checks/day per IP. For bulk, the paid tier is pay-as-you-go (a few cents per verification).
No. Verification confirms the email address exists and the mail server accepts it. Actual delivery also depends on your sender reputation (domain age, warm-up history), SPF/DKIM/DMARC configuration, email content, and recipient engagement history. Verification eliminates hard bounces; the rest is deliverability optimization.
Hard bounce = the email address doesn't exist (permanent failure, 550 SMTP code). Soft bounce = temporary failure (mailbox full, server down, rate limited). Hard bounces damage your reputation immediately; soft bounces are retried by your email tool. Verification catches hard bounces before you send.
Typical speed: 200-500 emails per minute depending on the verification provider and target mail server response times. A 1,000-email list takes 2-5 minutes. A 10,000-email list takes 20-50 minutes. Some providers offer async batch processing that runs in the background.
Verify before every campaign if the list is >30 days old. B2B email addresses go stale at 15-20% per year — a 90-day-old list will have 5% invalid addresses. For weekly campaigns to the same list, re-verify monthly.
Free Chrome extension. Pay only for successful enrichments. No credit card to start.