Email Validator & Verifier — MX, SMTP & Syntax avatar

Email Validator & Verifier — MX, SMTP & Syntax

Pricing

from $3.90 / 1,000 email validateds

Go to Apify Store
Email Validator & Verifier — MX, SMTP & Syntax

Email Validator & Verifier — MX, SMTP & Syntax

Validate email addresses in bulk with syntax, domain, MX, disposable-domain, role-account, and optional SMTP checks for list QA.

Pricing

from $3.90 / 1,000 email validateds

Rating

0.0

(0)

Developer

junipr

junipr

Maintained by Community

Actor stats

0

Bookmarked

18

Total users

5

Monthly active users

17 days ago

Last modified

Share

What does Email Validator do?

Email Validator performs layered checks that help assess email syntax and delivery signals. It checks format, verifies MX DNS records, can attempt an optional SMTP mailbox check, consults a maintained disposable-domain source, flags role-based addresses, identifies common free providers, and can test catch-all behavior. SMTP and external-list results can be inconclusive and are reported as null rather than guessed.

Each email receives a quality score from 0 to 100 and a human-readable reason explaining the result. The actor also suggests corrections for common domain typos (e.g., gmial.com to gmail.com). Use it to clean email lists before outreach campaigns, validate sign-up forms, or enrich contact data with deliverability intelligence.

Features

  • Format validation — RFC 5322 compliant email format checking
  • MX record verification — Confirms the domain has valid mail exchange DNS records
  • Optional SMTP mailbox signal — Attempts RCPT TO and reports null when the server or network is inconclusive
  • Disposable domain detection — Checks a maintained public domain source and reports null if that source is unavailable
  • Role-based address detection — Flags addresses like admin@, info@, support@, noreply@, sales@, webmaster@
  • Free provider detection — Identifies Gmail, Yahoo, Hotmail, Outlook, and other free email services
  • Catch-all detection — Optionally checks if the domain accepts all email addresses regardless of the local part
  • Typo suggestions — Detects common domain misspellings and suggests corrections (gmial.com, yaho.com, outloo.com)
  • Quality scoring — 0-100 score based on format, MX, SMTP, disposable status, role status, and provider type
  • Bounded batch processing — Validate up to 10,000 unique emails with an intentionally one-email default
  • Automatic deduplication — Duplicate emails are removed before processing

Input Configuration

{
"emails": ["john@company.com", "test@gmail.com", "fake@temp-mail.io"],
"maxEmails": 3,
"checkMx": true,
"checkSmtp": true,
"checkDisposable": true,
"checkRole": true,
"checkFreeProvider": true,
"checkCatchAll": false,
"smtpTimeout": 10000,
"maxConcurrency": 5
}
ParameterTypeDefaultDescription
emailsstring[]["test@gmail.com"]Email addresses to validate
maxEmailsinteger1Maximum unique non-empty emails to validate (1-10,000)
checkMxbooleantrueVerify domain has MX DNS records
checkSmtpbooleanfalseAttempt mailbox verification via SMTP RCPT TO
checkDisposablebooleantrueCheck a maintained disposable email domain source
checkRolebooleantrueDetect role-based addresses (admin@, info@, etc.)
checkFreeProviderbooleantrueDetect free email providers (Gmail, Yahoo, etc.)
checkCatchAllbooleanfalseDetect catch-all domains (slower, extra SMTP connection)
smtpTimeoutinteger10000SMTP connection timeout in milliseconds (3,000-30,000)
maxConcurrencyinteger1Maximum emails to validate simultaneously (1-20)

Output Format

Each validated email produces one result:

{
"email": "john@company.com",
"isValid": true,
"formatValid": true,
"mxValid": true,
"smtpValid": true,
"isDisposable": false,
"isRole": false,
"isFreeProvider": false,
"isCatchAll": null,
"mxRecords": [
{ "exchange": "mx1.company.com", "priority": 10 },
{ "exchange": "mx2.company.com", "priority": 20 }
],
"suggestion": null,
"score": 100,
"reason": "Valid email address",
"scrapedAt": "2026-03-11T12:00:00.000Z"
}

Example of an invalid email:

{
"email": "user@temp-mail.io",
"isValid": true,
"formatValid": true,
"mxValid": true,
"smtpValid": null,
"isDisposable": true,
"isRole": false,
"isFreeProvider": false,
"isCatchAll": null,
"mxRecords": [{ "exchange": "mx.temp-mail.io", "priority": 10 }],
"suggestion": null,
"score": 55,
"reason": "Valid email with warnings: disposable email domain",
"scrapedAt": "2026-03-11T12:00:00.000Z"
}

Usage Examples / Use Cases

  • Email list cleaning — Validate your mailing list before campaigns to remove invalid, disposable, and risky addresses and improve deliverability
  • Sign-up form validation — Integrate via API to verify email addresses in real time during user registration
  • Lead qualification — Score incoming leads by email quality, filtering out disposable addresses and prioritizing business domains over free providers
  • CRM data hygiene — Periodically validate contact emails in your CRM to flag outdated or invalid addresses
  • Fraud prevention — Block disposable and temporary email addresses from account creation to reduce fake sign-ups
  • Email deliverability auditing — Check MX records and SMTP responses for your own domain to diagnose sending issues

Ready-to-run public tasks

  • Check one contact email safely — format, MX, role, and provider checks without SMTP probing.
  • Check MX and disposable status — domain-level delivery and disposable-provider evidence.
  • Confirm an invalid domain — an honest negative result for a nonexistent mail domain.

Every task caps input at one address, disables SMTP, and uses concurrency one.

Pricing

This actor uses Pay-Per-Event (PPE) pricing: $3.90 per 1,000 emails validated ($0.0039 per email-validated event). Apify platform usage follows the live Store pricing entry.

FAQ

Why does SMTP verification sometimes return null?

SMTP verification connects to port 25 on the target mail server. Some hosting environments (including Apify's infrastructure) may restrict outbound port 25 connections. When this happens, SMTP verification returns null (inconclusive) rather than false. The email still receives partial credit in the quality score. MX record verification and all other checks still work normally.

What is the quality score based on?

The score (0-100) is calculated from six factors: valid format (30 points), MX records present (30 points), SMTP verification passed (20 points), not a disposable domain (10 points), not role-based (5 points), and business domain vs free provider (5 points). An email with valid format, working MX, confirmed SMTP, from a business domain scores 100.

How accurate is disposable email detection?

The actor checks a maintained public disposable-domain source. New providers appear constantly, and the source can be temporarily unavailable; in that case isDisposable is null rather than an invented false.

Can I validate thousands of emails in one run?

The actor deduplicates the input and processes up to 10,000 addresses, controlled by maxEmails. Increase limits deliberately and keep SMTP/catch-all disabled unless those slower, potentially inconclusive network checks are required.

What does the suggestion field do?

If the actor detects a likely typo in the domain part of the email (e.g., user@gmial.com instead of user@gmail.com), it returns a corrected suggestion in the suggestion field. This helps you fix common data entry errors rather than simply marking the email as invalid.