/ to search
Documentation Audience Management

Audience Management

Audience Management Tutorial

Use this tutorial to build a clean constituent base and import supporter records safely before using them in campaigns, registrations, stewardship, and reporting.

What you will learn

By the end of this tutorial, you should understand how to:

  • prepare a constituent import without rushing risky data changes
  • choose the right import mode for your situation
  • review duplicates and ambiguous matches before import
  • confirm that imported records look trustworthy afterward
  • begin building reusable audience groups from clean data

Scenario

A nonprofit is moving records from a previous system and wants to import a constituent CSV without accidentally overwriting the wrong people, loosening suppression history, or creating a messy duplicate problem.

The team wants to start carefully, confirm how the import behaves, and end up with supporter records they can trust for future campaigns and operational work.

Before you begin

Before starting, make sure:

  • your CSV includes email addresses for each row
  • staff understand whether this import is adding new people, updating existing records, or both
  • you have reviewed whether external identifiers are reliable enough to use
  • your team is prepared to inspect duplicates and conflicts instead of importing blindly

A careful first import almost always produces a healthier database than a fast one.

Step 1 — Understand what the constituent import does

Altrinum’s constituent CSV import is intentionally conservative.

That is important because constituent data usually becomes a long-term operational foundation for fundraising, events, and communications. A rushed import can create cleanup work that is much harder to reverse later.

Important implementation notes

  • The import is profile-only.
  • It does not clear unsubscribes.
  • It does not re-subscribe constituents.
  • It does not rewrite topic preference history.
  • Email is required on each imported row.

What this means in practice

Use the import to create or update constituent profile data.

Do not use it as a way to force people back into marketing eligibility or to reset communication history.

Why this matters

Many teams assume that a fresh import from a legacy system can “fix” communication status. In Altrinum, profile updates and communication permission logic are intentionally kept separate so staff do not accidentally bypass important suppression or preference safeguards.

Step 2 — Review existing constituents first

Before importing anything, open Constituents and review the records already in the workspace.

Common fields visible in constituent records may include:

  • name
  • email
  • phone and location
  • lifetime giving
  • registrations
  • email activity
  • marketing status

Why this matters

This quick review helps you answer practical questions before you import:

  • Are you mostly adding net-new supporters?
  • Are you updating an existing active database?
  • Do current records already contain better names, addresses, or phone values than the incoming file?
  • Are there patterns you want to standardize before import?

A few minutes of review here can change how aggressive or cautious your import settings should be.

Step 3 — Download the template and prepare the CSV

  1. Open Constituents > Import.
  2. Use Download Template.
  3. Prepare your file with columns such as:
    • email
    • first_name
    • last_name
    • phone
    • display_name
    • address_line1
    • address_line2
    • city
    • region
    • postal
    • country
    • external_system
    • external_id
    • profile_source

Decision guidance

Include external_system and external_id only when you trust the source system and want stronger matching.

Leave external identifiers blank if the source data is unreliable, inconsistent, or known to have been merged badly upstream.

What could go wrong

  • Invalid or missing email addresses will prevent rows from becoming ready.
  • If the same email appears more than once in the upload, only the first row is kept and later duplicates are skipped.
  • If staff assume external IDs are trustworthy when they are not, review work becomes harder instead of easier.

Tip

If the CSV came from multiple exports or spreadsheets, clean obvious duplicates and formatting issues before upload. Dry runs are useful, but they work best when the file is already reasonably organized.

Step 4 — Choose the right import settings

Before running the dry run, choose:

  • Fill blanks only (recommended)
  • or Overwrite allowed fields

Also decide whether to keep Prefer external_system + external_id matching when present enabled.

Decision guidance

Use Fill blanks only when:

  • this is a first migration
  • you are being cautious
  • your existing constituent records are generally more trustworthy
  • the file is incomplete or uneven in quality

Use Overwrite allowed fields when:

  • the incoming profile data is clearly better
  • your team understands the impact
  • you are intentionally standardizing profile fields

Keep Prefer external ID on when:

  • your source system is authoritative
  • legacy identifiers are clean and stable

What could go wrong

  • Overwrite mode can update supported profile fields more aggressively than staff expect.
  • Poor external ID data can create ambiguous conflicts or bad assumptions.
  • Teams sometimes pick settings based on speed rather than data confidence, which usually creates cleanup work later.

