Each address comes back with a numeric code and a text reason, in both the exported file and the API response. The codes tell you which categories are safe to keep in SendGrid and which to suppress before your next send.
| Text code |
Code |
Description |
Safe to send? |
| Deliverable |
5 |
Verified as a real address currently accepting mail |
Yes |
| Accept-All |
4 |
Domain-wide setting, the server accepts everything sent to it |
Depends on your setup |
| Unknown |
7 |
The server could not be reached, after up to three attempts |
Depends on your setup |
| Role |
8 |
Group inbox such as info@, support@ or admin@ |
Maybe, not recommended |
| Invalid |
6 |
Verified as non-existent or not accepting mail, will bounce |
No |
| Disposable |
3 |
Temporary address from services such as Mailinator or 10 Minute Mail |
No |
| Spam Trap |
2 |
A honeypot address used to catch poor sending practices |
No |
| Syntax |
1 |
Not a valid email address in structure |
No |
Deciding what to do with accept-all and unknown results
Neither is automatically bad. If you send through a provider that expects a bounce rate below 4%, leave both out of the send. If you send from a dedicated server with your own IPs, they may be safe, depending on list health and on whether those contacts opted in themselves.
Accept-all domains are common in small businesses and in government, medical and educational organizations, where the addresses behind them are often genuine. Catch-all validation resolves them into valid or invalid at a stated 95% accuracy, for 10 credits per address rather than the standard 1.
Role accounts depend on source rather than the technical result. They are usually fine where you know the owners, and a poor idea where the address arrived through a registration form.