Email Address Validator — ZeroBounce Alternative avatar

Email Address Validator — ZeroBounce Alternative

Pricing

from $0.90 / 1,000 email validateds

Go to Apify Store
Email Address Validator — ZeroBounce Alternative

Email Address Validator — ZeroBounce Alternative

Validate email addresses with syntax, MX, disposable-domain, role-account, typo, and optional SMTP signals. Export per-address results and scores for list hygiene, with the selected verification tier and limits made explicit.

Pricing

from $0.90 / 1,000 email validateds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

7 days ago

Last modified

Categories

Share

Validate email addresses with syntax, MX, disposable-domain, role-account, typo, and optional SMTP signals. Export per-address results and scores for list hygiene, with the selected verification tier and limits made explicit. For list-hygiene teams, each dataset row represents one normalized email address with its selected verification signals.

Workflow: put the results to work

Submit complete addresses and choose the verification tier appropriate to your list. Review syntax and DNS findings separately from optional SMTP signals, then route uncertain results for further checks. A successful syntax or MX check alone does not establish mailbox deliverability.

Best fit and connected workflows

This Actor fits workflows that start with full email addresses and need a per-address validation result before sending, importing, or routing records. It is a focused standalone workflow: use the structured rows for a current list-hygiene decision, then pass the accepted records into the approved outreach or CRM process.

Common routing patterns include:

  • cold outreach list cleanup, where each address is scored and labeled before it reaches an email platform
  • signup or CRM hygiene, where role addresses, disposable addresses, and typo suggestions guide the next action
  • lead-enrichment pipelines, where another Actor gathers contacts and this Actor validates the resulting addresses
  • AI-agent workflows through Apify MCP, where a tool call returns one record per email for programmatic decisions
  • instant lookup workflows through the Apify Standby HTTP API, where a request can validate addresses with low-friction API access

How this workflow compares with ZeroBounce

This is a workflow-level alternative for validating a supplied list of complete email addresses. It covers the deterministic list-hygiene step and returns machine-readable rows; ZeroBounce remains a stronger fit when a workflow needs its broader activity, suppression, scoring, file-management, deliverability, or native-integration suite.

DecisionThis ActorZeroBounceBest fit
ScopeSyntax, DNS MX, list-classification, typo, optional SMTP, and a score per input addressA broader email-validation and deliverability productUse this Actor for the focused validation step; choose ZeroBounce when the surrounding suite is part of the requirement.
BillingPay per event plus Apify platform usage for the processed workflowCredit- and subscription-based validation optionsCompare the current prices against the same list size and required fields.
InputA JSON array of full email addresses; no provider key is collectedIts batch API uses an API key and batch payloadUse this Actor for a bounded API/MCP run; use ZeroBounce when its authenticated service is already the chosen system.
Effective efficiencyOne schema-complete dataset row is persisted for each accepted address, and normalized duplicates are removed before billingBatch and file paths support its broader validation workflowCompare elapsed time, usable rows, required fields, and operator steps for the same batch.
OutputDataset rows expose status, score, primaryReason, MX, classification flags, and validatedAtIts API documents additional proprietary status and activity-oriented fieldsChoose the output contract that contains the fields needed by the next workflow step.
AutomationRun through Apify API, scheduled tasks, or MCP workflow toolingAPI and native platform integrationsChoose the automation path already connected to the buyer's stack.

ZeroBounce is a trademark of its owner. This independent Actor is not affiliated, associated, or endorsed by ZeroBounce.

Input

Submit full email addresses as an array. Each item is normalized to lowercase before validation.

Input fields

FieldTypeRequiredDefaultDescription
emailsarray of stringYes-One to 1,000 full email addresses. Pass a single address as a one-item array. Normalized duplicates are removed without a charge.
verificationTierstringNostandardstandard uses the native pipeline. premium adds an owner-managed EmailListVerify result when the Premium email verified event is active. No BYOK is required.
maxEmailsintegerNo1000Per-run processing cap from 1-1000. Addresses beyond the cap are skipped and not charged.
checkSmtpbooleanNofalseRun a live SMTP RCPT TO probe. When enabled, the Actor attempts mailbox verification in addition to syntax, MX, and classification checks.
checkCatchAllbooleanNofalseDetect catch-all domains when checkSmtp is enabled.
concurrencyintegerNo10Concurrent validations. Range: 1-50. Recommended input guidance: 5-15 for most lists.
timeoutMsintegerNo8000SMTP timeout in milliseconds. Range: 1000-30000.

