esc
Monitoring & health

The Campaign Performance report

Which campaigns turned into orders and what they were worth, how the date filter works, what Export gives you, and how to make the totals agree with the Dashboard.

The Campaign Performance report answers one question: which Mailchimp campaigns became orders, and how much those orders were worth. The credit is never the extension’s to give. Mailchimp decides which campaign an order belongs to, and the extension records that verdict as each order syncs; the report simply adds it up. It is built so its totals agree with your Dashboard for the same store and the same period, and this page shows you how to prove that.

Where to find it

Open Marketing → Intuit Mailchimp → Dashboard and pick Campaign Performance from the navigation below the page title. Depending on your version it sits in the tab strip itself, or under Logs & Reports in the strip’s menu button, the three-line icon at the end of the strip.

One row per campaign, per currency

Each row is one campaign in one currency. Revenue is never converted between currencies, so a campaign that sold in both EUR and USD appears as two rows, each in its own money, with a Currency column to tell them apart. On a single-currency store this is simply one row per campaign.

The Campaign column reads one of three ways:

  • The campaign’s name, as it is called in Mailchimp.
  • Attributed to a Mailchimp campaign — Mailchimp credited a campaign the extension has no name for yet. The row is real; only the label is missing.
  • Recovered carts (no campaign) — orders that came back from an abandoned cart which Mailchimp attributed to no campaign at all. This row exists so the rows still add up to the Dashboard total rather than quietly falling short of it.

What the columns mean

Column What it is
Campaign The campaign, in one of the three forms above. Where a link is available, it opens that campaign in Mailchimp.
Type Mailchimp’s own outreach type: Regular, Plain text, Automation, RSS, Multivariate or A/B split.
Sent (GMT) When Mailchimp sent the campaign. Empty where there is no single send time, as with an automation, and empty until the campaign’s details have been fetched from Mailchimp.
Currency The order’s base currency. It is a grouping axis, not decoration: two currencies are always two rows.
Orders Orders Mailchimp drove, excluding canceled ones.
Of which recovered How many of those same orders came back from an abandoned cart. A subset of Orders, never an addition to it.
Revenue The orders’ base grand totals added up, in the row’s own currency.
AOV The row’s revenue divided by the orders that actually produced that revenue, not by the Orders count beside it. Shown as — when no order on the row contributed revenue, never as 0.00. It describes one row and is never something to add up.
First attributed order (GMT) and Last attributed order (GMT) The first and last order on that row, so you can see the span a campaign has been earning over.

Rows are sorted by Orders, largest first, until you sort them otherwise. Searching the Campaign column matches the name Mailchimp gives the campaign, so rows that have no name yet are correctly left out of a name search.

"Of which recovered" is part of Orders, never added to it

An abandoned-cart automation is a campaign, so most attributed rows also carry recoveries. Of which recovered tells you how many of that row’s orders arrived that way. Adding the two columns together counts those orders twice and overstates what Mailchimp earned you. The report never prints a total of the two, and neither should you.

What counts, and what doesn’t

Two rules, and they deliberately differ, because the two columns answer different questions.

  • Orders excludes canceled orders only. A fully refunded order still happened and the campaign still drove it, so it is still counted as an order.
  • Revenue additionally excludes fully refunded orders. Counting the value of an order whose money went back would overstate what you earned.

So a campaign whose only order was fully refunded honestly shows one order and no revenue. That asymmetry is intended.

Partial refunds are not deducted. Revenue is the amount the order was placed for. If you refunded part of an order, the report still carries the original total, so treat these figures as gross.

The Order date (GMT) filter

The Order date (GMT) filter scopes the whole report. Every figure on every row — orders, revenue, AOV, the recovered count, the first and last dates — is measured over orders placed inside the range. It is the order’s date that matters, not the day the campaign was sent and not the day the order reached Mailchimp.

Three things worth knowing:

  • It is GMT, not your admin’s local time. The dates you type are read as GMT, so the window is the same one every other GMT-labelled figure in the extension uses. There is no silent shift into your own timezone.
  • Both ends are included, whole days. A From date starts at 00:00:00 GMT that day and a To date runs to 23:59:59 GMT, so an order placed late on the last day of your range is inside it.
  • Leave it empty and you get everything. There is no default range; with no dates set, the report covers your whole order history.

The Store control beside it scopes the report to one store view, and it lists the store views you have connected to Mailchimp. Left on All Stores, the report aggregates across stores. That is a legitimate view, but it is one nothing else in the extension shows you, which matters for the next section.

Export

Export is on the grid’s toolbar and offers CSV and Excel XML.

What it guarantees:

  • The same query, under the same filters. Whatever store and date range you have applied is applied to the file. The file is what is on your screen, not a different slice of the data.
  • Everything that matched, not just the page you are looking at. Export walks the entire filtered result set, however many pages it runs to.
  • Numbers as numbers. Counts and money come out unformatted, so a spreadsheet can add them straight back up and compare them against the Dashboard. Campaign names and types come out as words, exactly as the screen shows them.
  • Tick rows to export only those. With nothing ticked you get the full filtered set; tick some rows and the button says so, and exports only your selection.

Make the totals agree with the Dashboard

This is what the report is for. The Dashboard’s Conversions panel and this report are built from the same orders, with the same rules, so with the two scoped alike they reconcile exactly.

Do this:

  1. Pick one store. On the report, set the Store control to the same store view the Dashboard is showing. The Dashboard is always about a single connected store, so All Stores has nothing to reconcile against; a cross-store total compared to a single-store panel will never agree, and that is the most common reason merchants think the numbers are wrong.
  2. Clear the Order date (GMT) filter. The Conversions panel covers your whole history, so an empty date range is the matching period. If you set a range on the report, you are asking a narrower question than the Dashboard is answering.
  3. Add up the columns. Export the report and total it in a spreadsheet, or read it off the screen if you have only a few rows.

With the two scoped the same way, all four of these hold:

Add up this on the report And it equals this on the Dashboard
The Orders column, every row The Conversions headline: the orders Mailchimp drove
The Revenue column, per currency The Conversions revenue for that currency
Of which recovered, every row The recovered-carts breakdown
Orders on the rows that name a campaign The campaign-attributed breakdown
Why the "no campaign" row has to be there

The last two lines of that table are the reason Recovered carts (no campaign) is shown rather than hidden. A recovered cart Mailchimp credited to no campaign is still an order Mailchimp drove, so the Dashboard headline counts it. Drop that row and the report would total less than the panel it is meant to prove, with nothing on screen to explain the gap.

If the figures still disagree after both are scoped the same way, Why your numbers differ from Mailchimp covers the other places these numbers are measured differently, and Troubleshooting has the checks for orders that never reached Mailchimp at all.

Mailchimp’s Reports are the last word

Everything here is Mailchimp’s attribution verdict, recorded on your side as each order synced. It is a faithful copy of what Mailchimp decided, kept in your admin so you can filter it, export it and reconcile it against your own store. Where the two ever differ, Mailchimp’s own campaign Reports are authoritative.

The report deliberately carries no opens, clicks or click-through rates. Mailchimp owns engagement reporting and does it far better; the per-row link through to the campaign in Mailchimp is the honest answer to “how did the campaign itself perform?”.

Questions along the way? Troubleshooting has the answers, and ebizmarts support is one email away.

Next: NotificationsA small, quiet channel from ebizmarts to your Magento admin. New versions, new features and security notices, and nothing else.