Overview / Mailing Lists
Mailing Lists
Organize contacts into operational send groups, manage list-specific suppression state, and import members safely from external files.
What Mailing Lists Control
A Mailing List is a grouping layer that connects master contact records to a sendable audience. In Virtual Mailer, the contact record and the list membership record are separate. This is important because the same contact can belong to more than one list while still having list-specific suppression state such as Disabled or Unsubscribe.
Segmentation
Use lists to separate audiences by purpose, consent source, client, geography, lifecycle stage, or content type.
Membership State
Disabled and Unsubscribe are list-level member settings, not global delete operations. A contact may be suppressed on one list and still remain available in another.
Campaign Targeting
Campaigns select one or more mailing lists. At send time, Virtual Mailer removes duplicates and excludes disabled or unsubscribed memberships.
Working in the Mailing Lists Module
- Create: use
Newto enter the list name and description, then open the Mailing List Editor. - Edit: double-click a row to open the selected list in the editor.
- Delete: remove a list only when it is no longer associated with any campaigns.
- Filter Row: the main grid can show a filtering row so large sets of lists can be narrowed quickly.
- Live statistics: each row shows Campaigns Using, Address Count, Disabled count, and Unsubscribed count.
What the Main Grid Shows
| Column | Meaning | Why It Matters |
|---|---|---|
| List Name | The internal name of the mailing list. | Use naming that clearly communicates purpose and consent source. |
| Campaigns Using | How many campaigns currently reference the list. | High-risk delete warning. If this is greater than zero, the list is in active use. |
| Address Count | Total number of list memberships. | Useful for audience sizing and import verification. |
| Disabled | How many members are disabled on this list. | Disabled members are excluded from campaign execution. |
| Unsub | How many members are unsubscribed on this list. | Unsubscribed members are also excluded and should remain suppressed unless consent is re-established. |
| Created | When the list record was created. | Useful for auditing and environment cleanup. |
Recommended Mailing List Workflow
- Create the list with a clear name and a useful description.
- Open the list editor and either add individual members or import a file.
- Review the member grid counts for Disabled and Unsubscribed records.
- Clean obvious mistakes before assigning the list to a campaign.
- Use the list in campaigns only after membership, suppression state, and consent basis are understood.
- When the list is retired, remove it from campaigns first, then delete it if appropriate.
What the Mailing List Editor Does
The Mailing List Editor is the operational workspace for member management. It shows the members of the current list in a grid and provides command-bar actions for member maintenance, filtering, and importing.
Primary Actions
- Properties: edit the list name and description.
- Filter List: show or hide the member-grid filter row.
- Add List Member: add a single member manually.
- Delete List Members: remove selected memberships from the list.
- Member Properties: edit the selected member's contact details.
- Toggle Enabled: bulk-toggle the Disabled state for selected members.
- Import From CSV: preview and map a file into contacts and list memberships.
Status Area
- Status message: shows short success messages such as member added, updated, or removed.
- Member counts: shows Total, Disabled, and Unsubscribed counts based on the rows currently visible in the grid.
- Selection-aware buttons: Delete, Edit, and Toggle Enabled are enabled only when at least one row is selected.
Member Fields and Grid Behavior
| Field | Meaning | Behavior |
|---|---|---|
| The member's email address from the master contact record. | Double-click the row to edit the member if you click a non-status column. | |
| Display Name | Friendly display value stored on the contact. | Used as part of contact identity and personalization where applicable. |
| First / Last | Basic contact profile values. | Useful for tokenized content and future segmentation. |
| Disabled | List-level suppression flag. | Double-click the Disabled cell to toggle it immediately. |
| Unsubscribe | List-level unsubscribe state. | Double-click the Unsubscribe cell to toggle it. Virtual Mailer records the unsubscribe date when this is set. |
| Created | When the contact record was created. | Displayed as a short date in the grid. |
| Messages Sent | The number of sent-message records tied to this contact for campaigns that used this list. | Useful for support, suppression review, and campaign targeting sanity checks. |
Adding a Member Manually
The Add Member dialog is used for one-off entry, corrections, and quick onboarding.
- Open
Add List Member. - Enter the email address. The OK button remains disabled until the email format is valid.
- Optionally enter first name, last name, and display name.
- Save the member.
- If the address already exists globally: Virtual Mailer reuses the existing contact record.
- If the address is already a member of the current list: the add is blocked and the user is informed that it is already on the list.
- If the address does not exist: a new master contact record is created, then linked to the current list.
- New memberships start active: new list memberships are created with
Disabled = falseandUnsubscribe = false.
What Happens When You Edit a Member
Editing a member updates the underlying contact record, not just the membership row. That means changes to email address, first name, last name, or display name affect the shared contact identity used elsewhere in Virtual Mailer.
- Email validation: the email address must be syntactically valid.
- Duplicate protection: if you change the email address to one already used by another contact record, the change is blocked.
- Global implication: because the underlying contact record is shared, edits can affect other lists that use the same contact.
Disabled and Unsubscribe Behavior
These two flags are critical because campaigns check them before sending.
Disabled
- Can be toggled per row by double-clicking the Disabled cell.
- Can be toggled in bulk with
Toggle Enabledfor selected members. - Disabled members remain on the list but are excluded from campaign execution.
Unsubscribe
- Can be toggled per row by double-clicking the Unsubscribe cell.
- When a member is marked unsubscribed manually, Virtual Mailer records an unsubscribe date.
- Unsubscribed members remain on the list but are excluded from campaign execution.
- Tracking unsubscribe sync can also set this flag automatically when hosted unsubscribe processing is used.
Removing Members from a List
Deleting members from inside the Mailing List Editor removes only the list membership records. It does not delete the master contact records from the database.
- Safe scope: the selected contacts are removed from the current list only.
- Contacts remain available: if those contacts belong to other lists, those other memberships are unaffected.
- Confirmation required: the editor prompts before the memberships are removed.
How CSV Import Works
The CSV import flow is a two-step process: preview the file, then map source columns to Virtual Mailer fields.
- Select
Import From CSV. - Choose a CSV or tab-delimited file.
- Preview the file and confirm whether the first row contains headers.
- Select the field delimiter: comma, tab, semicolon, or pipe.
- Continue to the mapping screen.
- Drag source columns onto Virtual Mailer destination fields.
- Map at least the Email Address field. Import cannot continue without it.
- Run the import and review the result summary for Added, Duplicates, and Errors.
What the Import Mapping Step Does
- Drag-and-drop mapping: source file columns are dragged onto Virtual Mailer destination fields.
- Clear button: any mapped field can be cleared from the mapping grid.
- Email required: import is blocked unless Email Address is mapped.
- Progress bar: the mapping form shows progress through validation, processing, and save steps.
How Imports Handle Existing Data
Virtual Mailer does not blindly insert every row from the import file.
- Invalid emails are skipped: rows without a valid email address are counted as errors.
- Duplicates inside the file are deduplicated: only the first valid occurrence of an email in the import source is used.
- Existing contacts are reused: if a contact already exists in the database, Virtual Mailer reuses that contact.
- Safe update behavior: when an existing contact is reused, import only fills empty target fields. It does not overwrite populated fields with new values.
- Existing list links are not duplicated: if the contact is already on the target list, the import counts it as a duplicate or no-op instead of adding a second membership.
- New links are created when needed: if the contact exists globally but is not yet on the target list, the import creates the missing list membership.
Import and List Limits
- Mailing list creation: list creation is checked against the current license.
- CSV import size: imports can be capped by licensing, and the preview step may truncate the working dataset to the allowed record count.
- Contact limits: import also checks whether the resulting contact volume is allowed under the current license before saving.
- Outlook and Database import: these options are currently hidden outside development environments.
Unsaved Changes and List Properties
Changing the list name or description marks the list dirty. When the editor closes, Virtual Mailer prompts to save, discard, or cancel if those list properties were modified.
- Property edits: name and description changes are saved through the list's update logic.
- Member operations: adding, editing, deleting, and toggling members save immediately through their own workflows.
- Main grid refresh: after save or member changes, the main Mailing Lists module refreshes the affected row counts.
What Happens When a Mailing List Is Deleted
- Campaign usage check: deletion is blocked if any campaign is currently associated with the list.
- Memberships are removed: if deletion is allowed, all
MailingListMembersfor that list are removed. - The list record is removed: the mailing list itself is then deleted.
- Contacts are not deleted: the underlying
MailingListAddressesrecords remain in the database.
How to Keep Lists Maintainable
- Use purpose-based names such as
Newsletter - Weekly,Customers - Midwest, orWebinar Registrants - Q2. - Keep consent source and intended content type aligned. Do not reuse a list for unrelated mailings just because the addresses are available.
- Prefer suppression over deletion when operational review or auditability matters.
- After every import, review duplicates, errors, and the Disabled or Unsubscribe counts before sending.
- Do not manually re-enable unsubscribed members without a legitimate and documented consent basis.
Read These Next
- Contacts for master contact record behavior and global contact maintenance.
- Campaigns for how mailing lists are selected and filtered at send time.
- Tracking and Unsubscribe for hosted unsubscribe processing that can update list member suppression state.
- Deliverability and Compliance before importing or mailing large audiences.