Likely Beta Sign in

Category audit

Find the creative gaps your competitors are already testing

Competitive research tells you what your rivals are running. It leaves the harder question open: what are they testing that you are not? That is usually where scaling stalls — not on budget, and not on the ads you already know about.

Seven questions turn the public Meta Ad Library into a ranked list of creative gaps. Every threshold is published, so you can run the whole thing yourself in a spreadsheet.

What you get from this page

  • Where your creative mix differs from the rest of the category, and by how much.
  • Which audiences competitors reach that you do not address at all.
  • Which hook and angle combinations you have never tested.
  • Which competitor patterns have survived long enough to be worth copying.
  • A ranked list of what to brief next.
Framework Published 15 August 2026 Last updated 15 August 2026 Run it by hand, no tool required
The seven questions
  1. Is there enough volume to say anything at all?
  2. Where does your mix differ from the category's?
  3. Who is the category talking to that you are not?
  4. Where do funnel stage and awareness disagree?
  5. Which cells are empty, and are they empty for a reason?
  6. What has actually survived?
  7. Which openings are real, and which are noise?

The short version

Pull every live ad from two to five competitors. Give each one five labels. Then cross hook against angle and look at the cells where their count is high and yours is zero.

That is the whole audit in three steps. The seven questions below tell you which readings mean something and which are noise — with the exact numbers.

The seven questions

1

Is there enough volume to say anything at all?

Below about 30 competitor ads, every share you calculate is noise. Check this first, because everything downstream inherits it.

This is the question people skip, and it is why so many competitive decks confidently report that a rival "is leaning into education" on the strength of four ads. Four ads is one person's week, not a strategy.

How to answer it Count the live ads across all the competitors you pulled. Not campaigns — individual live creatives. If you have fewer than 30, add competitors before you analyse anything.

Threshold: 30 competitor ads minimum before a distribution means anything. 15 before any single cell does.

2

Where does your mix differ from the category's?

Compare your share against the category's on each axis. A gap of 15 percentage points or more is a real difference. Anything smaller is drift.

The output is one sentence per axis: "the category opens on relatable pain 14 points more often than we do." Then the only question that matters — is that a position, or an accident? Both are legitimate answers. Not knowing which is not.

How to answer it Two columns per axis: your share of each label, the pooled competitor share of each label. Subtract. Sort by absolute difference. Read the top three.

Threshold: a divergence of 15 percentage points or more, with at least 15 ads on both sides.

3

Who is the category talking to that you are not?

Distribute every ad across the five awareness stages. A stage where competitors run 15 or more ads and you run none is the clearest gap this audit produces.

Distinguish two very different findings here. A stage nobody addresses is open ground — that is a positioning opportunity. A stage only you skip is your own coverage gap, which is a weaker and more embarrassing claim.

The common shape: a brand runs everything at product-aware and most-aware buyers, while the category is actively recruiting at problem-aware. That brand is converting demand it is not creating, and it will feel like a ceiling long before it looks like one in the numbers.

How to answer it One column: awareness stage, five values. Count competitor ads and your ads per stage. Look for stages where their count is high and yours is zero.

Threshold: 15+ competitor ads at a stage where you have 0. Below 3 ads, a stage is somebody's experiment, not a commitment.

4

Where do funnel stage and awareness disagree?

Cross funnel stage against awareness. The cells where the two disagree sharply are where money goes missing — and a grid built on funnel alone cannot see them.

This is the highest-value question on the list, and almost nobody asks it.

Over-asking is a bottom-of-funnel ad aimed at someone who has not yet accepted the problem. You are asking for the order before you have made the case. That is not a weak ad, it is a misdirected one.

Under-asking is the mirror: a top-of-funnel ad aimed at someone who already knows the brand and is waiting for a reason to buy. You are introducing yourself to someone holding your product.

How to answer it Put funnel stage on one axis (TOF/MOF/BOF), awareness on the other (five stages). Score both 0–1 and look at the distance: BOF × unaware and BOF × problem-aware are over-asking; TOF × most-aware is under-asking.

Threshold: a mismatch of more than half the scale, in a cell holding at least 15 ads. Smaller mismatches bury the two cells that are genuinely off.

5

Which cells are empty, and are they empty for a reason?

Cross any two axes — hook × angle is the most productive — and look at the empty cells. An empty cell where the category is active is a concept you have never tested. An empty cell where nobody is active needs a different question.

Not every gap is an opportunity. Some cells are empty because the combination makes no sense for the category, and a few are empty because the platform will not approve it. Before you brief a gap, ask why the people spending money here have not.