Valid focused JSON example

{
"emails": [
"jane@example.com",
"info@acme.io",
"fake@thisdomaindoesnotexist123.io"
],
"checkSmtp": false,
"checkCatchAll": false,
"verificationTier": "standard",
"maxEmails": 1000,
"concurrency": 10,
"timeoutMs": 8000
}

Output

Each dataset row represents one validated email address.

Output fields

FieldTypeDescription
emailstringOriginal email address supplied in input.
normalizedEmailstring or nullTrimmed, lowercased address. Null when syntax is invalid.
statusstringVerdict bucket: valid, invalid, risky, or unknown.
scoreintegerDeliverability score from 0 to 100.
primaryReasonstringMost important reason for the verdict.
reasonsarray of stringReason codes in pipeline order.
isValidSyntaxbooleanRFC 5322 structure and length check result.
hasMxRecordbooleanIndicates whether the domain resolves to MX records.
smtpCheckstringaccepted, rejected, unknown, or skipped.
smtpCodeinteger or nullFinal SMTP response code, when present.
smtpResponsestring or nullRaw SMTP response line, when present.
isFreeProviderbooleanMarks public free email providers.
isRoleBasedbooleanMarks role addresses such as info@ or sales@.
isDisposablebooleanMarks disposable email domains.
isCatchAllboolean or nullIndicates catch-all domains when checked.
suggestedEmailstring or nullTypo suggestion, when available.
domainstring or nullLowercased domain part after @.
localPartstring or nullLowercased local part before @.
mxRecordsarrayResolved MX records sorted by priority.
verificationTierstringRequested standard or premium tier.
verificationSourcestringnative for standard validation or emaillistverify when a provider verdict was used.
providerStatusstring or nullProvider response for a premium record; null on standard records.
providerCheckedAtstring or nullProvider response timestamp for a premium record; null on standard records.
providerCreditChargedboolean or nullWhether the provider documents that returned premium status as credit-consuming; null on standard records.
validatedAtstringISO 8601 timestamp.

Illustrative JSON record

{
"email": "jane@gmial.com",
"normalizedEmail": "jane@gmial.com",
"status": "invalid",
"score": 5,
"primaryReason": "mx_not_found",
"reasons": [
"syntax_valid",
"typo_suggestion",
"mx_not_found"
],
"isValidSyntax": true,
"hasMxRecord": false,
"smtpCheck": "skipped",
"smtpCode": null,
"smtpResponse": null,
"isFreeProvider": false,
"isRoleBased": false,
"isDisposable": false,
"isCatchAll": null,
"suggestedEmail": "jane@gmail.com",
"domain": "gmial.com",
"localPart": "jane",
"mxRecords": [],
"validatedAt": "2026-05-03T20:00:00.000Z"
}

How it works

The Actor follows the validation pipeline defined in the supplied contract:

  1. It checks RFC 5322 syntax and length.
  2. It parses the local part and domain.
  3. It resolves DNS MX records.
  4. It classifies the address using disposable, role-based, free-provider, and typo-suggestion signals.
  5. It can optionally run SMTP RCPT TO verification and catch-all detection.
  6. It writes one dataset record per email with verdict, score, and supporting signals.

The overview dataset view presents each row as one validated address with the key signals surfaced for review.

Interactive API endpoints

This Standby-enabled Actor also exposes an interactive API surface. Use the live Endpoints/Standby tab in the Apify Console for the current request format, response shape, and endpoint details.

Use with AI agents (MCP)

This Actor is an Apify Actor usable through Apify MCP. The exact Actor identity is khadinakbar/zerobounce-alternative.

Tool description: validate one or many email addresses and return one dataset record per input address, including syntax, MX, optional SMTP probe results, disposable and role tags, typo suggestions, catch-all status, and a 0-100 score.

Validate these email addresses with the Apify Actor khadinakbar/zerobounce-alternative. Return the dataset rows and summarize which addresses are valid, risky, invalid, or unknown. Use the returned score, MX data, disposable flag, role flag, typo suggestion, and premium provider provenance when selected to help me decide what to send next.

