Search documentation...


Sync types and modes

When configuring a sync there are two key settings that determine the basic behavior of your sync:

  • Sync type
  • Sync mode

The options for both vary depending on the destination. Refer to the specific destination documentation for more information about supported sync types and mdoes.

Sync types

The sync type refers to what you are syncing in a destination. These are the most common types:

  • Objects: such as customers, accounts, organizations, catalog items, and the objects' associated attributes or metadata
  • Events, Actions, and Activities: such as conversion events
  • Lists: such as subscription or campaign lists, specifically user membership in these lists

When syncing to CRM type destinations, it's commonly to object type records. When syncing to advertising or marketing platforms, it's commonly to objects, events, or lists.

For some destinations, you can also trigger campaigns or merge anonymous and known users by syncing data.

Sync modes

Depending on your sync type, you also have to select your sync mode. Also called update mode, this configuration describes how you want to update records in your destination.

Depending on the destination and sync type, your options could include:

  • Update: only update existing records in your destination
  • Insert: only insert new records without touching existing records
  • Upsert: update existing records and insert new ones
  • Archive: archive records that appear in your query results (only for Mailchimp, Intercom, and Salesforce destinations)

When in insert mode, Hightouch only syncs rows whose primary key wasn't present in the previous sync run.

Sync mode is separate from delete behavior, which determines how to treat records that leave your source.

Sync type and mode combinations

For some sync types such as triggering campaigns or merging users, there is no associated mode since the sync applies an action rather than updates records. Other sync types, such as events, have one sync mode option.

Event syncs

Event syncs are insert only, meaning that you cannot update previously synced events or activities. Hightouch follows this convention because events tend to be part of fact tables rather than dimension tables. Fact tables store transactions as rows that shouldn't change.

Recall that in insert mode, Hightouch syncs rows whose primary key wasn't present in the previous sync run. If the event sync's associated model has a primary key that appears in multiple events—for example, memberId—syncs will omit some events.

To ensure syncs include all events, use a hash function for the event model's primary key. The hash should combine all columns in the event data, including member ID, timestamp, etc.

Ready to get started?

Jump right in or a book a demo. Your first destination is always free.

Book a demoSign upBook a demo

Need help?

Our team is relentlessly focused on your success. Don't hesitate to reach out!

Feature requests?

We'd love to hear your suggestions for integrations and other features.

On this page

Sync typesSync modesSync type and mode combinationsEvent syncs

Was this page helpful?