Glasser Team8 min read
Free Email Verification API: Compare Options and Handle Every Result
Compare free email verification API limits and costs. Learn how to handle valid, invalid, catch-all, and unknown results in signup forms and list cleaning.

Hunter, ZeroBounce, and Mailboxlayer are three options to compare when you need a free email verification API for a signup form or a small email list. Start with their free allowances, then check whether API access and the verification features you need are included.
The right choice depends on how many addresses you need to check, whether the allowance renews each month, and whether the free plan permits your intended use. The comparison below sets out those limits so you can choose a service before working through integration and result handling.
Pricing and access details were checked on September 23, 2026; no accuracy or latency benchmark was performed.
What a free email validation API can establish
Email validation commonly combines syntax checks, domain and mail-server checks, and an attempt to assess the mailbox. The result is evidence collected at a particular time.
It cannot guarantee delivery of a future message. A valid mailbox can have filtering rules, a full inbox, or a later status change. Verification also does not prove that the person typing an address controls it. For signup, a confirmation message addresses that separate ownership question.
For a free email checker API, distinguish these three limits:
- Access: whether the free plan includes API requests rather than just a web form.
- Volume: whether the allowance renews, expires, or is shared with other operations.
- Function: whether SMTP checks, catch-all detection, HTTPS, and commercial use are included.
A JSON response alone does not establish that all these features are available on your plan.
Compare free API access and its limits
| Option | Documented free allowance | Access or feature constraint | Where to begin |
|---|---|---|---|
| Hunter direct | 50 shared credits/month; verification costs 0.5 credit | Finding emails draws from the same pool. Unknown results and disposable-address skips have special credit rules | Evaluate for low-volume forms or an existing Hunter workflow |
| ZeroBounce direct | 100 monthly verification credits; API access | Free monthly benefit requires a business/premium domain. One validation uses one credit | Evaluate when detailed status and sub-status handling matters |
| Mailboxlayer | 100 API requests/month | Current product table labels free use non-commercial; confirm HTTPS and SMTP access because product and FAQ descriptions differ | Consider for a non-commercial prototype after checking the actual plan permissions |
| Glasser → Hunter / LeadMagic | No recurring free verification allowance established here | Inspected endpoints are usage-priced; a provider's direct free plan does not apply | Consider when your application uses a Glasser key and balance |
Sources: Hunter pricing, ZeroBounce validation API, Mailboxlayer plans, Mailboxlayer FAQ, and Glasser's September 23 read-only endpoint contracts. Glasser billing model
Hunter's nominal allowance can cover 100 billable verifications if none of the 50 credits are spent finding emails. This is an allowance calculation, not a claim that every attempted address will receive a conclusive verdict.
Make a zero-budget test explicit
Create an account, inspect the enabled plan, and obtain a server-side API key. Record the available verification balance before your first request. Keep automatic purchases disabled if your requirement is strictly zero spend.
The best free email verification API for a public signup form also needs a suitable rate limit and response-time budget. Neither a monthly quota nor a vendor's average speed establishes those conditions for your deployment. Use the account's documented limits and test the behavior when they are reached.
Card requirements and overage settings are not uniformly established by the sources above. Confirm them during signup. For Mailboxlayer, unresolved plan differences are a reason to delay production use, not a reason to assume the more generous interpretation.
Test the integration before checking a real list
Start by testing the request and error-handling code without sending customer addresses.
Hunter documents a public test-api-key for its Email Verifier. It validates parameters and returns a fixed dummy response. This request uses that documented testing mechanism:
curl --get 'https://api.hunter.io/v2/email-verifier' \
--data-urlencode 'email=contact@example.com' \
--data-urlencode 'api_key=test-api-key'
The example address is illustrative. The dummy response does not verify that address. Use the test to check JSON parsing and application wiring, then use an authorized sample with your own credential to evaluate real results. Hunter authentication and test key
ZeroBounce provides sandbox addresses for exercising status branches. Its sandbox still requires your API key. Follow its current instructions instead of substituting random addresses and expecting a particular outcome.
Before a real batch, define:
- The record ID that connects each result to the original email.
- The raw provider status and any flags you will preserve.
- A separate transport-error state for timeout or failed HTTP requests.
- The next action for each result.
- A maximum attempt count and a record of charges.
Keep API credentials on the server. For a public form, apply request controls so repeated submissions do not consume the entire allowance. These are application design recommendations, not built-in behavior promised by Glasser.
Map provider statuses to business actions
A catch-all domain can accept a mailbox probe without confirming that the individual inbox exists. An unknown result means the service could not conclude. Neither belongs in the same bucket as a proven invalid address.

