> ## Documentation Index
> Fetch the complete documentation index at: https://docs.adriel.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Data reference

> Metrics, breakdowns, refresh cadence, and limits for the Klaviyo Reporting data source in Adriel.

## Introduction

Klaviyo Reporting is a distinct Adriel connector from the base Klaviyo integration. It queries Klaviyo's dedicated series-report endpoints for forms, flows, and campaigns — the same endpoints Klaviyo's own reporting UI uses — so the numbers reconcile against the Klaviyo dashboard. At connection time the user picks one Type (Forms, Flows, or Campaigns); each Type has its own set of statistics and its own set of breakdowns.

As a CRM connector, statistics and breakdowns are standardized so widgets can aggregate alongside ad-platform and e-commerce sources without additional configuration.

To connect this data source, see [How to connect Klaviyo Reporting to Adriel](/data-sources/g-n/klaviyo-reporting/how-to-connect).

## Data refresh strategy

### Architecture data

Klaviyo Reporting does not import a separate architecture tree. For flows and campaigns the connector fetches a list of assets (flow IDs and names; campaign IDs and names across the email, SMS, and mobile-push channels) to power the report queries; these lists are refreshed on each cache cycle.

### Reports data

**Daily cache.** Report data is fetched from Klaviyo on a daily schedule; dashboards read from the cached snapshot rather than triggering live requests.

**Refresh schedule.** The cache refreshes **daily at 3:00 PM UTC** on a **rolling 7-day** window.

**Initial back-fill.** After connection, the last **60 days** of historic data is retrieved.

