Meta Ads reporting
How to analyse a Meta Ads campaign, step by step
The order to review a campaign without drowning in metrics: what to check first, how to separate a creative problem from an audience or landing page one.
Also available in: Português · Español
Analysing a campaign is not looking at every metric. It is following an order that rules out causes until one remains. This is the walk that works on real accounts, top to bottom, with the criteria for moving from each level to the next.
Step 0: define what "working" means
Before opening the ads manager, write down the target number. Cost per lead of US$ 25, or ROAS of 3, or twenty booked calls a week. Without it, every analysis ends in opinion, and opinion always finds something that "could be improved".
Step 1: look at the campaign, not the ads
Three figures and their change against the equivalent previous period:
| Figure | What it tells you |
|---|---|
| Spend | Whether budget is actually being delivered |
| Results | Whether volume supports the target |
| Cost per result | Whether the price is sustainable |
If all three sit where you expect, the analysis is over. Stop. Most of the damage done to small accounts comes from continuing to hunt for problems in healthy campaigns until an invented one gets "fixed".
Compare periods of equal length with matching days of the week. Seven against seven, not five against nine. One public holiday ruins any weekly comparison.
Step 2: if cost rose, separate before acting
Two metrics settle almost the entire diagnosis:
| CTR | CPM | Likely cause |
|---|---|---|
| Falling | Steady | Creative fatigue |
| Steady | Rising | More expensive auction |
| Steady | Steady | Problem after the click |
| Falling | Rising | Saturated audience |
That table is worth more than twenty report columns. Three numbers and you know which of the three worlds you are in: the ad, the market, or your own website.
Step 3: drop to the ad set
The campaign average hides the distribution. It is normal to find one ad set producing 70% of results while two others consume budget and contribute nothing. Per ad set, look at:
- Results and cost per result.
- Frequency: whether one is saturated and another is not.
- Budget split: whether spend sits where the results are.
Two classic problems surface here. The first is internal competition: two ad sets with near-identical audiences bidding in the same auction. The second is the zombie ad set, left active from an old test and quietly eating budget.
Step 4: drop to the ad
Compare creatives with similar delivery volumes. One creative with 5,000 impressions and another with 200,000 are not comparable: the first has not had its chance yet.
Look at CTR, cost per result and, for video, retention. The question is not which creative looks best, but which buys results most cheaply with enough volume to trust.
Step 5: leave the platform
If the ad is doing its job and results still are not landing, the problem sits after the click:
- Page speed on a phone, on mobile data.
- Whether the page still matches what the ad promised.
- Number of form fields.
- What happens to the lead in the first hour: who contacts them, and when.
That last point is not marketing, and it explains more "result" drops than any targeting tweak. A lead contacted in five minutes and one contacted the next day are not worth the same, even at identical cost per lead.
Step 6: write the conclusion in one sentence
If you cannot summarise the analysis in one actionable sentence, you have not finished. "Cost per lead rose 40% because the main creative lost CTR from Tuesday; three new pieces go live Monday" is a conclusion. "Results varied during the period" is not.
A complete worked example
A services account spending US$ 8,000 a month. Monday's report shows cost per lead moved from US$ 42 to US$ 68 in a week.
Step 1. Spend flat, leads down from 95 to 59. Volume is high enough to take seriously, and both periods have seven days with matching weekdays. Signal, not noise.
Step 2. Link CTR fell from 1.9% to 1.1%. CPM rose only 6%. By the table, this is world one: creative fatigue.
Step 3. At ad set level, two of three hold their cost steady. The third, carrying 60% of budget, doubled its cost per lead and shows frequency of 4.8 against 2.1 for the others. The diagnosis sharpens: not creative in general, that specific audience has seen everything.
Step 4. Inside that ad set all three ads lost CTR simultaneously, not just one. That confirms audience saturation rather than one worn-out piece.
Step 5. The landing page has not changed and its conversion rate is flat. The problem is not after the click.
Conclusion, one sentence: the main ad set saturated its audience; a broader lookalike goes in with the same creatives, and only if that fails do new creatives follow.
Note that the analysis took five minutes and opened no metric beyond the usual six. What made it fast was the order, not the quantity of data.
What to record after every analysis
Three lines, in the same place, every time:
- What you found.
- What you changed, and on what date.
- What you expect to happen, and when you will check.
Without that record, in a month nobody will remember whether cost fell because of the new creative or because the expensive week of the calendar ended. That notebook is also what turns an account run on instinct into one run on method: by month three you have a history of what works in your niche, which beats any internet benchmark.
If you handle several accounts, the log also tells you when the problem is the market rather than you. Five accounts with CPM rising in the same week is seasonality; one account rising alone is operations.
The four mistakes that ruin the analysis
- Changing several things at once. Guarantees you will not know what worked.
- Comparing unequal periods. Produces false conclusions from true data.
- Deciding on thin volume. Thirty conversions against twenty proves nothing.
- Analysing every day. Each edit resets learning and raises cost for a few days.
If the diagnosis pointed at creative, continue with high CPL on Meta Ads for the detail on each cause. If it pointed at the page, start with conversion rate. And to do this by asking rather than exporting, see how to connect Meta Ads to Claude.
Two setups with their own architecture, worth knowing before you trust the conversion column: the pixel with Stripe, where the hosted checkout runs no third-party scripts, and the pixel on Wix, where the consent banner legitimately erases events.
Frequently asked questions
How often should I analyse a campaign?
A quick daily check of spend and results, and a full analysis weekly. Analysing deeply every day leads to over-editing and resets the learning phase for no reason.
How many days of data do I need before concluding anything?
It depends on volume, not the calendar. A practical rule is at least 30 to 50 conversions in the period you are comparing; below that the number swings on chance.
Should I analyse at campaign, ad set or ad level?
All three, in that order. The campaign says whether there is a problem, the ad set says where it is, and the ad says what to change.
What if everything looks normal and results still dropped?
Look outside the platform: landing page, sales follow-up, product seasonality. Half the drops that arrive as campaign problems are not campaign problems.