Suggested application policy. Keep the provider's original result alongside the decision.
| Meaning | Hunter native status | ZeroBounce native status | Suggested treatment |
|---|---|---|---|
| Positive mailbox assessment | valid | valid | For signup, continue to address confirmation; for a list, retain with check date |
| Address judged invalid | invalid | invalid | Ask a signup user to correct it; exclude from the send-ready list |
| Catch-all uncertainty | accept_all | catch-all | Keep separate; avoid counting it as a confirmed individual mailbox |
| Inconclusive check | unknown | unknown | Offer confirmation or bounded later review; do not label invalid |
| Free email provider | webmail | Inspect the separate free_email field | Apply your account policy; a free provider alone is not evidence that the address is invalid |
| Disposable address | disposable | do_not_mail with relevant sub-status | Apply your product's stated policy; request another address if needed |
| Other risk/suppression categories | Inspect applicable flags | spamtrap, abuse, do_not_mail | Suppress outreach or review according to the reason |
Sources: Hunter Email Verifier and ZeroBounce status codes. These are native provider labels. Do not assume they occupy the same JSON path in a third-party wrapper.
Hunter's older result field is deprecated; its documentation directs users to the more detailed status. A single “deliverable” flag can discard information your application needs.
Use different policies for forms and old lists
For signup, an unknown verdict can lead to an email confirmation step. Show a clear correction prompt for a syntax problem, and let the user edit the address. A timeout should be handled as a service issue, not as proof that the user typed a bad email.
For list cleaning, keep valid, invalid, catch-all, and unresolved groups separate. Save the check date so a list imported months later does not look freshly validated. Whether to accept a catch-all contact depends on your business policy and other evidence; the API cannot make that decision for you.
Download the status review sheet to record raw results, normalized outcomes, timestamps, and costs without merging these categories.
Estimate costs after the free allowance
Count requests and unique emails separately. A list of 1,000 rows may contain duplicates, and repeated checks may have different billing treatment across providers.
Hunter's direct pricing documents no verification credit for an unknown result and counts repeat verification once per billing period. Those rules belong to Hunter direct. Glasser settles each run using its inspected endpoint's charge clauses.
The Glasser contracts checked for this article listed:
| Endpoint | Price per call | No-result clause | Important distinction |
|---|---|---|---|
Hunter /v2/email-verifier | $0.01225 | $0 | A returned invalid verdict is still an answer, not an empty lookup |
LeadMagic /v1/people/email-validation | $0.00625 | $0 | The endpoint verifies one address per call; inspect its outcome before classifying the charge |
These prices are observed Glasser contracts, not direct-provider quotes or a quality ranking. Both inspected contracts listed $0 clauses for provider errors, timeouts, and internal errors. Reinspect before use; each new run uses its current price. Glasser charge clauses
Scenario 1: a small signup form
Suppose your form receives 80 unique addresses this month. Hunter's 50-credit pool would cover 80 billable verifications at 0.5 credit each, consuming 40 credits, if you use no credits for finding. ZeroBounce's 100-credit monthly benefit would cover the same 80 single-credit checks, assuming your account qualifies.
Neither calculation includes repeat attempts or other uses of the account. Keep a buffer and test what your form does when the available balance reaches zero.
Scenario 2: cleaning an existing list
Assume 1,000 unique emails each produce one billable verdict, with no extra calls. At the inspected Glasser prices:
- Hunter: 1,000 × $0.01225 = $12.25.
- LeadMagic: 1,000 × $0.00625 = $6.25.
If your application retries 20 addresses and each retry is also billable, the totals become $12.495 and $6.375 respectively. This is hypothetical arithmetic. It says nothing about the two services' accuracy, speed, or proportion of inconclusive results.
For a realistic budget, add measured retries and review workload after a small pilot. Keep vendor subscriptions, infrastructure, and human review outside the per-call subtotal unless you explicitly include them.
Questions before choosing an email verifier
Is a free API for email verification enough for production?
It can fit a low-volume application if commercial use, HTTPS, rate limits, and operational support meet your needs. Check all four. A monthly allowance alone does not establish production suitability.
Does an email validator API free tier prove ownership?
No. Mailbox validation assesses the address. A confirmation link or code sent to the address checks whether the user can receive and act on a message.
Should unknown results be retried immediately?
Read the reason and the provider's guidance. A temporary mail-server issue may justify a later attempt; a repeat loop can spend credits without resolving it. Limit attempts and preserve the original unknown result.
How should I choose the best email verification API?
Compare the same authorized sample, the native status detail, the integration's behavior on errors, and the actual charges. Use known controlled addresses where possible to test your branches. Choose the service whose results your application can handle correctly before expanding the list size.
Related posts

9 min read
LinkedIn Email Finder: Choose a Tool and Find the Right Work Email
Have a LinkedIn profile but need a work email? Compare tools and free limits, handle bulk lists, and check whether the address matches the current employer.

14 min read
Lead Enrichment: How to Enrich B2B Leads and Choose the Right Tools
Turn incomplete B2B leads into usable CRM records. Compare enrichment tools, resolve conflicting data, and calculate cost per usable lead.
Make your agent
work with real data.
Search, inspect, and run data APIs through one Glasser key. Turn your next question into a result you can use.
Get started with Glasser