Output interpretation:

  • status groups the address into valid, invalid, risky, or unknown
  • score provides the 0-100 deliverability signal used in the dataset contract
  • primaryReason explains the main verdict driver
  • suggestedEmail can point to a likely typo correction
  • smtpCheck may be skipped when SMTP probing is off, and may be unknown when live probing is inconclusive

Provenance and scope:

  • each dataset item corresponds to one input email
  • the input email is preserved in email
  • the normalized form is returned in normalizedEmail
  • MX and SMTP fields reflect the validation pipeline exposed by the schema
  • if SMTP probing is enabled, the returned record includes the SMTP response fields supported by the dataset contract

Pagination and cost guidance:

  • read the default dataset items endpoint returned by the run output
  • if you validate a large list, fetch dataset items in batches as needed
  • each standard or provider-non-credit result maps to one charged Email validated event
  • a provider-credit-consuming premium result maps to the separately priced Premium email verified event once that event is active

Apify API example

JavaScript example with token and dataset readback:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({
token: process.env.APIFY_TOKEN,
});
const run = await client.actor('khadinakbar/zerobounce-alternative').call({
emails: ['jane@example.com', 'info@acme.io'],
checkSmtp: false,
checkCatchAll: false,
concurrency: 10,
timeoutMs: 8000,
});
const datasetItems = await client.dataset(run.defaultDatasetId).listItems();
console.log(datasetItems.items);

Best results and outcome guidance

Use full email addresses as input, not domains or CSV paths. Keep checkSmtp off for routine validation, and turn it on when you need the optional SMTP fields supported by the schema. Review score, status, primaryReason, and suggestedEmail together, since those fields form the clearest decision set in the dataset view. For larger lists, split inputs into runs of up to 1,000 addresses and use concurrency from 5 to 15 unless the receiving mail hosts have been assessed for higher rates. When you want a quick quality pass, the non-SMTP signals cover syntax, MX, disposable, role, free-provider, and typo checks.

Continue the workflow

  • Start upstream with Bulk Website Contact Extractor when the workflow needs to collect public contact details before this validation step.
  • Then pass accepted records downstream to LinkedIn Profile Email Scraper only when the next approved workflow needs a public-profile email lookup rather than another validation pass.

Design note

I designed the dataset around one decision-ready row per validated address: email, status, score, primaryReason, smtpCheck, and the classification flags are directly visible, while the full result remains available for API and CSV readback.

FAQ

What kind of input fits the workflow here?

A list of complete email addresses in the emails array fits the workflow, including single-address runs wrapped as a one-item array.

How does this Actor fit with lead-generation workflows?

It fits after any workflow that extracts or enriches email addresses, because it returns validation fields that help you route addresses before outreach or CRM import.

What does risky mean in the output?

risky is the verdict bucket for catch-all, role-based, or disposable addresses in the dataset contract.

Can I use this through Apify MCP?

Yes. This Actor is MCP-ready and designed to be called as khadinakbar/zerobounce-alternative.

Where do I check pricing details?

Use the live Pricing tab for current Pay per event pricing and Apify platform usage information.

Do I need my own EmailListVerify API key for premium verification?

No. Premium uses the Actor owner's encrypted provider credential. If the Premium email verified event is not active on the live Pricing tab yet, the Actor returns an availability result instead of making a provider request; normal Actor Start and platform usage can still apply.

Where do I find the instant lookup interface?

Use the live Endpoints/Standby tab for the Standby HTTP API surface and request details.

Responsible use

This Actor performs protocol-level email validation and returns deliverability signals for legitimate list hygiene, signup checks, CRM cleanup, and similar workflows. Use it in ways that respect applicable privacy, anti-spam, and data-protection rules for your use case and jurisdiction.

Pricing and run costs

This Actor uses Pay per event plus Apify platform usage. The Pricing tab lists the current event rates and billing terms.

EventBilling unitWhen it applies
apify-actor-startActor StartCharged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).
email-validatedEmail validatedCharged for each email address fully processed and pushed to the dataset using the native validation workflow.
email-premium-verifiedPremium email verifiedCharged for each provider-credit-consuming EmailListVerify verification completed and pushed to the dataset.

Run cost combines the charged events and Apify platform usage. Review the run charge limit and requested result count before starting.

Connect an AI agent

Use the Apify MCP configurator to choose an available client connection. Inspect this Actor’s current input schema and required credentials before running it.