What does my mailing list import report mean?

You have handed bernard your files and pressed Read my files and show me the report. Nothing has been written. This page is what every line of that report means, in the order it appears.

The headline

One sentence with four numbers:

N addresses go on your do-not-email list first. M people become contacts, K of them with the permission you confirmed. J rows could not be read.

Read it as a sanity check against what you exported. If you exported a thousand unsubscribes and the first number is nought, you have loaded the wrong file or labelled it as the wrong thing.

"First" is not a figure of speech. Those addresses are written before the first contact exists, so there is no moment during the import at which somebody who left you is reachable.

Who goes where, and why

Under the headline is one line per reason, largest group first. There are six:

  • unsubscribed on ActiveCampaign and their address bounced on ActiveCampaign. Both go on your do-not-email list. The first can never be lifted by you; a no belongs to the person who said it.
  • on your ActiveCampaign exclusion list. Also do-not-email. These are the ones that would otherwise have looked reachable, because ActiveCampaign lets somebody be Active on a list and excluded at the same time.
  • active on a list whose permission you confirmed. A contact, with a permission record naming the list and the date.
  • active on a list you did not confirm permission for. A contact, with no permission record. Honest, and always available.
  • never confirmed their subscription on ActiveCampaign. A contact, no permission. These are the people who started signing up and stopped.

If one address appears with two reasons anywhere in your files, the strictest wins. An address that is Active on one list and Unsubscribed on another is suppressed.

Duplicates and rows that would not read

Then a line counting addresses that appear in more than one file, and the rows bernard could not read. The unreadable ones are listed with their file and row number so you can go and look. They are never imported and never silently repaired.

The commonest cause is a stray comma or a missing address in a row that looks fine in a spreadsheet.

Tags

Every tag bernard found, and what each one becomes. Your ActiveCampaign tags come across as they are, and each list you named becomes a tag of its own so you can still find that group afterwards. You can rename any of them here, or clear the box to drop one. What happens to my lists and tags when I bring my list across? covers what to keep.

Custom fields

Every column bernard did not recognise, with how many people have a value in it. Nothing is dropped: each one is kept on the contact under its own column name.

Two things to know. Half of these will be ActiveCampaign's own columns rather than yours, because a list export carries List name, Status, Date Subscribed, IP Address and similar. And bernard cannot search or segment on any of them yet, so treat them as notes you can read on a contact, not as a tool.

The permission sentence

Then the line that matters most:

Permission you bring over is recorded on each contact and you can see it there. It does not put anyone into a campaign audience yet.

This is not a caveat about your files. It is a gap in bernard, stated on purpose. Why can't I email the people I just imported? explains it properly and tells you the one route that does work.

What does not come with you

A short list, always the same, so you read it before you decide rather than discover it in a month: automations with their triggers, branches and goals; dynamic segments, lead scores and deal scores; contact notes, which ActiveCampaign does not export at all; who opened or clicked which campaign; site tracking, the plugin, landing pages, SMS and integrations; and your ActiveCampaign sending records.

If any line there is the reason you pay for ActiveCampaign, stop and read Move my mailing list from ActiveCampaign again.

Approving it

Import exactly this runs the plan you just read and nothing else. Change a tag name, tick a list, or add a file, and the report becomes stale: bernard throws it away and asks you to read the new one. That is deliberate. The thing you approved has to be the thing that runs.

Afterwards you get the same report again, built from what actually happened. The two should agree. If they do not, bernard says so, and Undo a mailing list import is one click away.

Limits

Bernard reads up to 20 files at a time and up to 5,000 rows in total. Past that it refuses the upload rather than reading part of it, because a half-read list is the one outcome that would let a suppression go missing. Split a bigger list into more than one import and do the do-not-email files in every one.

The prompt

Read my ActiveCampaign files for [my site] and take me through the report line by line before anything is imported.

Press Copy, then paste it into your AI and fill in the [bracketed] parts. First time? Connect your AI to bernard first - a one-time setup in bernard → your site → Use your own AI.

Questions people ask

Has anything been written when I am reading this?
Nothing at all. No contact, no permission record, no do-not-email entry. The report is produced from your files in memory and thrown away if you walk off. Writing only starts when you approve this exact report.
The headline says fewer people become contacts than there are rows in my files. Why?
Three usual reasons, and all three are in the report. The same address in two files is one person. An address the do-not-email side names is suppressed rather than made a contact. And a row bernard could not read is listed by file and row number and skipped.
What does 'active on a list you did not confirm permission for' mean?
That you left a list unticked at the permission step. Those people still become contacts with their tags; they carry no permission record. It is a perfectly good answer, and it is the right one for any list you cannot account for.
The custom fields list is full of things I did not make.
That is normal for a list export. ActiveCampaign includes its own columns, such as List name, Status, Date Subscribed, IP Address and User Agent, and bernard keeps every column it does not recognise rather than dropping it. They sit on the contact as notes. You cannot search or segment on them.
Why does the report say my import will not raise my audience count?
Because it will not. Permission you confirm is recorded and readable on every contact, and bernard's audience count only counts permission given on this site. That is a deliberate gap and we say so rather than surprising you.
I changed a tag name. Why did the Import button disappear?
Because the report on screen is now a report of something else. Your approval names one exact plan, so bernard makes you read the new report before it will accept a new approval. Read it again and the button comes back.
I imported and the second report does not match the first.
Bernard says so in plain words rather than hiding it, and the usual cause is a row that failed to save. Undo the import, check the file, and read the report again.

You might also want to…