Brevo automatically blocklists addresses that hard-bounce, so it stops mailing a known-bad address after the first failure. What it can't do is catch an address before that first failure — the imports, old signups, and typos that hard-bounce on their debut send and take a reputation hit with them. This guide covers what Brevo's blocklist does for you, the addresses it can't see, and the export → verify → blocklist loop that handles the rest before you send.
What Brevo already does for you#
Brevo's native hygiene centres on the blocklist:
- Hard bounces are blocklisted automatically. When an address hard-bounces, Brevo blocklists it so it won't be emailed again — the error is permanent, so Brevo doesn't retry.
- The blocklist aggregates the bad outcomes. Unsubscriptions, spam complaints, and hard bounces all land on the same blocklist, and blocklisted contacts are skipped when you send a campaign — so you don't spend email credits on them.
- Blocklisted contacts stay in your account. Brevo deliberately recommends against deleting them, because keeping the record is what keeps you compliant with their wish not to be contacted.
Brevo behavior above last verified against the Brevo help center, July 2026.
The catch is timing. Blocklisting is reactive: an address is only blocklisted after it hard-bounces on a real send — which means you have already spent the credit and, worse, taken the reputation hit that a hard bounce carries. And reputation is only half of deliverability: even a spotless list lands in spam if you haven't authenticated your Brevo sending domain with SPF, DKIM, and DMARC.
What Brevo can't catch#
Every mechanism above needs a send and a failure to fire. That leaves the blind spot every ESP shares:
- Never-mailed invalid addresses. Contacts imported from another platform, old signups, and typos captured at capture have never bounced because they have never been sent to. Brevo has no signal on them until your first campaign — the send where the damage is done.
- Disposable addresses accepted at signup that will quietly stop existing.
- Role addresses (
info@,support@) that skew engagement metrics. - Decayed addresses that look healthy today and will bounce next month.
An imported list is the sharpest case: it arrives with its bounce history stripped, so addresses that were already failing elsewhere look brand new — and Brevo will happily spend a credit delivering each one straight into a hard bounce. Verify before the send, not after it.
Step-by-step: export, verify, blocklist#
Direct ESP connections are paused while we rebuild our integrations platform (see integrations), so the dependable path today is the CSV loop — the same flow as the Klaviyo and Mailchimp guides, in Brevo's terms:
- Export from Brevo. Open Contacts, filter to the list you want to clean, and export it to CSV.
- Verify the file. Upload it to Qualisend bulk cleaning — up to 1,000,000 addresses, duplicates charged once — or paste addresses directly. The free plan's 100 credits cover a first sample.
- Read the results. Every address returns
deliverable,risky,undeliverable, orunknownwith a reason code and sub-flags (catch-all, disposable, role, full mailbox), plus the MX provider and probe detail as evidence. Download the cleaned CSV. - Blocklist the undeliverables in Brevo. Filter your results to
undeliverable, then add those addresses to Brevo's blocklist — the same place hard bounces end up automatically, so they are skipped on every future send without being deleted. This does the reputation-saving work before the send instead of after. - Handle everything else per verdict — the table below.
What to do with each verdict#
| Verdict | Brevo action |
|---|---|
deliverable | Keep sending as normal. |
deliverable + role flag | Keep for transactional content; exclude from engagement-judged automations — see role, disposable & free. |
risky + catch-all flag | Move to a dedicated list and throttle — see the catch-all guide. |
risky + disposable flag | Blocklist. The inbox was built to expire. |
unknown | Keep and re-verify next clean — greylisting or rate-limiting, not a verdict on the mailbox. |
undeliverable | Blocklist via the step above. Don't wait for the bounce to prove it. |
Blocklist, don't delete#
Brevo's own guidance is to blocklist rather than delete, and it applies to your verified undeliverables too. Blocklisting stops all future sends and preserves the record that the address is bad, so a later import can't silently re-add it — and because Brevo charges by emails sent rather than by contact, a blocklisted contact sitting in your account costs you nothing. Deleting throws away that safety record for no billing benefit. Keep the list, blocklist the junk.
How often to re-clean#
There is no universal number, and we won't invent a decay statistic. The real drivers are how fast your list grows and how it is sourced: a double-opt-in list decays slowly, while one fed by imports and lead magnets accumulates junk continuously. Three habits cover most senders:
- Before any high-stakes send — a launch or seasonal campaign.
- After any import, before the first send touches it.
- On a regular cycle sized to your volume, with your per-campaign bounce rate as the tripwire. If bounces climb toward the warning thresholds, clean now (see why bounce rate matters).
Frequently asked questions#
Does cleaning my list lower my Brevo bill?#
Indirectly, and in a specific way. Brevo bills primarily on emails sent, not on how many contacts you store, so the saving is in wasted sends: every dead address you remove before a campaign is a credit not spent delivering into a hard bounce. Blocklisted contacts already cost nothing, so the win from verifying is avoiding the credit — and the reputation damage — of that first failed send.
Should I blocklist or delete bad contacts?#
Blocklist. It stops all future sends and keeps the compliance and hygiene record, which prevents a re-import from re-adding a known-bad address, and it costs nothing because Brevo doesn't bill by contact. Brevo's own guidance recommends against deleting blocklisted contacts for exactly this reason.
Can I verify addresses before they enter Brevo?#
Yes, and it is the highest-leverage option: verifying at signup through the API keeps typos and disposable addresses out of Brevo entirely, so they never reach a send. A native Brevo integration is part of the platform we're rebuilding; until it ships, the CSV loop above is the supported path.