Ask a client what they remember from last month's report and most will say "the numbers went up" or "the numbers went down". That is the problem. A report that is only a performance dashboard puts the agency's fate in the hands of the market: good month, you're great; bad month, you're on notice.
The reports that keep retainers do one extra thing. They show the work: what the team found, what it fixed, and what that changed. Performance is the context, work is the story.
Here is the template we settled on after writing a lot of these by hand. Five pages, in this order.
Page 1: The summary a busy owner reads in 60 seconds
Three to five sentences, written for someone who will not scroll. Not "an overview of the month". The answers to the three questions every client has:
- How did we do? One line per channel, with the one number that matters for that client (leads for lead-gen, revenue for ecommerce) and the change against last month.
- What did you do about it? The two or three most important things the team completed. "Fixed conversion tracking that was counting page views, so the account now optimises toward real leads."
- What's next? One or two items, so the client knows the plan without a call.
If a number is bad, say so here, first, with the cause and the fix underway. Clients forgive bad months. They do not forgive discovering the bad month themselves on page four.
Page 2: Performance, month over month
One section per connected channel, each with the same shape so the client learns to read it:
- The headline metric for that channel, this month vs last month vs the same month last year where you have it.
- A single chart (per-day or per-week), not a wall of them.
- Two or three supporting metrics in a row of tiles: for Google Ads that is spend, conversions and cost per conversion; for organic it is clicks, impressions and pages gaining or losing; for social it is reach, engagement and follower change.
- One sentence of interpretation under each chart. The chart shows; the sentence explains.
What to leave out: impressions-only charts for paid, CTR for its own sake, anything the client did not ask about and cannot act on.
Page 3: What we did (the page that renews the retainer)
A list of completed work, grouped by channel, each item with:
- What was done, in the client's language ("added 38 negative keywords to stop paying for 'free plumbing course' searches").
- Why: the finding behind it, with the evidence ("$911 over 90 days on search terms with zero conversions").
- Result when it is measurable, and "measuring" when it is too early. Never invent a result.
Also list site changes: page edits, plugin updates, code deployed. Clients rarely see that work and it is a large part of what they pay for. If your website changes are tracked (through WordPress activity logs or GitHub commits), pull them in automatically rather than reconstructing them from memory on the 1st of the month.
Keep the list honest. Three real items beat ten padded ones, and clients can tell.
Page 4: Findings and the plan
The open issues, ranked by what they cost the client, each with an owner and a target date. This is the audit output in client language: not "G-CT3 failed", but "The 'Contact page view' action is counted as a lead, which inflates the lead number and misleads bidding. We are switching the primary action to the form submission this week."
Three to six items. If there are twenty, the client doesn't need all twenty; they need the three that matter and a note that the rest are in the queue.
Page 5: Scope, hours, and the ask
Short and factual: what was in scope this month, anything the client needs to provide (access, approval, a decision), and any recommendation that needs budget. If the ask is "approve a $500/month budget increase on the campaign that is losing 30% of impressions to budget at a profitable CPA", this is where it goes, with the numbers.
Rules that make the template work
- Same structure every month. Clients learn where things are. Changing the layout makes every report feel like the first one.
- Every number has a source and a period. "Clicks, Search Console, Sep 22 – Oct 21." Numbers without a source get challenged.
- The written parts are written by a person, or checked by one. AI drafting is fine for the first pass; an AI-written claim that does not match the data is how you lose the account. If you generate the narrative, verify every figure in it against the data it came from before it goes out.
- Send it on a fixed day. The 3rd of the month, every month, is better than "when it's ready".
- Share a link, not a PDF, when you can. The link can carry the charts live and the task list current; the PDF is frozen the moment you export it.
A note on automation
Everything on pages 2 and 3 can be assembled automatically if the data and the work live in one place: connected accounts for the numbers, a task system for the work, activity logs for the site changes. That is roughly what Agency Lookout does: it drafts the monthly report from the client's connected accounts, the tasks the team completed and the site changes it recorded, checks every number in the write-up against the underlying data, and holds it for your approval before it can be shared. You still write the summary. You should always write the summary.