“Is this good?” is the question clients ask, and most agencies have decided the answer is a benchmark slide. Pull a few industry averages, drop them next to your numbers, and the client can see where they stand. It feels like rigour. In practice it is the weakest page in the report, because industry averages are built from accounts that do not share your client’s product, market, buying model or objective. Useful client report benchmarks almost never come from the industry. They come from the account itself.
I am not arguing that context is optional. A number with no comparison is a number the client has to interpret alone, which means they will interpret it against whatever they half-remember from last quarter or heard in a conference talk. The argument is about where the comparison comes from and how much space it gets.
Industry averages are a comparison you can’t defend on the call
Say your report shows a 0.31% CTR on programmatic display and you put “industry average: 0.35%” beside it. You have now invited three questions you cannot answer. Which industry, defined how? Which formats, since standard display, high-impact and native sit in very different ranges? And which period, since display CTR figures published eighteen months ago were measured on a different inventory mix than the one you bought last month.
A client services director with a sceptical CFO in the room will push on exactly that. The honest answer is usually “it’s an aggregate from a vendor report,” and the moment you say it out loud, the comparison stops carrying weight. Worse, you have handed the client a target you did not agree to. If 0.35% is the standard, every month below it is a failure, including the months where you deliberately bought broad reach at a low CPM and accepted a lower CTR as the trade.
There is a narrower version of this that does work: a benchmark the client already uses. If their media agency network publishes internal norms, or the brand has a global CPM target written into the plan, comparing against that is legitimate because both sides accepted the number in advance. That is not an industry average. That is a contract.
The client report benchmarks that hold up come from the account itself
Last month, the same month last year, the campaign average since launch, the first two weeks versus the second two. These comparisons survive questioning because every input is yours. Same client, same product, same objective, same measurement setup, mostly the same buying decisions. When CPM moves 18% against last month, you can explain it, because you know what changed: a new format entered the mix, a retargeting pool got smaller, the auction got more expensive in the week the competitor launched.
That explainability is the whole point. A comparison is only worth printing if you can say why the delta exists. An industry average gives you a gap with no cause. Account history gives you a gap you can attach a reason to, which is what the client actually wants when they ask whether something is good. They are rarely asking for a percentile ranking. They are asking whether to worry.
The structural caveat: history is only a baseline if the measurement stayed stable. If you changed the conversion definition in March, March onwards is a new series and comparing it to February is dishonest even though both numbers came from your own account. Agreeing those definitions early is why the first few reporting decisions on a new account matter more than the dashboard design.
A delta is one line, not a new section
Here is where most reports go wrong even when they get the baseline right. The comparison gets its own section near the back, a “month over month” table that repeats every metric with three extra columns. Nobody reads it, because by the time the client reaches it they have already formed an opinion from the KPI tiles at the top.
Context has to sit where the number sits. Under each KPI tile, one line:
- CTR 0.31%: up from 0.27% last month
- CPM €4.12: in line with the €4.00 plan target
- Completed views 184,500: highest month since launch
- CPA €38.20: up from €31.40, driven by the two weeks of broad prospecting
Four words to twelve words. No colour-coded arrows that force a good/bad verdict on a metric where the verdict depends on the objective. The sentence does the work the arrow cannot, which is naming the comparison and, where it is not obvious, the cause. This is the same instinct behind annotating dips on the chart itself rather than explaining them in an email the client will not reopen.
Not every metric needs one. If you are showing six tiles rather than fourteen, six delta lines is a sentence of reading. Deeper tables can stay bare; the detail section is for the people who already know what good looks like.
When there is no history yet, say that
Month one has no baseline and pretending otherwise is the most common version of this mistake. Writing “CTR 0.29% (industry average 0.35%)” in a first report sets a target you invented against data you do not have.
The better line is plainly stated: “First month of delivery, so no comparison period yet. We’ll report against this baseline from next month.” Clients accept that far more readily than agencies expect. What they do not accept is a comparison that turns out to be guesswork when they probe it in month three.
The same applies to a new channel inside an established account, or a new creative format. Flag it as a new series rather than folding it into a total and reporting a delta that mixes two different things, which is the failure mode behind most multi-channel metric mashups.
Put the comparison in the template, not in the pre-send routine
A delta line that someone calculates by hand on send day is a delta line that disappears the first busy month. It also drifts: one account manager compares to last month, another to the campaign average, and a client who moves between accounts notices.
So the comparison belongs in the layout, defined once per metric row, as part of the same decision as the group-by. That is how reusable templates are supposed to earn their keep, and in Screebl a template locks once reports depend on it, so the line you agreed in month one is still there in month nine rather than being quietly dropped in a redesign. If you want to see which plan covers the branding and portal side of that, the pricing page lists what each one includes.
Where this lands is a report that answers the question before it is asked, which is the only reliable way to reduce the follow-up email. The order of your sections decides what the client reads first, and the delta line decides whether they need to reply about it.
Questions agencies ask about this
Is this a good CTR? Not answerable without the buying model and the format. A 0.31% CTR is strong for standard display bought on reach and weak for a branded search campaign. The only comparison worth making is against the same line item in a previous period, or against the target written in the media plan.
Should I ever put an industry benchmark in a client report? Only when the client supplied it or the plan already contains a target. Then you are reporting against an agreed number rather than importing someone else’s average, and the conversation is about performance instead of about the source of the figure.
Month over month or year over year? Both, when you have both. Month over month context in a client report catches operational changes, year over year handles seasonality on accounts where December behaves nothing like February. If you only have space for one line, pick the one whose movement you can actually explain this month.
What if the delta makes a month look bad? Report it with the cause attached. A CPA rising because you shifted budget into prospecting is a decision, not a decline, and saying so is far safer than a flat number the client later compares against last month’s PDF themselves. There is more on handling that conversation in reporting bad results without losing the client.
How many metrics should carry a comparison line? The ones in the headline block, so the client gets context in the first screen. Detail tables can stay clean. A report where every cell has a delta reads like a variance analysis and gets skimmed like one.



