Skip to main content
Fill in each section below. Examples use Doughnut Labs, an invented company that sells Doughnut Technology. Replace the greyed E.g. lines with your own numbers.
This is not a new report. Before filling it in, sum the raw numbers (spend, revenue, orders, and so on) from the flat file across every week in this month, then recalculate every ratio, ROAS, conversion rate, contribution margin, from those summed totals. Never average the four weekly ratios directly; see data quality and rollup concepts for why that produces the wrong number. Once the month’s totals are correct, this report is mostly analysis and writing.

Setup

Executive summary

Five sentences, written last, after the rest of the report is done.
Write this last, since it’s hard to summarize an analysis you haven’t done yet. A useful test: swap in a different month’s numbers and see if the prose still holds up. If it does, it’s too generic to be worth reading. “Performance was strong with continued improvements across key channels” passes that test and says nothing; naming the actual mechanism, a bundle lifting average order value while quietly compressing margin, is what makes a summary worth reading on its own.

Performance against target

Rolled up from the flat file: sum the month’s weekly inputs, then recalculate each ratio. Verdict: E.g. Hit, on the north star and counter-metric both. In one sentence, why: E.g. Volume ran slightly over plan and margin held, so the extra spend was efficient rather than wasteful.

What drove the result

Two or three paragraphs, working down the KPI tiers: the tier 2 drivers explaining the tier 1 outcome. E.g. Contribution margin held at target despite the bundle launch pulling average margin per order down 4 points, because average order value rose 12% and more than offset it. Blended acquisition cost was flat month over month, so the margin story is a product-mix effect, not an efficiency change. This section is what justifies the report existing rather than the table above speaking for itself.
Work down the tiers rather than stopping at the first level. “Margin held because average order value rose” is one step; naming why average order value rose, a bundle launch, a price change, a shift toward higher-ticket products, is the actual explanation a reader can act on. “Margin held” restates the table above it and adds nothing.

Channel performance

One line of commentary per channel that moved meaningfully. Say nothing about channels that didn’t.

Tests

Include tests that failed, not only the ones that won.

What changed

Pulled from the data dictionary change log for this month.

Next month

Actions

Every action needs an owner and a date.
Data through: E.g. 2026-06-30 · Attribution: E.g. 7-day click, multi-touch · Definitions: Data dictionary · If sent before finance close: cost figures are estimated and will be reconciled next month.
Last modified on July 24, 2026