Verifyre

How to clean an ActiveCampaign list with tags and automations

How to clean an ActiveCampaign list: verify contacts, tag them by verdict, and let automations unsubscribe dead contacts and re-confirm risky ones. Steps, a CSV alternative and a verdict table.

To clean an ActiveCampaign list, connect your account, verify the contacts on the list, tag each one with the verdict, and then let an automation unsubscribe the undeliverable contacts and send the risky ones a re-confirmation email. Because ActiveCampaign charges by the number of contacts in the account, every dead contact you remove is a direct saving as well as a deliverability fix.

Why does an ActiveCampaign list need cleaning?

Three reasons, and the first one is on the invoice.

Contact-count pricing. Every ActiveCampaign plan is tiered by active contacts, and a contact counts whether or not its address works. Lists decay at around 22% a year as people change jobs and abandon mailboxes, so an account that grew to 25,000 contacts over two years is probably paying for 5,000 to 8,000 addresses that will never receive another message. Unsubscribed contacts do not count towards the tier, which is why the clean ends with an unsubscribe rather than a tag alone.

Bounce handling after the fact. ActiveCampaign marks a contact as bounced after a hard bounce and stops sending to it. That protects you from the second bounce, not the first, and the first is the one that counts against your reputation. Hard bounces around the typical 2% line draw throttling from the receiving providers and attention from ActiveCampaign's compliance team.

Automations firing into the void. Welcome sequences, nurture tracks and sales follow-ups all run on the assumption that the contact's email works. A dead address in a 7-email sequence produces 7 bounces, or 7 messages into a mailbox nobody reads, and it also pollutes your engagement data and any lead score built on it.

Which contacts should you check?

  • Everyone on the list you are about to send a campaign to.
  • Contacts added by import or by a form in the last 90 days who have never been emailed.
  • Contacts with no open or click in the last 6 months.
  • Contacts about to enter an automation that sends email.

Contacts who opened or clicked in the last few weeks can wait; their engagement is proof enough.

How do you clean a list with the integration?

  1. Find your API URL and key. In ActiveCampaign go to Settings > Developer. Copy the API URL (it looks like https://youraccount.api-us1.com) and the API key. Both are needed.
  2. Decide on the tags. The integration writes one tag per verdict. The defaults are verifyre-deliverable, verifyre-risky, verifyre-unknown and verifyre-undeliverable. You can rename them, and you can also map the score to a custom field if you want it for segments.
  3. Connect ActiveCampaign in Verifyre. On the ActiveCampaign integration page, paste the URL and key, pick the list to clean, and confirm the tag names.
  4. Run the verification. Verifyre pulls the contacts on the list, verifies each address over SMTP without sending a message, and applies the matching tag. One credit per unique address, free if the same address was checked within 24 hours.
  5. Build a cleanup automation. Automations > Create > Start from scratch. Trigger: Tag is added, tag verifyre-undeliverable. Action: Unsubscribe from all lists (or just the list you cleaned). Optionally add a second action to update a custom field "Verification status" so the reason stays visible on the record.
  6. Build a re-confirmation automation for risky contacts. Trigger: Tag is added, tag verifyre-risky. Actions: Send a short email asking the contact to click to stay subscribed, then Wait 7 days, then an If/Else on "Has clicked any link in the campaign". Yes: remove the risky tag and add verifyre-confirmed. No: unsubscribe or move to a low-frequency list. This is double opt-in applied after the fact, and double opt-in vs single opt-in explains when it is worth the lost contacts.
  7. Exclude the tags from sends. For any campaign, segment the recipients to exclude verifyre-undeliverable and, for cold or high-volume sends, verifyre-risky as well. Add the same condition to the start of automations that send email so a dead contact never enters them.
  8. Check the result. The contact count on the Contacts page drops as the automation runs. A list that has been mailed regularly usually comes back 80% to 90% deliverable; a cold import can be 60% or lower.

How do you do it with CSV instead?

If you prefer not to connect the API:

  1. Contacts > Export, choose the list, include Email and any fields you want to keep.
  2. Upload the file to the bulk list cleaning tool. Up to 50,000 addresses per job; the results file keeps every original column and adds status, score and reason.
  3. Split the results into one file per verdict.
  4. Contacts > Import each file, matching on email, and in the import options add the matching tag (verifyre-undeliverable, and so on). Importing a tag triggers the same automations as the integration does.

CSV suits a quarterly clean. The integration suits accounts with daily imports, because it can be scheduled and never works from an export that went stale on your desktop.

What should you do with each verdict?

VerdictScore bandTagActiveCampaign action
Deliverable90 to 100verifyre-deliverableKeep, send normally
Risky (catch-all, full mailbox, role account)30 to 89verifyre-riskyRe-confirmation automation, exclude from cold sends
Unknown (no answer from the server)30 to 89verifyre-unknownRe-verify after 48 hours; treat as risky if still unknown
Undeliverable0 to 29verifyre-undeliverableUnsubscribe automation, exclude from everything

How often should you repeat it?

Quarterly for the whole account, before any campaign to contacts untouched for 90 days, and after every import. New signups are better handled at the form, where real-time verification stops a bad address being created in the first place. The full routine, including what to do about role accounts and disposable domains, is in the email list hygiene checklist.

Key takeaways

  • ActiveCampaign bills by contact count; unsubscribing dead contacts cuts both bounces and the invoice.
  • The integration tags contacts by verdict; automations do the unsubscribing and re-confirming.
  • Add tag exclusions to campaigns and to the start of any automation that sends email.
  • Risky contacts get a re-confirmation email, not an immediate unsubscribe.
  • Re-run quarterly, after imports, and verify at the form.

Frequently asked questions

Does unsubscribing contacts reduce my ActiveCampaign bill straight away?

Unsubscribed contacts stop counting towards the active contact total, and the plan tier is based on that total. Whether the price changes immediately depends on your billing cycle, but the count drops as soon as the automation runs.

Will the integration unsubscribe anyone on its own?

No. It only applies tags (and optionally a field). Unsubscribing happens inside automations you build and can switch off, so you stay in control.

Why would a contact who opened an email last month be tagged risky?

Most often because the domain is catch-all, so the mail server could not confirm the specific mailbox. Recent engagement is better evidence than the verdict; remove the tag for contacts who have clicked recently.

Can I re-verify only the risky and unknown contacts?

Yes. Create a segment on those tags, save it as a list, and point the integration at that list. Addresses verified in the last 24 hours are free, and unknown results often resolve on a second attempt a day or two later.

Put it into practice.

100 free verifications on signup. Clean a list, add the widget, or call the API.

Start free See pricing