UnifyApps enables seamless integration with Klaviyo as a source for your data pipelines. This article covers essential configuration elements and best practices for connecting to Klaviyo sources.
Overview
Klaviyo is a powerful customer data and marketing automation platform that helps businesses enhance their marketing capabilities by enabling data-driven strategies, personalized customer interactions, and automated email campaigns. UnifyApps provides native connectivity to extract data from Klaviyo efficiently and securely, supporting both historical data loads and continuous data synchronization.
Connection Configuration


Parameter | Description | Example |
| Descriptive identifier for your connection | "MyAppKlaviyoIntegration" |
| API revision date to use | "15/06/2024" |
Authentication Methods
UnifyApps supports three authentication methods for Klaviyo:
1. Auth Token (Private API Key)
Parameter | Description | Example |
| Private API key from Klaviyo | "pk_abcdef1234567890abcdef1234567890" |
How to obtain a Private API Key:
Log in to your Klaviyo account
Click on your profile name in the top right corner and select
Account
In the
Settings
tab, click on 'API Keys'
Click
Create Private API Key
Enter a descriptive name for the API key
Click '
Create Key
'
Copy the generated API key immediately, as it won't be fully visible again after you leave the page
Store the API key securely, treating it like a password


2. OAuth Authentication
Parameter | Description | Example |
| API revision date | "15/06/2024" |
| OAuth authentication callback URL | "https://webhooks-global.ext-alb.uat.unifyapps.com/api/connector-auth-callback/oauth" |
| Required API access permissions | Select appropriate scopes for your integration |
How to set up OAuth authentication:


Navigate to the Manage apps page in Klaviyo
Select Create app to create your new application
Name your application
Securely save your client secret and client ID (you won't be able to view your client secret again)
After creating your app, click Continue to continue setting up your OAuth app
Specify which scopes your app needs (using a space-separated list)
Add the callback URL from UnifyApps to your Redirect URLs/Callback URLs list


Available Scopes: For UnifyApps integration, the following read scopes are typically needed:
campaigns:read
- Access campaign dataevents:read
- Access event dataflows:read
- Access flow automation datalists:read
- Access list dataprofiles:read
- Access profile datatemplates:read
- Access template data
Additional available scopes include:
Account management:
accounts:read
,accounts:write
Audience management:
audiences:read
,audiences:write
Catalog management:
catalogs:read
,catalogs:write
Consent management:
consents:read
,consents:write
Data privacy:
data_privacy:read
,data_privacy:write
Metrics:
metrics:read
Segments:
segments:read, segments:write
Tags:
tags:read
,tags:write
Subscriptions:
subscriptions:read
,subscriptions:write
Tracking settings:
tracking-settings:read
,tracking-settings:write
Reviews:
reviews:read


Specify only the scopes your integration requires, following the principle of least privilege.
3. OAuth with Client Credentials
Parameter | Description | Example |
| API revision date | "15/06/2024" |
| OAuth application client identifier | "client_abcdef1234567890" |
| OAuth application client secret | "cs_abcdef1234567890abcdef" |
| OAuth authentication callback URL | "https://webhooks-global.ext-alb.uat.unifyapps.com/api/connector-auth-callback/oauth" |
| Required API access permissions | Select appropriate scopes for your integration |
Note on Scopes: For OAuth with Client Credentials, you'll need to specify the same types of scopes as with standard OAuth authentication. The scopes you select determine what data your integration can access from Klaviyo. For a source connection that only reads data, you should typically focus on the read scopes for the entities you need to extract.
Supported Entities
UnifyApps can extract data from the following Klaviyo entities:
Entity | Description | Common Use Cases |
| Email marketing campaigns | Campaign performance analysis, content effectiveness tracking |
| Customer interactions and behaviors | Customer journey analysis, engagement tracking |
| Automated marketing workflows | Automation performance analysis, conversion path optimization |
| Customer segmentation lists | Audience analysis, segmentation effectiveness |
| Customer profiles and attributes | Customer data enrichment, demographic analysis |
| SMS marketing campaigns | Mobile engagement analysis, SMS performance tracking |
| Email and message templates | Content performance analysis, template usage tracking |
Data Synchronization Method
UnifyApps implements cursor-based pagination polling for all Klaviyo entities:
Efficiently handles large datasets with thousands of records
Maintains proper ordering during incremental extraction
Implements exponential backoff strategy to avoid hitting API rate limits
Automatically retries failed requests with increasing wait times
Ensures consistent data extraction across all entities
CRUD Operations Tracking
When tracking changes from Klaviyo sources:
Operation | Support | Notes |
| ✓ Supported | New record insertions are detected |
| ✓ Supported | Data retrieval via Klaviyo API |
| ✓ Supported | Updates are detected as new inserts with the updated values |
| ✗ Not Supported | Delete operations cannot be detected |
Note: Due to limitations in the Klaviyo API, update operations appear as new inserts in the destination, and delete operations are not tracked. Consider this when designing your data synchronization strategy.
Ingestion Modes
Mode | Description | Business Use Case |
| Loads all existing data and captures ongoing changes | Marketing platform migration with continuous customer data synchronization |
Common Business Scenarios
Customer Data Integration
Extract profile and event data from Klaviyo
Combine with data from other systems for a unified customer view
Enable 360-degree customer insights for personalized marketing
Marketing Performance Analysis
Synchronize campaign, flow, and event data
Measure effectiveness across email and SMS channels
Calculate ROI for different marketing initiatives
Segmentation Strategy Optimization
Extract list and profile data
Analyze segment performance and engagement patterns
Refine targeting strategies based on historical performance
Automation Workflow Enhancement
Monitor flow performance and conversion rates
Identify bottlenecks in customer journeys
Optimize multi-step nurture sequences
Best Practices
Category | Recommendations |
| Schedule extractions during off-peak hours Prioritize critical entities for more frequent syncing Use incremental loading for high-volume events |
| Regularly validate profile data synchronization Ensure consistent handling of custom properties Maintain proper event tracking taxonomy |
| Use OAuth for enhanced security where possible Restrict API token permissions to read-only access Rotate credentials periodically |
| Set up alerts for synchronization failures Monitor API rate limits to prevent throttling Track data volume changes for anomaly detection |
Limitations and Considerations
API Rate Limits: Klaviyo enforces rate limits based on your plan. UnifyApps uses exponential backoff to automatically handle rate limiting, but consider this when scheduling multiple concurrent extractions.
Historical Event Data: Consider data volume when extracting historical events, as active accounts may have millions of events.
Update Detection: Since updates appear as new records, implement business logic to handle duplicates.
Custom Properties: Klaviyo allows custom properties on profiles and events. Ensure your schema can accommodate these flexible attributes.
Data Retention: Klaviyo may have different retention periods for different entities. Consider this when planning historical data extraction.
By properly configuring your Klaviyo source connections and following these guidelines, you can ensure reliable, efficient data extraction while meeting your business requirements for marketing automation and customer data analysis.