How do I bring my opt-outs and DNC list across?

Map the opt-out column during import. Anyone who unsubscribed over there arrives suppressed here — this is the one migration step with legal consequences.

Who this is for

Whoever runs the import. If that's not you, make sure they've read this — you're the one whose number gets blocked.

Before you begin

  • Find the opt-out column in your export. It's usually called DND, do_not_contact, opt_out, unsubscribed, sms_opt_in or dnc.
  • If your old system keeps opt-outs on a separate suppression list rather than on the contact, export that too.

Steps

  1. Run the import and go to the column-mapping step.
  2. Map your opt-out column. The importer recognises the common names automatically, but confirm it rather than assuming.
  3. Read the preview. It tells you how many records will be suppressed — a count of zero on a book of any age is a red flag that the column didn't map.
  4. Commit the import, then spot-check someone you know opted out.

What suppression actually does

An opted-out lead is imported with a do-not-contact disposition: they're saved, searchable and visible, but no automation, AI conversation or dialer queue will touch them. An opted-out customer is imported with SMS consent off. We deliberately don't drop these records — you need to know the person exists, and deleting them means the next import re-adds them with no memory that they opted out.

If the old system doesn't export it

Some platforms keep unsubscribes only in reporting, not on the contact record. Get it out anyway — export the unsubscribe report, and either add a column to your contact file with a spreadsheet lookup, or import it as its own batch marked opted-out. Do not skip it because it's awkward to get at.

Consent doesn't transfer just because the contact did

Importing someone is not evidence they consented to be texted by you. Where consent came from a form, keep the record of it. For an old list with no consent trail, talk to your compliance person before texting rather than assuming the import blessed it.

How to check it worked

  • Search for a contact you know unsubscribed and confirm they show as do-not-contact.
  • Confirm the preview's suppressed count was non-zero and roughly matches what the old system reported.
  • After your first campaign, check the opt-out rate. A spike means suppression didn't carry across.

Common mistakes

  • Leaving the column unmapped because the import succeeded without it.
  • Ignoring a suppressed count of zero.
  • Deleting opted-out records to 'clean up' the import — the next import brings them back with no opt-out on them.

Related

Where this lives in the app

This is documentation for Virtual Closer. Book a walkthrough or sign in.