Email Validator & Verifier — MX, SMTP & Syntax
Pricing
from $3.90 / 1,000 email validateds
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
Maintained by CommunityActor stats
0
Bookmarked
18
Total users
5
Monthly active users
17 days ago
Last modified
Categories
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
nullwhen the server or network is inconclusive - Disposable domain detection — Checks a maintained public domain source and reports
nullif 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}
| Parameter | Type | Default | Description |
|---|---|---|---|
emails | string[] | ["test@gmail.com"] | Email addresses to validate |
maxEmails | integer | 1 | Maximum unique non-empty emails to validate (1-10,000) |
checkMx | boolean | true | Verify domain has MX DNS records |
checkSmtp | boolean | false | Attempt mailbox verification via SMTP RCPT TO |
checkDisposable | boolean | true | Check a maintained disposable email domain source |
checkRole | boolean | true | Detect role-based addresses (admin@, info@, etc.) |
checkFreeProvider | boolean | true | Detect free email providers (Gmail, Yahoo, etc.) |
checkCatchAll | boolean | false | Detect catch-all domains (slower, extra SMTP connection) |
smtpTimeout | integer | 10000 | SMTP connection timeout in milliseconds (3,000-30,000) |
maxConcurrency | integer | 1 | Maximum 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.
Related Actors
- Disposable Email Checker — Focused disposable domain detection if you only need that check
- Contact Info Scraper — Extract emails from websites, then validate them with this actor
- Domain WHOIS Lookup — Get WHOIS registration and DNS data for email domains
- Yellow Pages Scraper — Scrape business listings with contact emails to validate
- RAG Web Extractor — Extract structured content from websites for AI and data pipelines