Power e-commerce focused email marketing with your warehouse data in Klaviyo
Supported syncing
Sync Type | Description | Supported Sync Modes | API reference |
---|---|---|---|
User Profiles | Sync data from any source to your Klaviyo users. | Upsert | Batch profile docs |
Events | Sync records as events to Klaviyo. This is often in the form of a track call. | Add | Track docs |
List | Add and remove users from lists without explicit consent. | Add, Remove | List docs |
Subscription List | Subscribe or unsubscribe profiles to email marketing, SMS marketing, or both, | Add, Remove | Subscribe Profiles docs |
Setup
To find your API keys, navigate to the API keys page and create a private API key.
Hightouch may require the following permissions based on which Sync Types you will be using.
Note: You cannot edit an API key after it's created.
Sync Type | Permissions (Read/Write) |
---|---|
Events | Events, Profiles |
User Profiles | Profiles |
List | Lists, Profiles |
Subscription List | Lists, Profiles, Subscriptions |
Record matching
Records can be matched from your source to your Klaviyo workspace by either an email or phone number.
Field mapping
You can sync columns from your source to Klaviyo's default and custom fields.
Syncing events
Hightouch supports syncing events to Klaviyo and assigning them to a user.
Track configuration
Hightouch allows you to choose the event name and event timestamp for a track event.
Note: Hightouch accepts a normal date time format for the timestamp, and automatically convert it to the format that Klaviyo requires.
Assigning events to profiles
Hightouch allows you to choose how you assign events to profiles. This is done by matching a column to a Klaviyo user identifier such as phone number or email.
Field mappings
Hightouch allows you to pass data to the event properties of a Klaviyo event.
Syncing lists
Hightouch supports syncing profiles to Klaviyo Lists.
Syncing profiles using emails or phone numbers to lists (regular and subscription lists) will automatically create any profiles that do not exist.
Note: When adding profiles to regular lists a Batch Profile Job is used.
Klaviyo lists
Hightouch supports automatically creating a new list for your sync. You can specify a custom name for this list, or Hightouch will use the name of the model.
Here, the model name List 1 will be used as the list name:
Sync modes
This integration supports Segment mode. New profiles will be inserted into the Klaviyo Lists. Profiles that are removed from the model will be removed from the list.
User identifiers
To identify which contacts to add or update in a list, select a model columns and the corresponding Klaviyo fields. You can match on either Email or Phone number.
User consent
Previously, user consent could be added with any profile update/create request, like in Events
. Now, user consent is configured at the Subscription List
level.
API changes
After recent changes to the Klaviyo API, the following issues may affect your syncs.
Issue | Solution |
---|---|
API key permissions may not be correct | Create a new API key and asign correct permissions based on this chart. |
Consent is no longer set on Events | Consent is setup through the use of Subscription Lists so it needs to be removed from any Event syncs. Klaviyo Docs |
Invalid phone numbers | Phone numbers should be in the format: +12345678901 |
Invalid dates | Dates should be in ISO format |
Profile not found by ID | The ID field on profiles should only contain the Klaviyo generated profile ID |