BookMySpot
← All tools

Email Verifier

Check whether an email address can receive mail before you send to it. Free, no sign-up.

This checks syntax, the domain's mail servers (MX), disposable and role-based addresses, and common typos. It does not log in to the mailbox, so a "valid" result means the address can receive mail, not that this exact inbox exists. Free limit: 100 checks a day per visitor.

Free email verification API

Same checks, from your code. Get a free key (1,000 checks a day) and send it in the X-API-Key header.

Verify one address

curl "https://bookmyspot.us/tools/email-verifier/api/v1/verify?email=jane@company.com" \
  -H "X-API-Key: YOUR_KEY"

Verify up to 100 at once

curl -X POST "https://bookmyspot.us/tools/email-verifier/api/v1/verify/bulk" \
  -H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" \
  -d '{"emails": ["jane@company.com", "bob@gmial.com"]}'

Response

{
  "email": "bob@gmial.com",
  "status": "risky",            // valid | risky | invalid
  "reason": "possible_typo",
  "suggestion": "bob@gmail.com",
  "checks": { "syntax": true, "mx": true, "disposable": false,
              "role": false, "free_provider": false },
  "mx": ["..."],
  "mailbox_checked": false
}
statusMeaningWhat to do
validCorrect syntax and the domain has a working mail server.Send.
riskyDeliverable domain, but disposable, role-based (info@, sales@), a likely typo, or DNS was unreachable. reason lists which.Fix typos; decide per reason.
invalidBad syntax, the domain does not exist, or it accepts no mail.Remove.

Limits reset at 00:00 UTC. Remaining checks are returned in the X-RateLimit-Remaining header. Over the limit returns HTTP 429.

What an email verifier can and can't tell you

A verifier answers one question before you hit send: can this address receive mail at all? It catches typos, dead domains, temporary inboxes and shared team addresses, which together make up most hard bounces on a typical list. What no free check can do without logging in to the remote server is confirm that one specific inbox exists.

How do I check if an email address is valid?
Paste it above. The verifier checks the format, looks up the domain’s MX records to confirm a mail server exists, and flags disposable providers, role-based addresses like info@ and likely typos such as gmial.com. Anything marked invalid will hard-bounce, so remove it before sending.
Does this confirm the mailbox exists?
No. Confirming a specific mailbox requires an SMTP conversation with the recipient’s server, which many providers block or answer unreliably (Yahoo and catch-all domains accept everything). A valid result here means the domain can receive mail and the address is well formed.
What is a disposable email address?
A temporary inbox from services like Mailinator that expires after minutes or hours. People use them to get past sign-up forms. They rarely convert, and mail sent later bounces, so most sites block them at sign-up. Our list of disposable domains is updated daily.
Should I remove role-based addresses like info@?
Not always. They are real inboxes, but they go to a team, complain more often, and are a poor fit for one-to-one cold outreach. Keep them for transactional mail to businesses; think twice before adding them to marketing campaigns.
Is the API free?
Yes. Request a key above and you get 1,000 checks a day, including a bulk endpoint that takes 100 addresses per request. Without a key the web tool allows 100 checks a day.