Reference
Verification results
Reference for every email verification result, risk level and check, how the 0–100 score is calculated, and what to do with each kind of address.
Every verification returns a result, a risk level, a score and the individual checks behind them. This page explains each value so you can decide which addresses to keep, review or remove. The same fields appear in the dashboard, the API and list exports.
Results
Emailit picks the first result in this table that applies, from top to bottom:
| Result | Dashboard label | When | Mode |
|---|---|---|---|
invalid |
Invalid | The address isn’t correctly formed, or its domain has no MX records, so it can’t receive mail. | Both |
disposable |
Disposable | The domain belongs to a temporary or throwaway email service. | Both |
disabled |
Disabled | The recipient’s server said the mailbox is disabled or inactive. | full |
inbox_full |
Inbox Full | The recipient’s server said the mailbox is full or over its quota. | full |
role |
Role | The address belongs to a role or team rather than a person, such as info@, support@ or sales@. |
Both |
safe |
Safe | None of the above, and the score is 70 or higher. | Both |
unknown |
Unknown | None of the above, and the score is below 70. Several weaker signals add up, for example a random-looking mailbox on a free provider. | Both |
disabled and inbox_full only come from full mode, because they need the mailbox check.
The dashboard’s Result filter also lists Valid, Catch All and Risky. Current verifications don’t return these values. Catch-all domains are reported by the catch_all check instead, and they lower the score.
Risk
| Risk | When |
|---|---|
high |
The address has invalid syntax, no MX records, a disposable domain or a disabled mailbox, or its score is below 50. |
medium |
Score from 50 to 79. |
low |
Score of 80 or more. |
The dashboard’s Risk filter also offers Unknown, which current verifications don’t return.
Score
The score runs from 0 (certain to fail) to 100 (very likely good). Emailit starts at 100, applies these adjustments and keeps the result between 0 and 100:
| Condition | Change |
|---|---|
| Invalid syntax | −50 |
| No MX records | −40 |
Disabled mailbox (full mode) |
−40 |
| Disposable domain | −30 |
Random-looking mailbox (gibberish) |
−25 |
Mailbox not deliverable (full mode) |
−20 |
| Role account | −15 |
Inbox full (full mode) |
−15 |
Catch-all domain (full mode) |
−10 |
| Free email provider | −5 |
| Has MX records | +5 |
| Domain at least 30 days old | +10 |
An address that can’t be split into a mailbox and a domain gets a score of 0.
Examples:
| Address | Calculation | Score | Result | Risk |
|---|---|---|---|---|
ada@gmail.com |
100 − 5 (free) + 5 (MX) + 10 (old domain) | 100 | safe |
low |
info@acme.com |
100 − 15 (role) + 5 + 10 | 100 | role |
low |
x7kq2vz9@gmail.com |
100 − 25 (gibberish) − 5 (free) + 5 + 10 | 85 | safe |
low |
ada@mailinator.com |
100 − 30 (disposable) + 5 + 10 | 85 | disposable |
high |
ada@acme.invalid |
100 − 40 (no MX) | 60 | invalid |
high |
In the dashboard, the score bar is green at 80 and above and shifts toward red as the score drops.
Checks
Each verification includes a checks object. In fast mode, the checks marked full are null because they weren’t tested.
| Check | Type | Mode | Meaning |
|---|---|---|---|
valid_syntax |
boolean | Both | The address follows email syntax rules, including international characters. |
has_mx_records |
boolean | Both | The domain publishes MX records, so it can receive mail. |
domain_age |
integer or null | Both | Age of the domain in days, from WHOIS. null when it can’t be determined. |
disposable |
boolean | Both | The domain is a known temporary or throwaway email service. |
role_account |
boolean | Both | The mailbox is a role address, such as info, admin or support. |
free_email |
boolean | Both | The domain is a free email provider, such as Gmail or Yahoo. |
gibberish |
boolean | Both | The mailbox looks randomly generated. |
smtp_connect |
boolean or null | full |
Emailit connected to the domain’s mail server. |
deliverable |
boolean or null | full |
The server accepted the mailbox, or answered in a way that suggests it exists. false means the server rejected the mailbox as unknown. |
disabled |
boolean or null | full |
The server said the mailbox is disabled or inactive. |
inbox_full |
boolean or null | full |
The server said the mailbox is full or over quota. |
catch_all |
boolean or null | full |
The domain accepts mail for any address, so the specific mailbox can’t be confirmed. |
Some large mailbox providers don’t answer mailbox checks reliably. For their addresses, full mode may not add much over fast.
Other fields
| Field | Description |
|---|---|
id |
Starts with ev_. |
email |
The address you verified. |
status |
pending, processing, completed or failed. Single verifications return completed. List items can also be failed, with an error_message. |
mode |
fast or full. |
address.mailbox |
The part before @, without any + tag. For ada+news@acme.com, that’s ada. |
address.domain |
The part after @. |
address.suffix |
The + tag, such as news, or null. |
address.root |
The address without the + tag, such as ada@acme.com. |
did_you_mean |
A suggested correction for a likely typo in the domain, such as ada@gmail.com for ada@gmial.com, or null. |
mx_records |
The domain’s MX records, each with priority and exchange, sorted by priority. |
created_at, updated_at |
Timestamps. Results are deleted 30 days after created_at. |
Recommended actions
| Result | What to do |
|---|---|
safe |
Send. |
invalid |
Remove the address. At sign-up, ask the person to correct it, and show did_you_mean if there is one. |
disposable |
Don’t add it to marketing lists. At sign-up, ask for a permanent address. |
disabled |
Remove the address. The mailbox no longer accepts mail. |
inbox_full |
Pause sending and verify again later. Remove it if it stays full. |
role |
Fine for transactional and business mail. For marketing, send only if the address opted in, and watch complaints. |
unknown |
Send with care, or verify again in full mode. Leave these out of the first sends on a new domain. |
Two checks are worth acting on regardless of the result:
deliverable: falsemeans the recipient’s server rejected the mailbox. Treat the address likeinvalid, even if its result issafe.catch_all: truemeans the domain accepts everything, so a bounce can still happen later. Send, but keep an eye on bounces from that domain.