All documentation

Data

Email verification

Find the addresses that don't exist before you send, without sending anything.

What this is

Email verification tells you which addresses on a list have a real mailbox behind them. Nothing is sent to anyone. We ask each address's mail server whether the mailbox exists, the way a sending server would, and stop before any message goes out.

Use it before you import a list you bought, collected at an event or haven't mailed in a while. Mail to addresses that don't exist can never arrive, and providers treat a sender who mails many of them as a spammer, which pulls the rest of your mail into spam.

What it costs

  • A list: 10 send credits per address. Duplicates are removed first, so Ada@example.com and ada@example.com count once. The credits are taken when the check starts.
  • Your own contacts: free. Contacts are checked automatically when you import them and before a campaign sends. Check unchecked contacts covers any that were added another way.

If an address can't be checked within a day, its credits are refunded. Credit movements appear under Billing → Usage as Email verification.

What the results mean

Each result also has a reason, such as No mailbox by that name or The domain looks misspelt. We say what was found, never how. An address known not to exist reads the same however we learned it.

How it works

  1. Open Data → Email verification.
  2. Paste addresses, or upload a CSV or text file. Addresses are found wherever they sit in each row, so a spreadsheet export works as it is.
  3. Check the count and the cost, then choose Verify.
  4. When it finishes, open Results to see each address, or Download CSV to take the list back to your spreadsheet.

Up to 50,000 addresses per verification, and up to 3 running at once.

From the API

The same checks are in the API, under Verification in the API reference. An API key needs the verification:write scope to start a check and verification:read to read results.

  • POST /api/v1/verifications checks a list (10 credits per address).
  • POST /api/v1/verifications/check checks one address, for example at sign-up. It is charged only when there is an answer.
  • POST /api/v1/verifications/contacts checks your unchecked contacts for free.

Send an Idempotency-Key header so a retried request is never charged twice.