FeaturesSix capabilities, one verification pass

Everything Between “Paste a List” and “Hit Send”

Precision over volume: every check is a real conversation with the receiving mail server, not a lookup in a stale database.

Real-Time SMTP Verification

Every address is checked live against its mail server, covering syntax, MX records and mailbox existence, in about two seconds.

response
{
  "email": "sara@acmecorp.com",
  "status": "valid",
  "sub_status": "mailbox_exists",
  "provider": "google",
  "mx_host": "aspmx.l.google.com",
  "risk_score": 4
}
Real-Time SMTP

Catch-All & Risk Detection

Spot catch-all domains, role accounts and risky addresses with a per-email risk score, so you decide what makes the cut.

flags
hello@agency-mail.net   catch-all   risk 58
support@acmecorp.com    role        risk 41
sara@acmecorp.com       clean       risk 4
Catch-All & Risk

Disposable Email Filtering

Temporary and throwaway inboxes are flagged automatically before they ever pollute your list or skew your metrics.

signup guard
if (result.is_disposable) {
  return reject("Use a permanent address");
}
Disposable Filtering

Bulk List Cleaning

Upload CSV, Excel or JSON files with up to 50,000 contacts per job, watch live progress and pay only for what runs: unused credits are refunded.

job progress
job_8f21c4   running   38,204 / 50,000
  valid        29,881
  invalid       5,402
  catch-all     2,117
  unknown         804
Bulk List Cleaning

Deliverability Audits

One click grades a domain across 8 checks: MX, SPF, DKIM, DMARC, PTR, blocklists, MTA-STS and BIMI, plus a Gmail/Yahoo/Microsoft bulk-sender verdict.

audit
acmecorp.com                    grade B+
  MX          pass    SPF       pass
  DKIM        pass    DMARC     p=none
  PTR         pass    blocklist clean
  MTA-STS     none    BIMI      none
Deliverability Audits

Developer-First API

Verify at signup, in your CRM or anywhere else with simple API keys, a REST API with rich structured results, and live job progress over SSE.

request
curl https://api.inboxvalid.com/v1/verify \
  -H "Authorization: Bearer $IV_KEY" \
  -d '{"email":"sara@acmecorp.com"}'
Developer API
Verdicts

An Answer You Can Act On, or an Honest “Unknown”

A verifier that never says “I don’t know” is guessing. Here is every verdict InboxValid returns and what each one means for your next send.

Validsara@acmecorp.com

The mailbox answered. We opened a real SMTP conversation with the receiving server and it accepted the recipient, so this address can be mailed today.

Invalidbilling@oldstartup.io

The server rejected the recipient outright. Sending here is a guaranteed hard bounce, and hard bounces are what mailbox providers count against your reputation.

Catch-Allhello@agency-mail.net

The domain accepts everything, so acceptance proves nothing. We say so instead of scoring it valid, and give you a risk score to decide with.

Disposabletmp4821@mailinator.com

A throwaway inbox from a known temporary provider. It will stop existing shortly and it never belonged in a nurture sequence.

Role Accountsupport@acmecorp.com

A shared functional mailbox rather than a person. Deliverable, but it draws complaints in cold outreach, so it is flagged separately from invalid.

Unknownj.chen@enterprise.co

The server would not give a straight answer within the retry window. We return unknown rather than guessing, and you are not charged for it: re-run those rows later and you pay only for the ones that finally resolve.

See It Run on Your Own List

Verify your first 1,000 emails free. It takes about a minute to start.

Get Started Free