Updated on
Apr 15, 2026
While working with your Klaviyo connection, you may encounter data discrepancies between Improvado and Klaviyo UI. Understanding these common causes can help identify and resolve differences.
Cause 1: Multiple integrations creating duplicate metric names
Some accounts have multiple integrations (e.g., Shopify, Magento, API) that create separate metrics with the same name. By default, the extraction may pull data from the wrong integration.
Specify ```klaviyo_metric_integration``` setting to define which integration's metrics to use. Contact the Improvado team to configure this for your account.
Cause 2: Comparing different metrics
Klaviyo has separate metrics for different order stages. If you're comparing ```placed_order_value``` in Improvado against ```fulfilled_order_value``` in Klaviyo UI, values will differ.
Verify you're comparing the same metric in both systems. If you need a different metric in your dashboard, contact the Improvado team to update the configuration.
Order data includes all orders, not just those attributed to Klaviyo emails.
By default, the API returns all orders regardless of attribution.
To return only Klaviyo-attributed orders, split the query by Campaign ID or Flow ID.
Metrics like opens, clicks, or revenue don't match Klaviyo UI reports when filtered by date.
Klaviyo has two different date attribution models:
Klaviyo UI typically uses the send-date model, while the API's Query Metric Aggregates endpoint uses the event-date model.
If you need to match Klaviyo UI numbers exactly, use the Campaign Values report type instead of Campaign Stats.
Revenue or events appear on dates when no campaigns were sent. For example:
Data can be shifted by several hours due to timezone handling, which in some cases results in events appearing on a different calendar day than expected.
If you notice date-level discrepancies where data appears to be shifted by hours or landing on wrong dates, contact the Improvado team to verify the timezone configuration for your extraction.
{%docs-informer info%} This is separate from the "event date vs. send date" attribution issue. Even with correct attribution settings, timezone misalignment can cause daily totals to differ. {%docs-informer-end%}
Unique opens, unique clicks, or unique open/click rates don't match the UI. Rates may exceed 100%.
Klaviyo calculates unique metrics based on the requested date granularity. The campaign_stats report contains daily data, so unique metrics are calculated per day. Additionally, open/click rates can exceed 100% when the receive and open events occur on different calendar days.
Use the ```unique_metrics_by_campaign_month``` report type if you don't need daily breakdown, or JOIN unique metrics from this report to campaign_stats.
Values of non-unique metrics (e.g., Total Opens) differ slightly from Klaviyo UI.
This is due to how Klaviyo's attribution model works. The UI attributes revenue to the date of the last email sent, while the API attributes Placed Order / Placed Order Value to the date the order was actually made.
{%docs-informer info%} This is a known limitation. Our Engineering team is working on improving alignment. {%docs-informer-end%}
Total Opens or other non-unique metrics are higher in Klaviyo's exported CSV than in the API.
If the exported report includes additional columns like "Group ID" or "List/Segment," profiles that belong to multiple segments are counted multiple times in the export.
Compare against segment-agnostic totals, or be aware that segment breakdowns will inflate counts for profiles in multiple segments.
The number of subscribed/unsubscribed profiles doesn't match the Klaviyo UI.
Klaviyo's UI applies different processing to consent data that is not available via the API.
The number of records in list or segment tables exceeds the actual profile count in Klaviyo.
When profiles are added to a list or segment, the corresponding records in the ```LIST_PERSON``` and ```SEGMENT_PERSON``` tables are updated during the next incremental sync. However, when profiles are removed, records are soft deleted only during the next weekly re-sync.
As a result, the number of records in these tables may temporarily exceed the number of profiles in the source until the next full re-sync occurs.
Campaign ID joins fail or under-count records. The ```campaign_id``` column contains unexpected values.
The ```$message``` field from Klaviyo's ```/events``` API endpoint is used to sync the ```campaign_id``` column of the EVENT table. According to Klaviyo, what the ```$message``` field contains depends on the ```$flow```field:
The ```campaign_id``` column should contain the ID of a campaign object or flow object. However, in some cases the ```$message``` field returns a campaign-message object ID instead of the parent campaign ID, causing joins to fail or under-count.
Large initial syncs or historical re-syncs are slow or fail due to rate limits.
Klaviyo enforces rate limits on the Reporting API. Large backfills can exceed these limits, causing extraction failures or partial data.
Configure the Historical sync time frame when setting up your connector to speed up both the initial sync and subsequent re-syncs.
API totals don't match the Klaviyo Metrics view or other analytics views in the UI.
Klaviyo attributes revenue differently across its analytics views. In most views, Klaviyo attributes revenue to the date of the last email sent. However, the API returns Placed Order and Placed Order Value attributed to the date the order was actually made.
The API data corresponds to Klaviyo's Metrics view (under Analytics), which is where comparisons should be made — not against other Klaviyo reports.
As an additional limitation, The Klaviyo Metrics view does not always display all data if the data volume is too large, which can create apparent discrepancies that don't actually exist.
Both the Metrics view and Custom report are available under Analytics in Klaviyo.
Improvado team is always happy to help with any other questions you might have! Send us an email.
Contact your Customer Success Manager or raise a request in Improvado Service Desk.