Facebook ads reporting for clients who run lead gen comes down to four questions, answered in this order: what did we spend, what did we get, which creative and which landing page produced it, and what changes next. Every other metric (reach, CPM, CTR, frequency) earns a place only when it explains one of those four answers.
Most report templates are dashboard exports: thirty Ads Manager columns in a tidy layout. A lead gen client reads two of them, spend and leads, then asks the question no template answers: were those leads any good? This guide builds the report backwards from that question.
What Facebook ads reporting for clients has to answer
Each of the four questions has one source that’s hard to argue with. Use a different source and the client will notice before you do.
What did we spend?
Spend comes from Meta, per ad. It’s the only number in the report that matches an invoice, so never round it, estimate it or “adjust” it. Show it per campaign and per creative, next to the budget you agreed.
What did we get?
Leads, counted where the client can check them: the CRM, the inbox, the call log. The Results column in Ads Manager is Meta’s attributed count, built with Meta’s rules. It belongs in the report too, as a second number with an explanation (more on that below).
Which creative and which landing page did it?
A campaign CPL is an average of ads that behave in opposite ways. The client doesn’t need forty rows, but they do need to see where the money worked: CPL per creative and per landing page, the pairing behind CPL by creative. When the client asks “should we make more videos?”, this is the table that answers.
What changes next?
Clients read this section most closely, and most reports skip it. Two or three decisions, each with its reason: pause this ad, move budget to that combination, test a new landing page variant. A report without a next step is a receipt.
Metrics that belong in a client report, and the vanity metrics that don’t
A vanity metric can rise while nothing changes for the client’s business. Reach is the classic case: double the audience and reach doubles, with the same number of leads. Vanity metrics still work as diagnostics, and diagnostics go in the appendix.
| Metric | Where it goes | Why |
|---|---|---|
| Spend | main report | their money, and Meta’s invoice |
| Leads (CRM or form count) | main report | the result the client can verify |
| CPL by creative × landing page | main report | where the next euro should go |
| Qualified leads and CPQL | main report, once the client shares outcomes | whether the cheap leads are good ones |
| Landing page conversion rate | main report, one line | separates a creative problem from a landing page problem |
| Link CTR | appendix | explains why a creative’s CPL moved |
| CPM | appendix | explains cost changes coming from the auction |
| Frequency | appendix | early warning of creative fatigue |
| Reach and impressions | appendix | context only |
| Post likes, comments, shares | leave out | no link to leads in a lead gen account |
One test before any metric goes into the summary: could the client act on it? If CPM rose and nothing in your plan changes because of it, it’s a footnote.
A Facebook ads client report template for lead gen
Here’s the structure we’d use for a monthly report. The source column matters more than it looks: each number gets exactly one source, written down, so nobody recalculates it differently next month.
| Section | Metric | Source | Why the client cares |
|---|---|---|---|
| 1. Summary | spend, leads, CPL and CPQL vs last month and vs target | spend from Meta, leads from the CRM | “is it working?” answered in ten seconds |
| 2. Spend | spend by campaign and creative, budget pacing | Meta (Ads Manager or the Ads API) | matches what they’re billed |
| 3. Leads | leads by week and by campaign | CRM or form submissions | the number they can check |
| 4. Creative × landing page | spend, leads and CPL per combination | spend per ad joined to leads per ad and landing page | shows where the money worked |
| 5. Lead quality | contact rate, qualified rate, CPQL | outcomes from the client’s CRM | whether cheap leads are worth calling |
| 6. Reconciliation | Ads Manager leads vs CRM leads, gap and cause | Ads Manager and CRM | no surprises when they open Ads Manager |
| 7. What we changed | actions taken and why | your change log | ties actions to results |
| 8. Next month | tests, budget moves, what you need from the client | your plan | makes the next report a follow-up |
Example: a client spends €3,000 in a month on three creatives and two landing pages. Sections 4 and 5 might read like this:
| Creative × landing page | Spend | Leads | CPL | Qualified | CPQL |
|---|---|---|---|---|---|
| Video testimonial × landing page A | €1,200 | 96 | €12.50 | 29 | €41.38 |
| Static offer × landing page A | €900 | 90 | €10.00 | 14 | €64.29 |
| Static offer × landing page B | €600 | 30 | €20.00 | 9 | €66.67 |
| Carousel × landing page B | €300 | 15 | €20.00 | 6 | €50.00 |
| Total | €3,000 | 231 | €12.99 | 58 | €51.72 |
The static offer on landing page A brings the cheapest leads in the account and the second-worst CPQL. On CPL alone, the plan would scale it. With qualification in the table, the plan moves budget to the video testimonial on landing page A and tests the same video on landing page B. That sentence is what section 8 is for. Before acting on the small rows, check they’ve had enough spend to judge: 15 leads is a hint, not a verdict (see how to read the attribution matrix).
A client report is only as good as the join between spend, creative, landing page and lead. DropCPL syncs spend per ad from Meta and counts leads first-party, so the creative × landing page table is ready before you open a spreadsheet. Start free →
How to report Facebook ads results to clients when Meta and the CRM disagree
One day the client will open Ads Manager and see a number that isn’t in your report. If you explained the gap first, it’s a non-event. If they found it on their own, you have a trust problem, whichever number was right.
Three rules keep it a non-event:
- Declare the canonical number in the first report. We’d use the leads in the client’s CRM: they can verify it, and it’s the list their salespeople call. The Ads Manager count stays as a second column.
- Report the gap as a percentage, with a cause, every month. A gap that jumps from 8% to 30% is a finding: a broken form, a duplicated event, a campaign that drifted toward view-through credit. A gap that sits at 10% every month is background.
- Never average the two, and never switch to whichever looks better this month. The longer argument is in real CPL vs platform CPL.
The usual causes, and how to put them in client language:
| Cause | Which number is usually higher | What to tell the client |
|---|---|---|
| Meta’s attribution setting credits website conversions up to 1 or 7 days after a link click, 1 day after an impression and 1 day after other engagement with the ad | Ads Manager | “Meta also counts people who saw the ad and came back later on their own” |
| Ad blockers can stop the Meta Pixel from firing (Meta on third-party reporting gaps) | the CRM | “Some visitors block Meta’s tracking, and we still receive their lead” |
| Meta uses conversion modelling where conversion data is partial or missing | Ads Manager | “Part of Meta’s figure is an estimate” |
| On Instant Forms, organic and test leads appear in the lead download but not in the Results column | the CRM | “Those leads are real; Meta just doesn’t count them as ad results” |
| Duplicate submissions merged by the CRM | Ads Manager | “We count people, not form submissions” |
| Different time zones or date ranges | either | “Same month, different clocks” |
Meta’s attribution article adds a warning worth passing on to clients who compare ad sets themselves: results can’t be compared across ad sets that use different attribution models. Line up the settings before you line up the numbers; Meta attribution settings covers the options.
Example of a reconciliation line you can paste into a report: “Ads Manager reports 254 leads this month and your CRM received 231, a gap of about 10%. We report the CRM figure. The gap is in line with previous months and comes mostly from view-through credit, which Meta counts and your CRM can’t see.”
How often should you send Facebook ads reports to clients?
- Weekly, five lines: spend against pacing, leads, anything broken, what you changed, what you’re watching. Skip CPL verdicts on a single week of data in small accounts.
- Monthly, the full template above, with decisions.
- Quarterly, the bigger picture: what you learned about creatives and landing pages, and the budget and tests for the next quarter.
Timing matters more than frequency. Qualification lags behind the lead: someone who filled in the form on the 29th may not be called, let alone qualified, until the following month. Send the monthly report a few days after the month closes, when the CRM has caught up, and mark the latest week’s CPQL as provisional. Otherwise every report shows a fake drop in quality at the end of the period.
How to bring lead quality into the report
CPL tells the client what a form submission costs. Cost per qualified lead tells them what a sales conversation costs, and that’s the number they compare with their margins. As soon as the client shares outcomes, add it.
What you need from the client is small: one outcome field per lead (contacted, qualified, booked, whatever their sales process uses) and a weekly export. What you need on your side is the source of every lead: the ad and the landing page that produced it. Without the source, quality is an account-wide average and can’t reorder anything. DropCPL forwards each lead by webhook with its ad, campaign and landing page attached (lead routing), so the outcome the client records later sits next to its source.
Then agree on one definition of “qualified” with the client, in writing, and keep it. Switching definitions mid-quarter breaks every CPQL trend line. The cost per qualified lead guide lists the usual definitions, and the CPL vs CPQL calculator shows how quickly the ranking of two ads can flip. Lead quality itself, and how to raise it, is covered in Facebook lead quality.
If the client won’t share outcomes, write it in the report: “CPL is provisional; we can’t see lead quality.” It protects you the month they decide the leads were bad.
Agency reporting for Facebook ads across many clients
Agency reporting breaks less on analysis than on consistency: twelve clients, twelve setups, twelve slightly different definitions of a lead. A CPL from one client means nothing next to another client’s if the two were measured differently. If part of your fee depends on leads, that definition belongs in the contract too, and Facebook ads agency pricing covers how to write it.
In DropCPL each client is a subaccount with its own landing pages, tracking domains, Meta connection, leads and spend, and every subaccount uses the same measurement model. Access is set per subaccount, so a client can be invited into their own data without seeing the rest of your book. See DropCPL for agencies.