Twenty slides and still no answer
Every month a PDF arrives. Impressions are up. Click-through rate is steady. There is a map of sessions by city and a chart of engagement rate. On the call, the account manager talks through it confidently. You nod, and afterwards you still cannot answer the only question you care about: did the money turn into customers?
When you ask, the answer is that attribution is complicated, or that brand awareness takes time. Both can be true. Neither helps you decide whether to renew.
Your sales team, meanwhile, has its own view: some months the phone rings more, some months less, and nobody can link that to anything in the agency's charts. Two sets of numbers exist in the business and they never meet.
Why the report looks like this
This is not usually bad faith. The agency reports what it can see, and it often cannot see your sales.
- The agency has access to Google Ads, Meta and GA4, but not your CRM or accounts system.
- Your CRM does not record lead source reliably, so even you could not give them the data.
- Reports are built from a template the agency uses for every client.
- Nobody agreed at the start what the report should answer.
- Numbers from different platforms are not comparable, so they are shown side by side instead of joined.
What an empty report costs
Budget stays where it is by default. Good campaigns are not scaled because nobody can prove they work, and poor ones continue because nobody can prove they do not. You spend management time every month on a meeting that does not change a decision. And when you eventually switch agencies, you start again with no baseline.
| What the report shows now | What you actually need to know |
|---|---|
| Impressions and reach | Enquiries per channel |
| Click-through rate | Qualified leads per campaign |
| Sessions and bounce rate | Customers won and their value |
| Cost per click | Cost per customer by channel |
| Platform-reported conversions | Conversions your sales team confirms |
How we fix the reporting
- We agree the questions first, with you: what does a qualified lead mean, what counts as a sale, which decisions should the report inform.
- We make sure your CRM records source, campaign and outcome for every lead, adding hidden form fields and call tracking where needed.
- We pull spend and campaign data from Google Ads, Meta, LinkedIn and Microsoft Ads through their APIs into a small database or warehouse you own, such as BigQuery or a Postgres instance.
- We join that spend to your CRM leads and outcomes by campaign.
- We build a dashboard in Looker Studio, Power BI or a simple custom page with a handful of views: spend, enquiries, qualified leads, customers and value, by channel and campaign, over time.
- Optionally, a short written summary is drafted each month from the numbers, for a person to check, highlighting what changed.
Because the data and dashboard are yours, the agency can use it too, and it stays with you if you change agency.
We also keep the report deliberately short. A dashboard with forty charts is as unhelpful as a PDF with forty slides. The aim is a few views that answer your questions, with the detail available underneath for anyone who wants to dig.
The monthly call, afterwards
You open the dashboard before the call. You can see which campaigns produced customers and which produced only clicks. The conversation with your agency becomes specific: move budget from this to that, test a new offer here, stop this campaign. A good agency usually welcomes this, because it lets them show their work properly.
Does this describe your reports?
- You finish the monthly report without knowing whether marketing paid for itself.
- The report never mentions sales or revenue.
- Your agency has no access to your CRM outcomes.
- Lead source is missing or unreliable in your CRM.
- You would have no data to hand a new agency if you switched.