> For the complete documentation index, see [llms.txt](https://docs.coupler.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coupler.io/sources/category/marketing/klaviyo/best-practices.md).

# Best Practices

## Recommended setup

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Choose the right report entity for your goal</strong></td><td>Campaign performance report, Flow performance report, Segment performance report, and Forms performance report correspond directly to the Reports section in the Klaviyo UI — they return the same aggregated stats you see there. Use Metrics analytics when you need account-wide event trends for any standard or custom metric. The core entities (Campaigns, Flows, Segments, Forms) return metadata only — no performance numbers.</td></tr><tr><td><strong>Join performance reports with core entities for additional details</strong></td><td>Performance reports group results by IDs (campaign_id, flow_id, segment_id). To enrich them with metadata from the matching core entity — names, status, channel, tags, and other attributes — add Campaigns, Flows, or Segments as a second source in the same data flow and use Coupler.io's Join transformation to combine on the ID. Alternatively, use a Coupler.io dataset template or dashboard template that has the join pre-built.</td></tr><tr><td><strong>Use Append to combine multiple accounts</strong></td><td>If you manage Klaviyo for multiple brands or clients, create a separate data flow per account and use the Append transformation to merge them into one dataset.</td></tr></tbody></table>

## Data refresh and scheduling

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Do a manual run to verify your setup</strong></td><td>Before relying on scheduled runs, run the data flow manually and check that the data in your destination looks correct. This confirms your API key, entity, and date range are configured as expected.</td></tr></tbody></table>

## Performance optimization

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Use only the dimensions you need in Metrics analytics</strong></td><td>Klaviyo returns metrics for records that match ALL selected dimensions together (AND logic), not for each dimension independently. The more dimensions you add, the more records get excluded — resulting in incomplete data rather than just slower queries. Only include dimensions you'll actually use in your report. If you need the same metric broken down by different dimension combinations, add each as a separate source within the same data flow and use the Append transformation to combine the results.</td></tr><tr><td><strong>Use the Split data by period setting for trend analysis</strong></td><td>Instead of exporting a flat aggregate for the whole date range, use the Split data by period setting in Coupler.io to get time-series data broken down by hour, day, week, or month. Flow performance report, Segment performance report, and Forms performance report all support this setting. Campaign performance report always returns totals only — it has no time-series option.</td></tr><tr><td><strong>Be mindful of the 225 requests/day limit on performance reports</strong></td><td>Each performance report entity — Campaign, Flow, Segment, and Forms — has its own hard limit of 225 API requests per day imposed by Klaviyo. Coupler.io applies all available optimizations automatically, but very large date ranges can still exhaust the limit for a given report type. Choose the shortest date range that meets your reporting needs.</td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.coupler.io/sources/category/marketing/klaviyo/best-practices.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