**Send-date attribution.** Klaviyo Reporting attributes data to the campaign or flow **send date** (matching Klaviyo's own reporting UI), unlike the base Klaviyo connector which attributes to the event date.

## Type behavior

| Type      | Klaviyo endpoint          | Statistic schema        | Conversion metric required |
| --------- | ------------------------- | ----------------------- | -------------------------- |
| Forms     | `form-series-reports`     | 12 form statistics      | No                         |
| Flows     | `flow-series-reports`     | 27 messaging statistics | Yes                        |
| Campaigns | `campaign-values-reports` | 27 messaging statistics | Yes                        |

<Note>
  **Rate limits are per endpoint per API key.** Klaviyo Reporting enforces a **1 request/second**, **2 requests/minute**, and **225 requests/day** limit on each of the three reporting endpoints, plus a **2 requests/minute** ceiling per account. Very large accounts or wide date ranges may be throttled ([Klaviyo Campaign Values Report reference](https://developers.klaviyo.com/en/reference/query_campaign_values)).
</Note>

## Date range limits

| Breakdown                    | Max range                                                        |
| ---------------------------- | ---------------------------------------------------------------- |
| Daily                        | 93 days                                                          |
| Weekly                       | 1 year                                                           |
| Monthly / Quarterly / Yearly | No explicit cap (bounded by the 60-day initial back-fill window) |

## Metrics

<Note>
  **How to read the columns**

  **Data type** uses this vocabulary: Number, Currency, Percentage, Ratio, Duration, Date, Text, URL, Array, Boolean.

  **API Key** in code style like `opens` is the literal Klaviyo Reporting API field. Metrics are grouped by which Type they apply to — Forms have their own schema; Flows and Campaigns share the messaging schema.
</Note>

### Forms — engagement (Forms Type only)

| Metric                       | Description                         | Data type  | API Key                       |
| ---------------------------- | ----------------------------------- | ---------- | ----------------------------- |
| Viewed form                  | Total times the form was viewed.    | Number     | `viewed_form`                 |
| Viewed form (unique)         | Unique viewers of the form.         | Number     | `viewed_form_uniques`         |
| Viewed form step             | Total form steps viewed.            | Number     | `viewed_form_step`            |
| Viewed form step (unique)    | Unique viewers of a form step.      | Number     | `viewed_form_step_uniques`    |
| Submitted form step          | Total form steps submitted.         | Number     | `submitted_form_step`         |
| Submitted form step (unique) | Unique submitters of a form step.   | Number     | `submitted_form_step_uniques` |
| Submits                      | Total form completions.             | Number     | `submits`                     |
| Submit rate                  | Submits divided by views.           | Percentage | `submit_rate`                 |
| Qualified form               | Total qualified form interactions.  | Number     | `qualified_form`              |
| Qualified form (unique)      | Unique qualified form interactions. | Number     | `qualified_form_uniques`      |
| Closed form                  | Total times the form was closed.    | Number     | `closed_form`                 |
| Closed form (unique)         | Unique users who closed the form.   | Number     | `closed_form_uniques`         |

### Messaging — delivery (Flows and Campaigns)

| Metric                 | Description                        | Data type  | API Key                  |
| ---------------------- | ---------------------------------- | ---------- | ------------------------ |
| Recipients             | Total send recipients.             | Number     | `recipients`             |
| Delivered              | Successfully delivered messages.   | Number     | `delivered`              |
| Delivery rate          | Delivered divided by recipients.   | Percentage | `delivery_rate`          |
| Bounced                | Bounced messages.                  | Number     | `bounced`                |
| Bounce rate            | Bounced divided by recipients.     | Percentage | `bounce_rate`            |
| Failed                 | Send failures.                     | Number     | `failed`                 |
| Failed rate            | Failures divided by recipients.    | Percentage | `failed_rate`            |
| Bounced or failed      | Combined bounced and failed count. | Number     | `bounced_or_failed`      |
| Bounced or failed rate | Combined rate.                     | Percentage | `bounced_or_failed_rate` |

### Messaging — engagement (Flows and Campaigns)

| Metric             | Description                            | Data type  | API Key              |
| ------------------ | -------------------------------------- | ---------- | -------------------- |
| Opens              | Total message opens.                   | Number     | `opens`              |
| Opens (unique)     | Unique openers.                        | Number     | `opens_unique`       |
| Open rate          | Unique opens divided by delivered.     | Percentage | `open_rate`          |
| Clicks             | Total clicks.                          | Number     | `clicks`             |
| Clicks (unique)    | Unique clickers.                       | Number     | `clicks_unique`      |
| Click rate         | Unique clicks divided by delivered.    | Percentage | `click_rate`         |
| Click-to-open rate | Unique clicks divided by unique opens. | Percentage | `click_to_open_rate` |

### Messaging — audience health (Flows and Campaigns)

| Metric                | Description                        | Data type  | API Key               |
| --------------------- | ---------------------------------- | ---------- | --------------------- |
| Unsubscribes          | Total unsubscribes.                | Number     | `unsubscribes`        |
| Unsubscribes (unique) | Unique unsubscribers.              | Number     | `unsubscribe_uniques` |
| Unsubscribe rate      | Unsubscribes divided by delivered. | Percentage | `unsubscribe_rate`    |
| Spam complaints       | Total spam complaints.             | Number     | `spam_complaints`     |
| Spam complaint rate   | Complaints divided by delivered.   | Percentage | `spam_complaint_rate` |

### Messaging — conversions (Flows and Campaigns; requires Conversion Metric)

<Note>
  Conversion metrics are computed against the Conversion Metric selected at data source creation (usually `Placed Order`). If no Conversion Metric is configured, these fields are null.
</Note>

| Metric                | Description                              | Data type  | API Key                 |
| --------------------- | ---------------------------------------- | ---------- | ----------------------- |
| Conversions           | Total conversion events.                 | Number     | `conversions`           |
| Conversion uniques    | Unique converters.                       | Number     | `conversion_uniques`    |
| Conversion rate       | Conversions divided by delivered.        | Percentage | `conversion_rate`       |
| Conversion value      | Total conversion value.                  | Currency   | `conversion_value`      |
| Revenue per recipient | Conversion value divided by recipients.  | Currency   | `revenue_per_recipient` |
| Average order value   | Conversion value divided by conversions. | Currency   | `average_order_value`   |

## Breakdowns

<Note>
  **Type-scoped.** The breakdowns available depend on the Type selected at connection time — Forms expose form-scoped breakdowns, Flows and Campaigns expose their own asset-scoped breakdowns.
</Note>

### Forms Type

| Breakdown | Description    | API Key   |
| --------- | -------------- | --------- |
| Form      | Group by form. | `form_id` |

### Flows Type

| Breakdown    | Description                     | API Key           |
| ------------ | ------------------------------- | ----------------- |
| Flow         | Group by flow.                  | `flow_id`         |
| Flow message | Group by message within a flow. | `flow_message_id` |

### Campaigns Type

| Breakdown        | Description                                             | API Key            |
| ---------------- | ------------------------------------------------------- | ------------------ |
| Campaign         | Group by campaign.                                      | `campaign_id`      |
| Campaign channel | Group by campaign channel — email, SMS, or mobile push. | `campaign_channel` |

### Time & date grouping

<Note>
  These breakdowns are provided by Adriel and applied to the cached time series, not native Klaviyo fields.
</Note>

| Breakdown           | Description                                                  |
| ------------------- | ------------------------------------------------------------ |
| Auto Time Breakdown | Automatically picks the best granularity for the date range. |
| Daily               | Split reports by day.                                        |
| Weekly (Start: Mon) | Split reports by ISO week, starting Monday.                  |
| Weekly (Start: Sun) | Split reports by week, starting Sunday.                      |
| Monthly             | Split reports by calendar month.                             |
| Quarterly           | Split reports by calendar quarter.                           |
| Yearly              | Split reports by calendar year.                              |

### Overview & status

<Note>
  These breakdowns are provided by Adriel, not native Klaviyo fields.
</Note>

| Breakdown       | Description                                   |
| --------------- | --------------------------------------------- |
| No Grouping     | Do not break down; return one aggregated row. |
| Datasource Name | Group by Adriel datasource name.              |

## Limitations

* **Type is fixed at connection time.** To report on a different Type (Forms / Flows / Campaigns), create a separate data source with that Type selected.
* **Conversion Metric is fixed at connection time** for Flows and Campaigns.
* **60-day initial back-fill.** Data older than 60 days from connection date cannot be retrieved.
* **Per-endpoint daily API quota.** Klaviyo enforces `225 requests/day` per reporting endpoint per API key; very large accounts or very wide date ranges may exhaust the daily quota and pause sync until the quota resets.
* **Send-date attribution.** Numbers reconcile against the Klaviyo reporting UI (send date), not against the base Klaviyo connector (event date).
* **Campaigns fetched day-by-day.** The Campaigns endpoint returns single-day data only, so wide date ranges consume proportionally more of the daily quota.
* **Forms endpoint returns a single call, not paginated.** Very large accounts may see truncated results; monitor for row-count warnings.

## API references

* [Klaviyo Reporting API overview](https://developers.klaviyo.com/en/reference/reporting_api_overview)
* [Form series report](https://developers.klaviyo.com/en/reference/query_form_series)
* [Flow series report](https://developers.klaviyo.com/en/reference/query_flow_series)
* [Campaign values report](https://developers.klaviyo.com/en/reference/query_campaign_values)

## See also

* [How to connect Klaviyo Reporting to Adriel](/data-sources/g-n/klaviyo-reporting/how-to-connect) (paired how-to)
* [Klaviyo data reference](/data-sources/g-n/klaviyo/data-reference) — base connector (event-time attribution)
* [Mailchimp data reference](/data-sources/g-n/mailchimp/data-reference) — alternative email marketing platform
* [Constant Contact Email data reference](/data-sources/a-f/constant-contact-email/data-reference) — alternative email marketing platform
