--- title: "Klaviyo as a Destination" slug: "klaviyo-destination" description: "Send data from any source to Klaviyo with Dataddo and keep your records in sync automatically. No coding required." updated: 2026-07-26T12:57:17Z published: 2026-07-26T12:57:17Z canonical: "docs.dataddo.com/klaviyo-destination" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.dataddo.com/llms.txt > Use this file to discover all available pages before exploring further. # Klaviyo as a Destination Klaviyo is an email marketing and automation platform that helps businesses build and engage with their customer base. It offers tools for creating personalized email campaigns, segmenting audiences, tracking customer behavior, and delivering targeted messaging, enabling businesses to optimize their email marketing strategies and drive customer engagement and conversions. ## Authorize Connection to Klaviyo Authorize the connection so Dataddo can write to Klaviyo: | Field | Description | | --- | --- | | A name for this authorizer in Dataddo | A label so you can recognize the connection later. | | API Private Key | API Private Key | Dataddo validates the connection when you save it. ## Create a Klaviyo Destination Go to Destinations, click Create Destination, and select Klaviyo. Give the destination a name, choose the authorizer, then set: | Field | Description | | --- | --- | | Choose an object type | Object to load the data to. Shown when oAuthId is ``. | Click Save. Fields that load from your account (such as the target object or module) appear after you choose the authorizer. ## Write Modes The write mode decides how each flow run changes your Klaviyo records. Klaviyo supports the modes below. | Mode | Meaning | | --- | --- | | `insert` | Creates a new record for every row. | | `upsert` | Creates new records and updates existing ones matched by their key. | | `update` | Updates existing records matched by their key; fails rows with no match. | | `update_ignore` | Updates matched records, skipping rows with no match. | Flow columns are matched to Klaviyo fields by name. If a column has no matching field, it is ignored. ## How to Create a Flow to Klaviyo 1. Go to Flows and click Create Flow. 2. Add one or more sources. 3. Add Klaviyo as the destination and pick the authorizer. 4. Select the target object and the write mode. 5. Set the schedule and click Save. ## Troubleshooting ### Cannot connect to Klaviyo Reauthorize the Klaviyo connection and make sure the account has permission to write the target object. ### Rows are rejected Klaviyo rejected rows that break its field rules (required fields, value formats, or duplicate keys). Fix the source data or the field mapping and restart the flow. ## Related Articles - [Data Backfilling to Storages](https://docs.dataddo.com/docs/data-backfilling-to-storages) - [Write Modes](https://docs.dataddo.com/docs/data-storages#write-modes) - [Implementation of Batch Ingestion to Data Warehouses](https://docs.dataddo.com/docs/ingestion-to-data-warehouses) - [Network Access Control List (ACL) Configuration](https://docs.dataddo.com/docs/network-acl) - [SSH Tunnelling](https://docs.dataddo.com/docs/ssh-tunnelling) - [Data Transformations](https://docs.dataddo.com/docs/data-transformations) - [Data Quality Firewall](https://docs.dataddo.com/docs/data-quality-firewall)