Here is how to read a Meta ads creative report without drowning in the wall of numbers: only three reads decide anything. Spend against your target CPA makes the cut or scale call, hook rate tells you whether the first 3 seconds earned attention, and hold rate tells you whether the ad kept its promise. Cut any ad that has spent 3x target CPA with nothing to show. Scale any ad beating target on real spend. Everything else gets diagnosed, not guessed at.
The problem is that Ads Manager, out of the box, is set up to report on campaigns, not creatives. The default columns bury the two metrics that explain creative performance and surface half a dozen that don't matter. So most operators open the report, squint at 40 rows, and make gut calls.
This is the exact sequence we run at Spark every week, step by step, ending in a decision tree you can screenshot and pin next to your monitor.
Step 1: Get to ad level and fix the date range
Campaign and ad set views average winners and losers together, which is exactly how a dying creative hides inside a healthy campaign for a month. Click through to the Ads tab before you read a single number.
Then set the date range to the last 7 days, excluding today. Today's data is incomplete: conversions lag clicks by hours or days, so including today makes every ad look worse than it is. Seven days smooths out day-of-week swings without letting stale history vote. For lower-spend accounts (under about $150 a day) stretch to 14 days so each ad accumulates enough conversions to mean something.
One more setting: check attribution. If your account compares ads on different attribution windows, none of your CPA comparisons are valid. Use one window (7-day click, 1-day view is the common default) across everything.
Step 2: Build the creative column set (once)
Open Columns → Customize columns, per Meta's own walkthrough, strip out the defaults you don't need, and save the result as a preset called something like "Creative read". You do this once. Every weekly read after this takes minutes.
Two of the columns below don't exist as standard metrics; you build them with Meta's custom metrics feature (Create custom metric inside the same Customize columns panel). Set both to display as percentages.
| Column (in reading order) | Standard or custom | What it answers |
|---|---|---|
| Amount spent | Standard | Has this ad earned a verdict yet? |
| Purchases (or your conversion event) | Standard | Raw results, and how much evidence sits behind the CPA |
| Cost per purchase | Standard | The decision metric, read against target |
| ROAS | Standard | Sanity check where order values vary widely |
| Hook rate = 3-second video plays ÷ impressions | Custom | Did the opening earn attention? |
| Hold rate = ThruPlays ÷ 3-second video plays | Custom | Did the body keep the hook's promise? |
| CTR (link click-through) | Standard | Did the ad create intent, not just views? |
| Frequency | Standard | Early fatigue warning above ~2.5 on cold traffic |
| Delivery column status | Standard | Meta's own creative fatigue flag (Step 4) |
If any of those definitions feel fuzzy, our creative metrics glossary covers each one with 2026 benchmark bands.
Step 3: Know which columns to ignore
Half the wall of numbers is noise for a creative decision. Ignore these on your weekly read:
- Impressions and reach. Delivery outputs, not creative quality. Meta decides these, you don't.
- CPM on its own. Useful for account-level trend, useless for ranking one creative against another in the same ad set.
- CTR (all). Counts reactions, comment taps and profile clicks. Only link CTR maps to intent.
- Post engagement. A comment-bait ad can post huge engagement and zero purchases.
- Video average play time. Hold rate already answers this, as a comparable ratio rather than an absolute number skewed by video length.
The pattern behind the ignore list: anything Meta's delivery system controls, or anything that rewards attention without intent, gets no vote in a cut or scale decision.
Step 4: Read in order: spend, CPA, then diagnostics
Sort the report by amount spent, descending. This one sort does more work than any filter. Meta's delivery system pushes budget toward what it predicts will convert, so your top-spending ads are where the money is actually being made or lost, and the 30 rows of near-zero-spend ads at the bottom mostly need no decision at all.
Now read left to right, in three passes:
- Pass 1, verdict check. Has the ad spent at least 2x to 3x your target CPA? If not, it hasn't earned a verdict. Skip it. Judging an ad on half a CPA's worth of spend is how good concepts die early; we set out the full spend maths in how much to spend per creative test.
- Pass 2, the decision read. Cost per purchase against target for every ad that has earned a verdict. This is the only number that decides cut, keep or scale. At or under target: candidate to scale. Over target: candidate to cut or iterate.
- Pass 3, the why. Hook rate, hold rate and link CTR explain each verdict. On cold traffic in 2026, video hook rates normally land between 25% and 35%; under 20% means the opening is being skipped before the ad can sell anything. A strong hook with a weak hold means the body breaks the hook's promise. Strong hook and hold with a weak link CTR usually points at the offer or the CTA, not the video.
Spend and CPA make the decision. Hook, hold and CTR only explain it. Most operators read that backwards.
The diagnostics matter because they tell you what to brief next, not because they overrule CPA. An over-target ad with a 38% hook rate is not a failed ad; it's a working hook attached to a failing body, and that hook goes straight into the next batch.
Step 5: Check the Delivery column for fatigue
Before you scale anything, look at its Delivery status. Meta now flags tired creative directly in the report with two labels, documented in the Business Help Centre: Creative limited (cost per result has risen above the ad's own history) and Creative fatigue (cost per result is at least double its historical baseline). A fatigue flag on a former winner is not an invitation to push more budget into it. It's the signal to brief the replacement.
This check matters more than it did two years ago. Under Meta's Andromeda-era delivery system, your creative effectively is your targeting, near-duplicate variants get clustered and treated as one entity, and effective creative lifespan has compressed from 6 to 8 weeks down to roughly 2 to 4. A winner flagged as fatigued stops feeding the algorithm useful signal, so replacement velocity is now part of the reading job. We covered the strategic side of that shift in our Andromeda creative strategy guide.
Key takeaway
A creative report is read in a fixed order: spend qualifies the ad, CPA against target makes the call, hook and hold explain it, and the Delivery column tells you when a winner is done. Any read that starts anywhere else turns into gut feel with extra spreadsheets.
Step 6: Run the cut, keep or scale decision tree
Work down this table top to bottom for each ad that has spend against it. The first row that matches is the decision. Target CPA below means your account's real breakeven-or-better number, not an aspiration.
| # | If the ad shows... | Decision | Action this week |
|---|---|---|---|
| 1 | Spend under 1x target CPA | Keep (no verdict) | Do nothing. Let it spend. |
| 2 | Spend at 3x target CPA, zero conversions | Cut | Turn it off. Log the hook and angle as tested. |
| 3 | CPA at or under target, no fatigue flag | Scale | Raise budget ~20% every 2 to 3 days, and brief 2 to 3 iterations of it now, while it's still winning. |
| 4 | CPA at or under target, Creative limited or Creative fatigue flag | Keep + replace | Hold budget flat. Ship refreshed variants (new hook, new opener, new creator) within the week. |
| 5 | CPA up to ~30% over target, hook rate 25%+ | Keep + iterate | The attention works; the persuasion doesn't. Rebuild the body or offer behind the same hook. |
| 6 | CPA up to ~30% over target, hook rate under 20% | Cut + salvage | Kill the ad, keep the body. Test 2 to 3 new hooks on the same middle. |
| 7 | CPA more than ~30% over target after 3x target spend | Cut | Turn it off regardless of soft metrics. Document why it was briefed and what the data said. |
Rows 2 and 7 deserve their own discipline; the full kill logic, including the concession rules for high-AOV accounts, lives in our CPA kill rule post.
One observation from running this read across Spark client accounts: almost every account we take over is still reporting on Meta's default column preset. No hook rate, no hold rate, decisions made on CTR (all) and CPM. Rebuilding the column set is the first thing we do on onboarding, before we brief a single new creative, because the same wall of numbers reads completely differently once the right nine columns are in the right order. That reporting rebuild is baked into how our creative sprints work.
What the report can't tell you
The decision tree handles cut, keep and scale. It doesn't produce the next winner. A report full of cuts means you have a creative supply problem, and the fix is a steady pipeline of genuinely distinct concepts to feed rows 3 and 5. Benchmarks for how many fresh creatives that takes at each spend level are in our weekly creative quota guide, and the wider library of testing and strategy breakdowns lives on the resources hub.
FAQ
Which columns matter most in a Meta ads creative report?
Nine columns cover a full creative read: amount spent, purchases (or your conversion event), cost per purchase, ROAS, hook rate (3-second video plays divided by impressions, built as a custom metric), hold rate (ThruPlays divided by 3-second plays), link CTR, frequency, and the Delivery column for Meta's creative fatigue flags. Spend and CPA make the decision; hook rate, hold rate and CTR explain why an ad won or lost.
What is a good hook rate for Meta ads in 2026?
On cold traffic, 25% to 35% is the normal band for video hook rate in 2026. Above 30% is strong, above 40% is elite, and anything under 20% means the first three seconds need a rebuild before the ad deserves more budget. Compare like for like: Reels placements typically run a few points different from Feed for the same creative.
How much should an ad spend before I cut it?
Give each creative roughly 2x to 3x your target CPA in spend before judging it. An ad that has spent 3x target CPA with zero conversions gets cut. An ad below 1x target CPA in spend has not produced a verdict yet, whatever its early metrics look like, so leave it alone.
How often should I read the Meta creative report?
Once a week for cut, keep and scale decisions, using a 7-day window that excludes today, plus a short mid-week glance at your scaled winners for fatigue flags in the Delivery column. Daily creative decisions on small budgets react to noise, not signal, and reset Meta's learning for no gain.
If you'd rather have the reading, the briefing and the replacement pipeline handled for you, that's the job we do. Book a call and we'll run this exact read on your account, live.