Step 5 — Run the dry run first

  1. Upload the CSV.
  2. Click Run Dry Run.
  3. Review the batch summary and row statuses before importing anything.

Common row outcomes

  • Ready
  • Error
  • Possible duplicate
  • Skipped

What the dry run is doing

The dry run helps staff review how the system is interpreting the file. It may include checks such as:

  • validating email presence and format
  • de-duping repeated emails inside the upload
  • matching by external ID when enabled
  • matching by email inside the current tenant
  • suggesting likely matches

Why this step matters

The dry run is not just a technical validation. It is the review step where your team decides whether the import will strengthen or weaken the database.

Treat it like a staging area, not a button you click on the way to the real work.

Step 6 — Resolve problem rows carefully

Use the row actions before importing:

  • Edit to correct bad email or profile fields and revalidate
  • Not a duplicate when staff have confirmed the record should proceed as a separate constituent
  • Merge into... when the row should update an existing constituent

Important implementation note

Merge into... imports the row into an existing constituent profile.

It does not automatically merge historical donations, registrations, transactions, or audience memberships across two separate people.

Example scenario

If Jane Smith appears in the CSV and Altrinum flags a possible duplicate because the workspace already has Jane Smith with the same email or similar profile details, staff should stop and review rather than guessing.

The right decision may be to merge into the existing record.

But if the match is only superficial and the records represent different people, staff may need to keep them separate.

What could go wrong

  • Marking a real duplicate as Not a duplicate can split one supporter’s relationship history across multiple records.
  • Importing into the wrong existing constituent can make profile data less trustworthy.
  • Assuming that Merge into... will combine all historical activity could lead staff to overestimate how much cleanup the system has actually performed.

Step 7 — Understand external ID conflicts

If external_system plus external_id already belongs to another constituent in the same workspace, Altrinum may mark the row as ambiguous.

When that happens:

  • review the conflict message
  • use Merge into... if the existing record is the correct target
  • edit or remove the external ID in the row if the source data is wrong

Decision guidance

External IDs are most useful when your source system is authoritative and stable.

If legacy data quality is mixed, email-based matching plus careful review may be the safer long-term strategy.

Step 8 — Import ready rows

Once the batch looks clean:

  1. Confirm the remaining problem rows are resolved or intentionally excluded.
  2. Click Import.
  3. Review the success message and imported count.

Best practice

Do not rush past the dry run on a large migration.

For a first migration, a smaller test batch usually gives your team a much better feel for:

  • duplicate patterns
  • source data quality
  • overwrite risk
  • how much review effort a full migration will require

Step 9 — Review constituent profiles after import

Open several imported constituents and confirm:

  • names and contact details look correct
  • addresses landed as expected
  • existing histories still make sense
  • marketing status has not been loosened unexpectedly

If your workspace uses prospect scoring or prospect workflows, review those profiles later after the relevant processes have run.

Why this matters

A successful import count is not the same thing as a trustworthy result.

The goal is not just to finish the import. The goal is to end up with constituent profiles that staff can safely use in future segmentation, campaigns, and stewardship work.

Step 10 — Build audience groups only after the data is trustworthy

Once the constituent base is clean:

  1. Open Audience Groups.
  2. Create a group.
  3. Choose Static or Dynamic.
  4. Add rules that reflect the use case.
  5. Save.

Decision guidance

Use Static for one-time staff-curated lists.

Use Dynamic for rules such as:

  • donors in a date range
  • registrants for a certain event
  • supporters above a giving threshold
  • engaged audiences that need to stay current over time

Why this matters

Good segmentation depends on good profiles.

If the import created confusion, duplicates, or conflicting profile values, those problems will show up later in audience groups and campaign prep.

For a first migration:

  1. start with one smaller CSV segment
  2. use Fill blanks only
  3. keep external ID matching on only if the source is reliable
  4. run the dry run
  5. resolve duplicates and conflicts carefully
  6. import
  7. inspect real constituent profiles before moving to the next batch

That slower first pass usually creates a much better long-term database than a large blind import.

What to do next

After your first successful import:

  • review several constituent profiles in detail
  • create one or two simple dynamic audience groups
  • confirm that marketing status and preferences still behave as expected
  • document an internal import process for future staff so later imports follow the same standards