The useful discipline: every empty cell has to be explained before it is briefed. "Nobody has tried it" and "everybody tried it and stopped" look identical in a snapshot and mean opposite things.

How to answer it Pivot table: hook down the side, angle across the top, count of competitor ads in each cell, your own count underneath. Highlight cells where theirs is high and yours is zero.

Threshold: a cell needs more than one competitor ad to be an opening at all. One ad from one brand is somebody's Tuesday experiment.

6

What has actually survived?

Sort every competitor ad by how long it has been running. An ad still live after 60 days has survived at least one decision to keep paying for it — and that is the strongest signal public data gives you.

Nobody leaves a losing ad running for two months. Not deliberately, not at scale, not with a media buyer watching. So longevity is a filter that costs you nothing and tells you more than volume does.

Below 60 days, longevity says nothing — an ad might be three weeks old and about to be switched off tomorrow. Above it, you are looking at a bet somebody keeps renewing.

How to answer it The Meta Ad Library shows a start date on every ad. Add a column for days live. Filter to 60+ and re-read your grid using only those. The picture usually shifts, and the shift is the finding.

Threshold: 60 days live. Below that, treat longevity as unknown rather than as evidence.

7

Which openings are real, and which are noise?

Score every gap you found on three things before you rank it: how much category volume it represents, how confident you are it is real, and what it costs you to answer.

Confidence is driven by how many distinct brands do it, how long they have kept doing it, and how much of it there is. Twelve ads from one advertiser is one opinion. Twelve ads from four advertisers is a category behaviour.

And difficulty is the one that decides what actually gets made. Rank on impact alone and every item at the top of your list needs a shoot — a true list you cannot execute. We published production difficulty scores for all eleven formats so you can put a real number in this column.

How to answer it Three columns next to each gap. Impact: category ad count in the cell. Confidence: number of distinct brands × whether they've held it 60+ days. Difficulty: the score for the format the category uses there. Sort by whatever you are short of — usually production capacity.

Threshold: at least 3 distinct brands, or a single brand holding it 60+ days, before you call an opening real.

What public data can and cannot tell you

You can see what a category is running. You cannot see what is working. Spend, ROAS and conversions live inside an ad account, and nothing outside one can read them — including us.

That sounds like a limitation. It is actually what makes this audit honest. What is genuinely knowable from public data is what a category commits budget to making, and how long it keeps each ad alive. Both are real signals, and the second one is the closest thing to a performance proxy that exists in public.

So no question below asks you to guess at a competitor's CPA. Any tool that offers you that number is guessing, and you should treat the rest of its output accordingly.

What you need to start. Two to five competitors you actually lose to, their live ads from the Meta Ad Library, and a spreadsheet with one row per ad and five label columns. The creative taxonomy gives you the five columns and the values that go in them.

What the audit should produce

One page. Three to five findings, each with the ad count it rests on, and a ranked list of what to make next. If it is longer than that, you have written a table rather than a diagnosis.

The test for whether a finding is real: can you show the ads behind it? Every claim in a creative audit should be one click from the creative that justifies it. A number nobody can check is a number nobody will act on — and rightly so.

QuestionThreshold that makes it real
1. Enough volume30 competitor ads
2. Mix divergence15 percentage points
3. Unserved audience15 theirs / 0 yours
4. Funnel × awareness mismatch> half the scale, 15+ ads
5. Empty cell> 1 competitor ad
6. Survived60 days live
7. Real opening3 brands, or 60+ days
Where these come from. These are the thresholds Likely uses in its own audit, published so you can argue with them or run the audit without us. They were set to suppress a specific failure: without the floor in question 5, an opportunity list ran to seventeen items, eight of which read "the category runs 1 ad here and you run none". Every one of those was true. Every one was worthless.

How long this takes, honestly

An afternoon for one category with two competitors and a hundred or so ads. A week if you want it to hold up, because the labelling is the slow part and consistency is the whole point.

The hard part is not the analysis. Every question above is a pivot table. The hard part is labelling several hundred ads the same way, and then doing it again in three months so the comparison means something. That second pass is where hand-run audits quietly die.

Do it by hand once, though. Even if you never repeat it, you will read the automated version very differently afterwards — and you will know which of its numbers to trust.

Or let it run unattended.

Same seven questions, same thresholds, on every live ad in your category. Name two competitors and it takes about twenty minutes — no ad account connection.

Run my €0.99 audit