Blog · Board and management reporting
Email campaign KPIs need clear denominators for delivery, clicks, and attributed conversions. This worked comparison shows how to read campaign CSV exports, check totals, and distinguish recorded attribution from incremental sales.
KPI email reporting measures campaign delivery, clicks, and attributed conversions using a separate, stated denominator for each. Compare the figures only after aligning the reporting window, recipient counting rules, and source attribution fields.
Delivery answers whether the sending system reports a message as delivered. It does not establish that the message reached the inbox or was read. Click rate answers how many delivered messages produced a recorded click under the source system's rules.
For example, Mailchimp defines click rate around delivered emails that registered at least one click. A total-click count is different: one person can click repeatedly. Use a unique recipient-and-campaign count for the comparison below, with automated activity excluded under the same source filtering policy.
Opens need particular care. Apple explains that Mail Privacy Protection downloads remote content in the background regardless of engagement. A tracking-image load therefore cannot reliably establish that the recipient read the message. Covirage is not affiliated with Mailchimp or Apple.
A useful KPI pairs a business question with an auditable calculation. Decide whether the question is reach, interest, or purchasing before selecting the leading number.
Northline Workwear, a fictional US retailer, compares two campaigns whose attribution windows have both closed. The source rule assigns an order to the last qualifying email click within seven days before purchase. Each included buyer therefore belongs to that campaign's unique clicker population.
The files contain one sent message per recipient per campaign. Counts below are unique within each campaign; recipients may appear in both. Delivery status is final at extraction, and every sent message is classified as delivered or bounced for this example.
| Campaign | Sent messages | Bounced messages | Delivered messages | Unique clickers | Attributed buyers | Unsubscribes |
|---|---|---|---|---|---|---|
| Restock | 10,000 | 200 | 9,800 | 490 | 98 | 49 |
| Reorder | 8,000 | 400 | 7,600 | 456 | 114 | 38 |
| Total campaign counts | 18,000 | 600 | 17,400 | 946 | 212 | 87 |
The order export supplies net merchandise sales after recorded discounts and returns. Each buyer in this example placed one attributed order, and each order belongs to only one campaign under the stated rule.
| Campaign | Attributed orders | Attributed net sales (USD) |
|---|---|---|
| Restock | 98 | 11,760 |
| Reorder | 114 | 13,680 |
| Total | 212 | 25,440 |
Do not call the total clicker or buyer counts unique people across the whole program. They are sums of campaign-level counts. To report distinct people across campaigns, deduplicate the recipient or customer identifiers across the combined population.
Delivery rate = Delivered messages / Sent messages
Unique click rate = Unique clickers / Delivered messages
Buyer conversion per delivery = Attributed buyers / Delivered messages
Buyer conversion after click = Attributed buyers / Unique clickers
Net sales per delivery = Attributed net sales / Delivered messages
The same rows give different answers to different questions:
| Measure | Restock calculation | Reorder calculation |
|---|---|---|
| Delivery rate | 9,800 / 10,000 = 98.0% | 7,600 / 8,000 = 95.0% |
| Unique click rate | 490 / 9,800 = 5.0% | 456 / 7,600 = 6.0% |
| Buyer conversion per delivery | 98 / 9,800 = 1.0% | 114 / 7,600 = 1.5% |
| Buyer conversion after click | 98 / 490 = 20.0% | 114 / 456 = 25.0% |
| Unsubscribe rate per delivery | 49 / 9,800 = 0.5% | 38 / 7,600 = 0.5% |
| Net sales per delivery | 11,760 / 9,800 = 1.20 USD | 13,680 / 7,600 = 1.80 USD |
Rates are rounded to one decimal place and monetary values to cents. Reorder has fewer delivered messages but more attributed buyers and higher net sales per delivery. Its lower delivery rate also warrants investigation; stronger purchase results do not explain why more messages failed delivery.
The email owner investigates delivery classifications and list composition. The commercial owner checks the offer, eligible audience, and order economics. B2C KPIs extend that last check to repeat purchasing and gross margin without treating campaign revenue as profit.
Keep every Restock input unchanged except unique clickers: increase that count from 490 to 588. This is a sensitivity example, not a claim that another campaign produced the change.
| Restock variation | Original | Changed clicker count |
|---|---|---|
| Delivered messages | 9,800 | 9,800 |
| Unique clickers | 490 | 588 |
| Attributed buyers | 98 | 98 |
| Unique click rate | 5.0% | 588 / 9,800 = 6.0% |
| Buyer conversion after click | 20.0% | 98 / 588 = 16.7% |
| Buyer conversion per delivery | 1.0% | 1.0% |
Clicks rise while buyer yield per delivery stays unchanged. That is why a click improvement alone should not close the sales campaign review. Check the landing experience and purchase population before interpreting the lower conversion after click.
First, sent messages must equal delivered plus bounced messages: 18,000 equals 17,400 plus 600. Investigate pending statuses before applying that identity to another export.
Next, match attributed order IDs to the order file and exclude repeated order totals across line items. The $11,760 and $13,680 must sum to $25,440, with return adjustments treated consistently. These figures describe source attribution; they do not measure incremental sales caused by email.
Finally, pool counts before calculating a program rate. The pooled click rate is 946 / 17,400 = 5.4% after rounding, rather than the unweighted average of 5.0% and 6.0%, which is 5.5%. For reporting design, dashboard software checks explain why the total needs its own calculation.
Upload the campaign CSV and matching attributed-order file, or bring a Google Sheet, with the source attribution window stated. Covirage maps the columns, and its tools compute the comparisons and check the figures from those files. The external AI model explains the results with every figure traced to its rows.
Create a free Covirage account and bring a sample of your own data; creating the account takes about a minute.
See self-service analytics for the supporting business use.
Choose the measure that matches the campaign's purpose. A sales campaign needs attributed buyers or orders alongside net sales; an information campaign may focus on qualified clicks. Delivery and unsubscribe rates provide context because the outcome depends on which recipients were reached.
Both can be useful when labeled. Buyers divided by delivered messages measures the whole campaign's recorded yield. Buyers divided by unique clickers measures the purchase outcome after a tracked click. The latter requires buyers to belong to that same clicker population.
An open is usually inferred from loading remote content rather than direct evidence that someone read a message. Privacy protections and automated activity can change those loads. Keep opens as context and use filtered clicks and matched business outcomes for stronger evidence.
No. Attribution assigns sales according to a specified rule, such as a recorded click within a time window. Some customers might have bought anyway. Estimating incremental impact requires a separate comparison designed to answer that question, rather than relabeling attributed sales.