MailValidation.io checks every address in real time — catching typos, disposable domains, and fake signups before they cost you a bounce, a blocklist, or a wasted send.
One API, one dashboard, every check that matters.
We connect directly to the recipient's mail server to confirm the mailbox actually exists — not just that the domain has valid MX records.
Flag throwaway inboxes and catch-all domains automatically so you know exactly how confident to be in each result.
Upload a CSV, or send a batch straight to the bulk API endpoint. Validate thousands of addresses at once and get a clean, ready-to-send list back in minutes.
Drop validation straight into your signup flow with a single API call — full docs, sensible rate limits, no surprises.
Most checks complete in under a second, so you can validate right at the point of signup without slowing anyone down.
Embed a validation widget on any form, or get results pushed to your systems automatically via webhook.
Every check comes back with more than valid/invalid — a 0–100 confidence score so you know exactly how much to trust each result.
We keep an eye on whether your own sending domain shows up on public blocklists, and alert you the moment it does.
Catch [email protected] before it bounces. Results include a “did you mean [email protected]?” suggestion, and the widget shows it to the visitor on the spot.
A simple rating on every result, built from the signals we check: undeliverable, disposable, catch-all, role account, or inconclusive. Easy to branch on in code.
Block specific email domains or visitor IP addresses right in the widget, on top of disposable-address blocking. Our disposable-domain list refreshes weekly, and blocked attempts cost nothing.
Official Python and Node.js clients, plus an MCP server so Claude and other assistants can check addresses directly. See the developer page.
Three steps, under a second, no guesswork.
Via the API, a CSV upload, or our embeddable widget on your signup form.
We verify the domain, confirm the mailbox exists at the recipient's server, and check for disposable or catch-all patterns.
Deliverable, undeliverable, risky, or unknown — with a 0–5 risk rating and a typo suggestion when we spot one.
Start free. Pay only for what you validate.
Every account starts with 250 free validations. Inconclusive checks (timeouts, blocked probes, providers that don't allow verification) are never charged. Create your account, then choose your plan inside the app. Already have one? Log in.
Create a free account and validate your first addresses in minutes.
Get Started Free