Email verification that shows its work.
Verimail asks each address's mail server whether the mailbox exists and shows you what it said: the reason on every row of your list, the server's own words through the API. You know what will bounce before you send.
100 free verifications a month, no card.
Verifying email since 2019.
Verify any address
Live
No account needed. Protected by reCAPTCHA.
10,000 addresses, answered.
-
Deliverable
4,408
44%
The mailbox exists and accepts email.
-
Risky
2,643
26%
2,417 on catch-all domains, 226 full mailboxes.
-
Unknown not charged
983
9.8%
The mail server wouldn't say.
-
Undeliverable
1,966
20%
1,795 with no such mailbox, 171 with no mail server.
9,017 credits. The 983 unknowns are not charged.
What Verimail checks
Every address, the same checks.
A list and an API call get the same checks. Duplicates and the second pass apply to lists.
- Syntax
- Malformed addresses, caught before any server is asked.
- Domain
- No mail server, no delivery.
- Mailbox
- Asked of the mail server. No email is sent.
- Catch-all
- Domains that accept every address, labeled risky.
- Full mailbox
- Real, over quota, labeled risky.
- Disposable
- Temporary inboxes.
- Typos
- gmal.com, with gmail.com suggested.
- Duplicates
- Verified once. Every copy carries the answer.
- Second pass
- Servers that ask us to come back later are asked again.
List verification
Every answer comes with its reason.
Upload a CSV of any size. It comes back whole, with the answer and its reason on every row, in columns you can filter on. Download all of it, or only the rows you want.
Upload a list| verimail_verdict | verimail_reason | verimail_code | |
|---|---|---|---|
| emma.wilson@acme-corp.example | deliverable | mailbox_exists | 200 |
| j.okafor@some-bank.example | unknown | greylisted | 0 |
| old.contact@retired.example | undeliverable | no_mail_server | 400 |
| hello@catchall-co.example | risky | domain_catch_all | 302 |
- verimail_verdict
- verimail_reason
- verimail_status
- verimail_code
- verimail_deliverable
- verimail_did_you_mean
Every answer and reason is defined on the result codes page.
No guesses
When the server won't say, we say so.
Some mail servers accept every address, some ask us to come back later, some won't answer at all. Verimail labels catch-all domains risky, gives a list a second pass, and marks what's left unknown, never charged.
some-bank.exampleExample
RCPT TOj.okafor@…451 4.7.1 Greylisted, please try again later
unknown greylisted not charged
catchall-co.exampleExample
RCPT TOa8f2k9q@…250 2.1.5 OK
RCPT TOhello@…250 2.1.5 OK
risky domain_catch_all
Real-time API
One call, while they're still on the form.
Verify at signup, checkout or in a lead form. The response carries the answer, its reason and what to do with it: accept, confirm by email, or reject. Add evidence=true and you also get the mail server's replies, word for word.
{
"email": "emma.wilson@acme-corp.com",
"verdict": "deliverable",
"reason": "mailbox_exists",
"suggested_action": "accept",
"billed": true,
"evidence": {
"smtp": [
{ "step": "connect", "reply": "220 mx.google.com ESMTP" },
{ "step": "rcpt_to_random", "reply": "550-5.1.1 … does not exist." },
{ "step": "rcpt_to", "reply": "250 2.1.5 OK" }
]
},
"latency_ms": 412
}Pricing
You pay for answers, not attempts.
One credit verifies one address. Unknowns, duplicates and syntax errors are never charged.
On one list we measured, about 10% came back unknown. That is our figure, not an industry one, and yours will differ.
Your list would cost
$71
90,000 credits at $0.79 per 1,000. The 10,000 expected unknowns are not charged.
Covered by the Professional plan
100,000 credits a month for $79. This list uses 90,000 of them, leaving 10,000 for the rest of the month.
Or buy once: a pack of 100,000 credits for $100, and they never expire.
The exact count comes from your file, before any credit is taken. All plans.
- $4 per 1,000, down to $0.30 per 1,000 at a million a month.
- Credits never expire.
- No subscription needed.
Plans and packs on the pricing page.
The company
Who handles your list.
- 2019
- The year we started
- Verimail has verified email on its own infrastructure ever since.
- 0 emails
- Sent to anyone on your list
- Verimail asks each mail server whether the mailbox exists, and stops there.
- 30 days
- Then your list is deleted
- The upload, the result file and every working copy. Sooner, if you delete it yourself.
- GDPR
- DPA on request
- Write to support and we'll send you the data processing agreement.
Verimail Ltd, 71 Shelton Street, London. Registered in England and Wales, company no. 14045644.
FAQ
Questions
Do you resolve catch-all domains?
No. A catch-all domain accepts every address, so no verifier can confirm one mailbox on it. Verimail tests a random address and yours, so a full or dead mailbox still gets its own answer, and labels the rest risky. Catch-all is charged, because it was verified. If you need catch-alls called valid, we're the wrong service.
Why do some addresses come back unknown?
Because the mail server wouldn't say. It asked us to come back later, it slows down anyone who asks, or it gives every address the same reply. We could guess. We don't. You see the server's reason, and you aren't charged.
How long does a list take?
Most of a list is answered at a few addresses per second. Servers that ask us to come back later get a second pass: six minutes after the first, your file is ready, with those rows marked unknown. The second pass carries on in the background and updates the file when they answer.
Is there a size limit?
No. The one check before a list starts is that you have the credits for it.
Do I need to be technical?
No. Upload a CSV, download the answers. The API is for developers who verify addresses as they're typed; the docs have a complete example in five languages.
Why verify a list at all?
Mail sent to an address that doesn't exist bounces, and mailbox providers judge your domain by its bounce rate. Too many bounces and more of your mail goes to spam, including the mail to real people. Verify before you send, and again when a list has rested for a few months.
We don't guess.
Start with 100 free verifications a month. No card.