How to build a campaign performance report
You will learn
Learn more about the campaign performance report, where to find it in Klaviyo, and how to customize it to better serve your business. The campaign performance report lets you analyze campaign-specific engagement and conversion data. This report helps you get up and running quickly by providing a pre-made report with standard engagement and deliverability metrics. Select Campaign Message to break down results by individual campaign message. Tailor it to your needs by customizing the metrics you want to analyze and focusing that analysis using tags and time range filters.
The campaign performance report can help you answer questions like:
- How have my product launch campaigns performed over the last year?
- What does my conversion funnel look like for campaigns sent over the last 90 days compared across different conversion metrics, including attributed site visits, checkouts, and purchases?
Build your report
1. Navigate to Analytics > Custom reports.
2. Click Create from scratch to follow the steps below. You can also browse prebuilt reports by clicking Reports Library.

3. Under Report Type, select Campaign Performance Report from the dropdown.
4. Give your report a name.

Customizing your report
From there, customize your report to best serve your business needs. By default, the report is pre-populated with the standard deliverability and engagement metrics related to your channels in Klaviyo. Email metrics are included, with text message, mobile push, and WhatsApp metrics added when those channels have recorded delivery activity in your account.

1. Choose what metrics you want to analyze in your report, adding to or removing from the automated selection. If any pre-populated metric is irrelevant to your needs, remove it by clicking the X to the right of the metric’s name.
For example, to view only text message performance, remove the email, mobile push, and WhatsApp metrics, leaving the text message metrics selected. To re-add a metric, click in the metric selection field and select it from the dropdown.
You may also add up to 10 conversion metrics in addition to the pre-populated set that comes with the report. For example, select Placed Order and choose Rate to report on its conversion rate.
Text ROI, Text Credit Usage Amount, and Text Spend are available for messages sent on or after October 1, 2025. Text ROI and Text Spend are only available for non-contracted SMS customers. Contracted SMS customers see 0 for these 2 metrics for all time periods. Text ROI uses attributed revenue from the mapped revenue metric.
2. Select + Add Conversion Metric to add these parameters to your analysis.

3. Once you have customized your report and added your desired conversion metric, the next step is to decide how you want to analyze those conversion metrics. With the exception of rates, all conversion metrics support 2 different dropdowns to customize your analysis:
- Total, Unique Profiles, or Value
You can report on the total number of instances of an event (Total) or the unique number of profiles that performed that event (Unique Profiles). If the metric you select has a monetary value associated with it (e.g., Placed Order), you can also report on the value of the events (Value). - SUM or AVG
You can choose 1 of 2 aggregations: SUM or AVG. SUM shows you the total of all events for your selected metric. For example, if there are 2 $15 Placed Order events attributed to your selected campaign messages, the VALUE SUM will be $30 and the TOTAL SUM will be 2. AVG shows the average of events that occurred for your metric. For example, if there are 2 $15 Placed Order events attributed to your selected campaign messages, selecting Value and AVG gives an average event value of $15.
4. Under Group by (choose up to 2), select how to organize your results. Choose Campaign Message for a row per campaign message, or List / Segment to compare the lists and segments you sent to. For guidance and best practices on segments, refer to our resource for segment ideas.

Segment-level data is only available from July 1, 2022 onwards. When you select List / Segment, choose a timeframe that starts on or after July 1, 2022. All Sent Campaigns and date ranges starting before that date produce an error. To run the report, choose a supported timeframe or deselect List / Segment.
The grouping options include:
- Grouping by list or segment
Select List / Segment to aggregate metrics across campaign messages for each list or segment. Each row shows a list or segment and channel, with its corresponding report metrics.

- Grouping by inbox provider
Select Inbox Provider to aggregate campaign performance by inbox provider. Note that only deliverability metrics will be shown and revenue will not be attributed to inbox providers.
Each row in your report will show data per inbox provider with additional corresponding deliverability metrics.

- Grouping by campaign message and list or segment
Select both Campaign Message and List / Segment to break down metrics by list or segment for each campaign message. Each row shows a list or segment and a campaign message, with its corresponding report metrics.

