# Tutorial: clean a mailing list before a campaign

> Check every address on a mailing list with the AI Assistant, see which addresses a campaign will skip, and decide what the send gate holds back.

Source: https://enydea.com/en/documentation/tutorial-clean-a-mailing-list · Last updated 2026-10-09

## Goal

Before you send a campaign, you run a mailbox check on its mailing list, read what was found, and decide whether Enydea should hold back addresses it cannot confirm. Plan about 10 minutes, plus the time a large check needs in the background. For how the checks work, see [Email address verification and the send gate](https://enydea.com/en/documentation/email-address-verification.md).

## What you need

- A mailing list with recipients. See [Mailing lists and segments](https://enydea.com/en/documentation/mailing-lists-and-segments.md).
- The AI Assistant in Enydea, or Claude or ChatGPT connected to Enydea. See [Tutorial: connect Claude or ChatGPT](https://enydea.com/en/documentation/tutorial-connect-claude-or-chatgpt.md).
- A company admin account, if you want to change the send gate.

> **Note:** **Mailings** has no button for these checks. You ask the assistant. In **AGENT** mode every message is a new task: the agent does not see your earlier messages, so put everything it needs in one request. Claude and ChatGPT keep the conversation, so there you can answer their questions.

## Steps

1. Open **Mailings** -> **Mailing list**. Note the exact name of the list your campaign sends to, as shown in **Listname**.
2. Select **AI** at the bottom right of the screen. Click **CHAT** in the panel header so it reads **AGENT**.
3. Ask for a mailbox check, with the list name and your approval in the same message:

   `Run a mailbox check on every address on my mailing list "Autumn prospects". I approve the paid check for all of them.`

   Each address check is paid. When more than 25 addresses need one, the first answer is only a count, and the check starts on a second, approved call. Addresses checked in the last 90 days are not checked again.
4. A small check answers at once. A large one runs in the background, and the agent tells you it started a task. Ask a few minutes later:

   `Show the status of my latest mailbox check task.`
5. Read the result. It says how many mailboxes were checked and how many got each result, such as deliverable, undeliverable or catch_all:
   - Rejected addresses (undeliverable or do-not-send) are now marked bounced on every mailing list of your company. Campaigns skip them.
   - Likely typos are listed with a suggestion. Enydea does not correct them. Fix the address on the **Contact Person** tab in **Relations**, or remove the entry from the list and add the right address.
   - Domains that accept every address are named. Addresses there could not be confirmed; they are stored as catch-all.
6. Ask what the send gate will do:

   `Show my email hygiene status and my send gate setting.`

   You see when the nightly run last ran and how many contacts were verified, probable, guess and undeliverable then (nothing yet before the first night), and the gate mode. By default the mode is **warn**: nobody is held back, and the notification after the send says how many would have been.
7. Optional, for company admins: hold back addresses that are not at least probable.

   `Set the email send gate to enforce with a minimum trust of 55.`

   Through Claude or ChatGPT you are asked to approve this first. Do not switch to enforce if you mail private persons or shared inboxes such as info@: they stay below 55 however you got them.
8. Schedule the campaign as usual. See [Mailings and campaigns](https://enydea.com/en/documentation/mailings-and-campaigns.md).

The send gate only judges entries whose address belongs to a contact person in your CRM. Other rows, such as most rows from an uploaded file, are covered by the mailbox check in step 3, not by the gate.

## Check your work

- After the send, the notification reads "Campaign mailing ... sent to N recipients." followed by what the gate found, for example "3 of 120 recipients held back: ..." or, in warn mode, "would be held back".
- If a dynamic list or the assistant filled the list from contact persons, open a contact whose address was rejected in **Relations**. On the **Contact Person** tab the badge below **Email** reads **Undeliverable**. Entries uploaded from a file or imported on the **From CRM** tab are not linked to a contact person, so no badge changes for them.
- The **List** tab of a hand-made list still shows the rejected entries. It does not mark bounced addresses, but they are skipped at send time. A dynamic list drops them at its next sync.

## Next steps

- Learn what each check can and cannot prove: [Email address verification and the send gate](https://enydea.com/en/documentation/email-address-verification.md).
- Keep audiences current with dynamic lists: [Mailing lists and segments](https://enydea.com/en/documentation/mailing-lists-and-segments.md).
- Set up replies to your campaign address: [Set up a bulk email domain](https://enydea.com/en/documentation/tutorial-set-up-bulk-email-domain.md).
