This recipe verifies email addresses through bulk validation APIs, classifying each as valid, invalid, risky, or unknown. The output is a cleaned list with only deliverable emails, protecting sender reputation and keeping bounce rates below the 2% threshold enforced by Google and Yahoo.
| Path | Tool | Cost/1K | Accuracy | Best For |
|---|---|---|---|---|
| A: ZB Free | ZeroBounce | $0 | 99.6% | < 100 emails |
| B: NB Free | NeverBounce | $0 | 97% | < 1,000 emails |
| C: Budget | MillionVerifier | $2.49 | 95% | Large lists, cost |
| D: Accuracy | ZeroBounce | $16 | 99.6% | High-value outreach |
| E: Guarantee | NeverBounce | $8 | 97% | Cold campaigns |
Duration: 5 min | Tool: Python
Extract unique emails, remove obviously invalid formats (saves API credits), count total to verify.
Duration: 5-20 min | Tool: ZeroBounce or NeverBounce API
Submit each email for validation. ZeroBounce returns status (valid/invalid/catch-all/unknown/spamtrap), sub-status, and domain metadata. NeverBounce processes bulk jobs asynchronously for large lists. [src2] [src5]
Duration: 5-10 min | Tool: Python
Map statuses to actions: valid = "send", catch-all/unknown = "risky", invalid/spamtrap/abuse = "remove". Target > 70% "send" rate.
Duration: 5 min
Merge verification results back to lead list. Split into safe, risky, and removed subsets.
Duration: 5 min
Export clean CSV (safe only), risky CSV (optional cautious sending), and JSON verification report with deliverability score and cost summary.
CSV: email, email_status, action, first_name, last_name, company, score. Expected 70-90% of input rows. Sorted by score descending, deduplicated on email.
| Metric | Minimum | Good | Excellent |
|---|---|---|---|
| Valid email rate | > 65% | > 75% | > 85% |
| Hard bounce (post) | < 2% | < 1% | < 0.5% |
| Catch-all rate | < 25% | < 15% | < 8% |
| Spam trap detect | 0% | 0% | 0% |
| Re-verify cadence | 90 days | 60 days | 30 days |
| Error | Cause | Recovery |
|---|---|---|
| 429 Rate Limited | Too many requests | Reduce to 10 req/sec, use bulk |
| 401 Unauthorized | Invalid key | Regenerate at provider dashboard |
| High invalid (>40%) | Poor source quality | Re-enrich with different provider |
| High unknown (>20%) | Domains blocking SMTP | Try different verification provider |
| Credits exhausted | Insufficient plan | Top up or split batch |
| Component | Free Tier | Paid Tier | At Scale |
|---|---|---|---|
| ZeroBounce | 100/mo | $16/1K | $10/1K (10K+) |
| NeverBounce | 1K on signup | $8/1K | $4/1K (100K+) |
| MillionVerifier | 200 credits | $2.49/1K | $1.99/1K |
| 500 emails | $0 | $4-$8 | $1-$5 |
| 5,000 emails | N/A | $12.50-$80 | $10-$50 |
15%+ bounce rate gets your domain blacklisted. Recovery takes weeks to months. [src1]
Run every email through verification. Remove invalid and spam traps. [src1]
Emails decay 2-3% per month. A 6-month-old list can have 15%+ invalid. [src3]
Set reminders for re-verification. Active campaign lists monthly. [src3]
Use as the final step before loading emails into any outreach tool. Non-negotiable for cold outreach. The $4-16 per 1,000 emails is trivial compared to domain blacklisting costs.