- Grouping by campaign message and inbox provider
Select both Campaign Message and Inbox Provider to break down deliverability metrics by inbox provider for each campaign message.

- Grouping by campaign variations
Select Campaign Message (including variations) to break down metrics by campaign variation. This option helps you compare the performance of your variations. Combine it with List / Segment to see variation performance for each list or segment. You cannot combine it with Inbox Provider.
Campaigns without variations show “N/A” under Variant Name.

- Grouping by message format
Select Message Format to break down text message performance by format, such as SMS, MMS, or RCS. You can combine it with List / Segment to compare formats across audiences.
You can select up to 2 compatible groupings. Campaign Message and Campaign Message (including variations) cannot be selected together. Unavailable combinations are disabled; deselect another option before selecting a new grouping.
The campaign performance report supports filtering by tags. Under Filter by Tags, click + Add Tag Filter and select your tags. For example, to view your product announcement campaigns, select the tag assigned to those campaigns. If you select multiple tags, a campaign must have all of them to be included.

5. Under Timeframe, select when the campaign messages were sent. The report includes their associated engagement and attributed conversions, including activity after the selected send-date range. If you leave all grouping checkboxes unselected, results are grouped by channel and the time interval you choose. Select Entire Range for a single row per included channel.
Time grouping is available only when all Group by checkboxes are unselected and you choose a timeframe other than All Sent Campaigns. This includes reports grouped by A/B email variations: deselect Campaign Message (including variations) before grouping by time.

You can adjust the time range to:
- All Sent Campaigns
- Sent Today
- Sent Yesterday
- Sent This Week
- Sent in Last 7 Days
- Sent Last Week
- Sent This Month
- Sent in Last 30 Days
- Sent Last Month
- Sent This Year
- Sent in Last 90 Days
- Sent in Last 365 Days
- Sent Last Year
- Custom
When time grouping is available, the interval choices depend on the selected timeframe:
- Day
- Week
- Month
- Entire Range
Note that timestamp data within your reports, including exported reports, will display in your account's local time from your settings. Additionally, if you are using custom date ranges, the maximum time range is 2 years. If you attempt to create a report with more than 2 years of data, an error will appear.
Run and export your report
Once you have customized your campaign performance report to include all of your desired engagement, deliverability, and conversion metrics — as well as timeframes, groupings, and filters — you are ready to run your report.
The message ID identifies the campaign message, while the experiment variation identifies a specific A/B test version. Exports grouped by Campaign Message include Campaign Message ID. Selecting Campaign Message (including variations) also includes Variant Name, but not the variation ID. Google Analytics data depends on the UTM parameters configured for your messages.
1. Click Save & Run Report. This will process your report and save it in your account.
While it may take some time to populate your results, when it is complete you will see a robust summary of your report. Your new report and its results will automatically be saved, so you may navigate away and return to your report from within the Analytics tab at any time.

When your report is complete, Results Preview shows a sample of the results. A timestamp of when the report was last run appears above the preview.
2. If you wish to export the full results of your report for further analysis, click Export.
Schedule your reports
You also have the option to schedule a report to auto-run at a specific date and time and be notified via email when your results are ready. This way, you can set up your reports to automatically run and pull data for your review instead of manually exporting them.
Learn how to schedule reports to automatically send to your inbox.
Update report results
Unless you have scheduled a report, you will need to manually re-run it to pull updated data. To see when a report was last updated, look at the Last Run timestamp from either the Custom Reports page or from within the report itself.
1. Reopen your report and click Save & Run Report.
2. To see results from previous runs, go to Custom Reports, open the three-dot menu to the right of the report, and select View History.

This shows the completed runs for your report.
3. To download a previous run, open the three-dot menu for that run and select Export.

Clone and rename reports
If you have an existing report that you would like to copy, use the clone option.
1. Go to Custom Reports and find the report that you want to clone.
2. Open the three-dot menu to the right of the report and select Clone Report.


Note that cloned reports do not include scheduling preferences from the original report. If you would like to schedule your copied report to deliver to you on a regular cadence, head to our guide on How to Schedule Custom Reports.
3. To rename your cloned report, open its three-dot menu and select Edit Name.

4. Rename your report in the modal that appears. Once you have renamed your report, click Save.
