Skip to Content
ActivationSyncsSync Modes

Sync Modes

Sync modes control how membership changes are propagated to the destination. When the audience is re-evaluated and the membership changes (new members join, existing members leave), the sync mode determines which of those changes are actually sent.

Zeotap supports five audience sync modes: Mirror, Add, Remove, Upsert and Snapshot.

ModeSends addsSends removesSends updates
MirrorYesYesYes
AddYesNoNo
RemoveNoYesNo
UpsertYesNoYes
SnapshotThe complete current membership is delivered every run, with no diff. File destinations only.

Not every destination accepts every mode — the sync form offers only the ones its connector declares.

Mirror Mode

Mirror mode keeps the destination in exact sync with the audience. Both additions and removals are sent.

Behavior

Change TypeAction
New member joins audienceAdded to destination
Existing member leaves audienceRemoved from destination
Member’s field values changeUpdated in destination

How It Works

On each sync run, Zeotap computes the full diff between the current membership and the membership snapshot from the last successful run:

Previous membership: {A, B, C, D} Current membership: {A, C, D, E, F} Diff: Added: {E, F} Removed: {B} Stable: {A, C, D} (checked for field value changes)

Mirror mode sends both the adds (E, F) and the remove (B) to the destination.

When to Use Mirror

  • Ad platform audiences — Keep a Custom Audience or Customer Match list in sync with your real-time segment. When a customer no longer qualifies (e.g., they’ve already converted), they’re automatically removed.
  • CRM campaigns — Maintain an accurate campaign member list that reflects current audience membership.
  • Email suppression lists — Automatically add and remove customers from suppression lists based on their current status.
  • Any use case where the destination should reflect the current state of the audience at all times.

Example

A “High-Value Active Customers” audience is synced to a Google Ads Customer Match list in mirror mode:

  • Monday: 10,000 members synced (initial)
  • Tuesday: 200 new members added, 150 removed (50 net increase)
  • Wednesday: 100 new members added, 300 removed (200 net decrease — perhaps due to month-end churn)

The Google Ads list always reflects the current audience membership.

Add Mode

Add mode only adds new members to the destination. Members who leave the audience are not removed, and changes to an existing member’s field values are not sent — use upsert if you need those.

Behavior

Change TypeAction
New member joins audienceAdded to destination
Existing member leaves audienceNo action (stays in destination)
Member’s field values changeNo action (use upsert instead)

How It Works

On each sync run, Zeotap computes which members are new since the last run. Members who have left the audience are ignored — they remain in the destination.

Previous membership: {A, B, C, D} Current membership: {A, C, D, E, F} Diff: Added: {E, F} → Sent to destination Removed: {B} → Ignored (B stays in destination)

When to Use Add

  • Ever-growing lists — When you want to build a cumulative list of everyone who has ever qualified. For example, “All customers who have ever made a purchase” — once someone buys, they should stay in the list even if you redefine the recency window.
  • Seed audiences for lookalikes — When building seed audiences for ad platform lookalike modeling, you often want the largest possible seed. Add mode ensures the seed only grows.
  • Compliance and audit lists — When you need a record of everyone who has ever entered a segment, regardless of whether they still qualify.
  • One-directional integrations — When the destination doesn’t support removals or when removing records would cause problems downstream.

Example

A “Purchased in Last 30 Days” audience is synced to an email list in add mode:

  • January: 5,000 members synced
  • February: 3,000 new members added, 2,000 no longer qualify (but stay in the list)
  • March: 2,500 new members added

The email list now has ~10,500 members (all customers who purchased in any 30-day window), not just the ~5,500 who currently qualify.

Add mode causes the destination list to grow monotonically. Over time, this can lead to large lists that include many members who no longer match the audience criteria. Consider periodically reviewing and cleaning the destination list if size or relevance becomes a concern.

Remove Mode

Remove mode only removes members who leave the audience. New members who join the audience are not added to the destination.

Behavior

Change TypeAction
New member joins audienceNo action (not added to destination)
Existing member leaves audienceRemoved from destination
Member’s field values changeNo action

How It Works

On each sync run, Zeotap computes which members have left the audience since the last run. New members are ignored — they are not sent to the destination.

Previous membership: {A, B, C, D} Current membership: {A, C, D, E, F} Diff: Added: {E, F} → Ignored (not sent to destination) Removed: {B} → Sent as removal to destination

When to Use Remove

  • Suppression lists — You have a pre-populated list in the destination (e.g., all customers) and want to remove people as they meet certain criteria (e.g., opted out, churned, or already converted).
  • Exclusion audiences — Remove customers from a broad campaign list as they take a desired action (e.g., remove from “Abandoned Cart” campaign once they complete the purchase).
  • Complement of an add sync — Pair a remove sync on the same audience to another destination. One destination gets the adds, another gets the removes.

Example

A “Has Not Opted Out” audience is synced to an email platform in remove mode. The email platform already has the full customer list:

  • When a customer opts out, they leave the “Has Not Opted Out” audience
  • The remove sync removes them from the email platform
  • When new customers sign up (and haven’t opted out), they are added to the audience but not synced — they were already in the email platform from a separate data flow

Comparison Summary

MirrorAddRemoveUpsertSnapshot
Sends addsYesYesNoYesFull membership
Sends removesYesNoYesNoDeparted members are simply absent
Sends updatesYesNoNoYesFull membership
Destination reflectsCurrent membershipAll-time membershipPre-populated minus departuresAll-time membership, kept currentCurrent membership
List growth patternFluctuatesMonotonic growthMonotonic shrinkageMonotonic growthFluctuates
Most common use caseAd audiences, CRM campaignsSeed lists, cumulative listsSuppression, exclusionCumulative lists that must stay currentArchival extracts

Choosing a Sync Mode

Ask yourself:

  1. Should people be removed from the destination when they leave the audience?

    • Yes → Mirror or Remove
    • No → Add or Upsert
  2. Should new audience members be added to the destination?

    • Yes → Mirror, Add or Upsert
    • No → Remove
  3. Should changes to an existing member’s field values be sent?

    • Yes → Mirror or Upsert
    • No → Add or Remove
  4. Should the destination exactly match the current audience at all times?

    • Yes → Mirror
    • No → Add, Remove or Upsert depending on your needs
  5. Does the destination want one complete file per run rather than changes?

    • Yes → Snapshot (file destinations only)

When in doubt, Mirror is the safest default. It keeps the destination in sync without surprises.

Next Steps

Last updated on