You have a list of a few hundred or a few hundred thousand addresses, and before you send a campaign you want to know which ones will actually receive it. Checking them one by one is not an option. Bulk email verification checks the whole file at once and tells you, for every address, whether it is safe to send to.

This guide walks through the process from export to send, and explains how to read the results so you keep as many real contacts as possible without hurting your sender reputation.

Why verify a list before sending

Every email you send to an address that does not exist comes back as a hard bounce. A few are normal. Too many, and mailbox providers start treating you as a careless or abusive sender:

  • Sending services pause accounts. Many email platforms warn or suspend senders whose bounce rate goes above about 2%.
  • Gmail, Yahoo and Outlook watch bounces and complaints when they decide whether your mail goes to the inbox or to spam (see the 2026 sender requirements).
  • Lists decay. People change jobs, companies close domains, mailboxes fill up. A list that was clean a year ago can easily have 10 to 20% dead addresses today.

Verification removes those addresses before they cost you anything.

Step 1: Export your list

Export the contacts from your CRM, email tool or spreadsheet. Most verification tools, MailQuell included, accept:

  • CSV, the most common export format;
  • Excel (.xlsx);
  • Plain text, one address per line.

If you have name and company columns, keep them: MailQuell carries them into the results file, next to each verdict, so you know who each address belongs to.

Before uploading, remove the obvious problems yourself: duplicates, empty rows and addresses that already unsubscribed or bounced. Our free email list organizer groups addresses by domain and highlights role addresses (info@, sales@) right in your browser, without uploading the list anywhere.

Step 2: Upload and verify

Upload the file and choose the column that holds the email addresses. The verifier then checks every address the way a mail server would, without sending any email:

  1. Syntax: is it a valid email format?
  2. Domain: does the domain exist?
  3. Mail servers: does the domain have MX records, so it can receive mail at all? (You can look them up with our MX lookup.)
  4. Mailbox: the verifier connects to the domain's mail server and asks whether it would accept mail for this address, then disconnects before anything is sent.
  5. Catch-all detection: it asks about a random address that cannot exist. If the server accepts it too, the domain accepts everything and the result cannot be confirmed (more in what a catch-all email is).
  6. Risk signals: disposable domains, role addresses, typos in popular domains (gmial.com), and signs of spam traps.

Duplicates are removed before the check starts, so you are never charged twice for the same address. In MailQuell, an address you verified in the last 20 days is copied from your earlier result for free.

Step 3: Read the results

Each address gets one verdict. Here is what they mean and what to do with them:

Result What it means What to do
Safe The mailbox exists and accepts mail Send
Role A shared address such as info@ or support@ Send if a team inbox is fine for your message
Catch-all The domain accepts every address; the mailbox cannot be confirmed Send carefully, in small batches
Risky The address works, but shows warning signs (new or parked domain, machine-generated name) Usually leave out
Disposable A temporary inbox that will disappear Remove
Invalid The mailbox or domain does not exist Remove
Unknown The server did not give a clear answer (busy, greylisting) Retry later or leave out

Some servers delay unknown senders on purpose ("greylisting"). MailQuell retries those addresses automatically a few minutes later, so many of them end up with a clear verdict before the list is finished. The ones that stay unknown are not charged: their credit is given back.

Step 4: Download the part you can send

Instead of one big file, download only the groups you need. A common choice:

  • Safe only for a new sending domain or an old list;
  • Safe + role + catch-all for an existing audience that already knows you.

MailQuell shows a send forecast for each choice: the bounce rate you can expect if you send to that part of the list, compared with the 2% line where sending services start to complain. Pick the largest part that stays under it.

Step 5: Keep the list clean

Verification is not a one-time job:

  • Verify again before each big send if the list is older than a few months.
  • Check new sign-ups as they arrive, with an API or a form widget, so bad addresses never enter the list (see how an email verification API works).
  • Remove hard bounces right after each campaign, and keep them in a suppression list.

How much does bulk verification cost?

Pricing is usually per address checked. With MailQuell:

  • Free plan: 200 checks every month, plus 100 welcome credits.
  • Credit packs: from $7 for 5,000 checks, credits that do not expire.
  • 1 credit = 1 address, catch-all detection included. Duplicates, recent re-checks and results that stay "unknown" are free.
  • Bounce guarantee: if an address we marked safe bounces, report it and get the credit back.

See all plans on the pricing page.

Frequently asked questions

Does bulk verification send emails to my contacts?

No. The check stops before the message stage of the SMTP conversation. Nothing is delivered and your contacts are not notified.

How long does it take?

From a few seconds for a small list to a few minutes for tens of thousands of addresses. Some mail servers answer slowly, and those set the pace.

How many addresses can I verify at once?

Up to 50,000 per list in MailQuell. Split bigger files, or use the API to send them in parts.

Is verification 100% accurate?

No tool can confirm addresses on catch-all domains, and some servers refuse to answer. A good verifier tells you clearly when it is not sure, instead of guessing "valid".

Try it