Email Verifier - MX, SMTP, Disposable & Role Detection avatar

Email Verifier - MX, SMTP, Disposable & Role Detection

Pricing

$2.00 / 1,000 email verifieds

Go to Apify Store
Email Verifier - MX, SMTP, Disposable & Role Detection

Email Verifier - MX, SMTP, Disposable & Role Detection

Verify email deliverability at scale using MX record checks, SMTP probing, disposable email detection, and role-account filtering. Ideal for email list cleaning and lead validation. Powered by the Apify API.

Pricing

$2.00 / 1,000 email verifieds

Rating

0.0

(0)

Developer

Hasnain Nisar

Hasnain Nisar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Email Verifier - MX, SMTP, Disposable & Role Detection (Bulk)

Verify email deliverability at scale with full syntax, MX, SMTP, and provider checks. Detect disposable / temporary email providers, role-based addresses (info@, sales@, support@), and free-mail domains (gmail, yahoo, outlook). No third-party API needed.

What this Email Verifier does

For each email address, the actor runs a layered verification:

  1. Syntax check — RFC-style regex for the local@domain.tld shape
  2. Disposable detection — flagged against a curated list of 40+ temp-mail providers (10minutemail, mailinator, yopmail, etc.)
  3. Free-mail detection — flagged against gmail, yahoo, outlook, hotmail, iCloud, ProtonMail, etc.
  4. Role-account detection — flagged for info@, sales@, support@, admin@, etc.
  5. MX record lookup — DNS query for the domain's mail servers (with A-record fallback)
  6. SMTP RCPT-TO probe — connects to the MX server and asks "does this mailbox exist?" without sending mail

Each email gets a deliverable score (0–100) plus one of these verdicts:

  • deliverable — SMTP confirmed the mailbox exists
  • probable-deliverable — MX valid, SMTP inconclusive (many providers always answer 250 to thwart enumeration)
  • risky-role — role-based address (info@, support@) — valid but typically not a personal target
  • risky-disposable — temp-mail provider — never engage
  • undeliverable — SMTP returned a 5xx hard-bounce
  • invalid — syntax error or DNS failure

Why use this Email Verifier?

  • No paid API — no Hunter, NeverBounce, ZeroBounce, MailGun fees
  • Layered verification — most accurate of any free verifier
  • Bulk processing — verify 100 emails in a single run
  • Disposable + role detection — filter out junk before outreach
  • Deliverable scoring — sortable confidence score per email
  • Privacy-friendly — your list never leaves the actor; no third-party data sharing

Use cases

  • Sales outreach hygiene — remove bouncing emails before launching a campaign
  • Lead-list cleanup — qualify scraped contact lists before importing to your CRM
  • Newsletter validation — keep your sender reputation high
  • B2B prospecting — filter out free-mail and role-based addresses to focus on personal corporate emails
  • Form-submission protection — pre-validate submissions to block disposable signups
  • CRM enrichment — score existing contacts to identify dead emails

Input

{
"emails": [
"ceo@stripe.com",
"info@google.com",
"user@10minutemail.com",
"test@gmail.com",
"fake@nonexistent-domain-xyz.com"
],
"doSmtp": true,
"concurrency": 4
}
FieldTypeDefaultDescription
emailsarray of stringsrequiredUp to 100 email addresses per run
doSmtpbooleantrueEnable SMTP RCPT-TO probe (slower, more accurate)
concurrencyinteger4Parallel verifications (1–8)

Output

Each email gets one record:

{
"email": "ceo@stripe.com",
"valid_syntax": true,
"domain": "stripe.com",
"mx_records": ["aspmx.l.google.com", "alt1.aspmx.l.google.com"],
"mx_valid": true,
"smtp_check": null,
"smtp_response": "RCPT 250: 2.1.5 OK",
"is_role": false,
"is_free": false,
"is_disposable": false,
"deliverable_score": 95,
"verdict": "deliverable",
"error": null
}

The final dataset record is a _summary: true object containing aggregate stats:

{
"_summary": true,
"total": 5,
"stats": {
"deliverable": 1,
"probable_deliverable": 2,
"risky_role": 1,
"risky_disposable": 1,
"undeliverable": 0,
"invalid": 0
}
}

How it works

The actor runs each verification step sequentially with a concurrency limit, using dnspython for MX lookups and Python's stdlib smtplib for SMTP probes. The SMTP probe sends HELO, MAIL FROM, then RCPT TO and inspects the response code:

  • 250/251 → mailbox exists (deliverable)
  • 5xx → mailbox does not exist (undeliverable)
  • 4xx / network blocked / catch-all → inconclusive (smtp_check: null)

Many ISPs and cloud providers block outbound port 25, in which case SMTP probes are returned as inconclusive — the verdict still uses the MX result and the syntax / disposable / role flags.

Cost & speed

  • Without SMTP probe: ~50 emails / second
  • With SMTP probe: ~1 email / second per concurrency slot (capped at 8)

For a 100-email batch with SMTP enabled, total runtime is typically 15–30 seconds. Memory stays under 256 MB.

  • LinkedIn Profile Scraper — generate candidate emails for LinkedIn profiles, then run this actor for full SMTP verification
  • Facebook Page Scraper — extract emails from FB business pages, then verify them here
  • Reddit Scraper — find prospects on Reddit, then enrich and verify
  • Email Verifier (this actor) — the final hygiene step

FAQ

Q: Why is smtp_check sometimes null? SMTP probes are inconclusive when the provider blocks port 25, returns a temporary 4xx, or uses a "catch-all" mailbox that accepts any local part. The actor still scores these as probable-deliverable based on MX validity.

Q: Will this trigger spam filters? The probe never sends mail — it disconnects after RCPT TO. It is the same technique used by every commercial email verifier. Most providers tolerate it; some (notably Yahoo, Microsoft) deliberately answer 250 to all RCPTs to defeat enumeration.

Q: How accurate is the disposable / role list? ~40 disposable domains and 30 role-locals are bundled. The lists cover ~95% of real-world cases. For exhaustive coverage, post-process with a larger blocklist.

Q: Can I verify millions of emails? Run multiple jobs in parallel via the Apify API. Each run handles up to 100 emails to keep latency bounded.

Q: Is verifying emails legal? Email verification is generally compliant under GDPR, CCPA, and CAN-SPAM. The actor never sends mail. You should still ensure you have a legitimate purpose for processing the addresses.