The short answer

AI ad analysis only works on tagged ads: a model can't compare 2,000 scripts until each one has the same labels. Ad Radar tags every ad on ten dimensions, from hook pattern to landing page type. The lesson from tagging 2,443 winning Meta ads: keep each dimension to one question, define values by what the ad does, and expect overlap (36% of ads carry two narrative angles). Below is the structure, a tagging prompt and a validation routine for your own.

Why tagging comes before analysis

Ask a model "what's working in my niche?" and paste 300 ads, and you'll get an essay. Ask the same model to tag each ad first, then count, and you get a table you can act on: which hooks, angles and formats show up among ads that kept getting budget.

That's the whole idea behind AI ad analysis. The model does the reading once, consistently, and turns each ad into a row. Everything after that is counting.

Here is what one row looks like on the Ad Radar board.

Hair Expert TipsMeta ad · winning
If you cover your grays and have helmet hair like this, and you're in between 40 and 60, this is not aging, and it's fixable.
Est. spend
$316K
Days live
125
Format
Video, 124s
  • Specific-Number Opener
  • Solution-Aware
  • Founder / Expert

One of 371 ads on the board with all ten dimensions filled. The full tag set is in the table below.

DimensionThe question it answersThis ad
Hook patternWhat does the first line say, formally?Specific-Number Opener
Hook mechanismWhy does it grab attention?Problem-to-Solution Bridge
Narrative angleHow does it build the case?Systematic Breakdown, Expert Based
Reader awarenessWhat does the opener assume the viewer knows?Solution-Aware
Proof levelHow much evidence backs the main claim?Unproven, Medium
Production formatHow was it made?Founder / Expert
Video typeWhat kind of video is it?Voiceover Listicle
Landing page typeWhere does the click go?Dedicated landing page
NicheWhat market or problem?Hair
CTA typeWhat does it ask for?Buy

Ten questions, each answerable on its own. That separation is the most important design choice in the whole system.

Design rule 1: one question per dimension

The most common mistake in homemade taxonomies is mixing questions. A "hook type" list with values like "question", "UGC", "fear" and "founder" blends the wording of the opener, the production method and the psychology into one field. You can't count anything cleanly.

We split the opener into two dimensions for this reason. Hook pattern is the form of the first line: a question, a number, a story, a warning. Hook mechanism is the psychology: curiosity, fear of loss, expert explanation, a personal story. The same question can work through very different mechanisms. More on that split in hook pattern vs hook mechanism.

The definitions matter as much as the names. Two that came out of tagging thousands of ads:

  • Awareness: judge by what the opening of the ad assumes, not by where it leads. An ad that ends on a product pitch can still be written for an unaware viewer.
  • Production format: the technique, not the content. A founder reading a script and a founder in an interview are both "Founder / Expert".

Design rule 2: expect overlap, decide how to handle it

Real ads don't fit one box. On our board, the share of tagged ads carrying more than one value:

DimensionAds with 2+ values
Narrative angle36%
Niche34%
Proof level30%
Hook patternunder 1%
Hook mechanismunder 1%

The pattern is useful. The opener is a single moment and almost always gets one label. The angle and the proof run through the whole ad and often mix. So we allow up to two niches (main one first) and accept two angles, but force a single hook pattern. Decide this per dimension before you tag anything, or your counts won't add up.

Design rule 3: let the data prune your values

Start with more values than you need and cut the ones nobody uses. On our board the hook pattern dimension has 13 values, but seven of them cover nearly all ads:

Hook patternAdsShare reaching top tier
Problem/Benefit Opener7149.1%
First-Person Story43810.0%
Specific-Number Opener41112.9%
Question Opener3667.1%
Offer-First Opener2558.2%
Warning/Shock Opener15610.3%
Authority Opens the Lesson4411.4%
Six other patterns combined15too few to read

(About 10% of the board reaches the top tier: top 10% by winner score, live 21+ days.)

Values with a handful of ads, such as Before/After Reveal with 4, can't support any conclusion. Keep them if they describe something real and you expect more, merge them if not. Never report a rate on a value with fewer than about 20 ads.

Coverage is worth tracking too. Hook pattern and mechanism are tagged on 98% of the board, awareness on 88%, angle on 75%. Production format and video type are tagged on only 610 and 564 ads, so we treat any finding from those two as directional.

Where AI tagging needs tie-break rules

Borderline ads are where taggers, human or AI, disagree. One example from the board:

Lưu KimMeta ad · winning
Make this one 15-second adjustment near your breaker panel tonight and watch what happens.
Est. spend
$535K
Days live
86
Format
Video, 114s
  • Question Opener
  • Unaware
  • Insider / Whistleblower

Filed as a Question Opener: "watch what happens" works as an implied question. A human could as easily file it as Specific-Number ("15-second"). Neither is wrong, so the definition needs a tie-break.

Write tie-break rules into the prompt, in priority order. For example: "If the opener contains a number that carries the promise, tag Specific-Number, even if it ends on a question." The rule matters less than having one, because consistency is what makes the counts comparable.

A tagging prompt you can use

This works in Claude or any capable model. Paste your taxonomy with definitions, then the ads.

You tag Meta ads. Use ONLY the values listed for each dimension.

TAXONOMY
hook_pattern (one value): [values with one-line definitions]
hook_mechanism (one value): [...]
angle (max two, main first): [...]
awareness (one value, judged by what the OPENER assumes): [...]
evidence (max two): [...]
...

TIE-BREAKS
1. A number that carries the promise beats a question.
2. ...

EXAMPLES
[2-3 ads with correct tags and one line of reasoning each]

For each ad below, return JSON:
{"id": "...", "hook_pattern": "...", "hook_mechanism": "...",
 "angle": ["..."], "awareness": "...", "evidence": ["..."],
 "confidence": "high|low", "reason": "one sentence"}
Mark confidence "low" when two values fit. Never invent a value.

The confidence and reason fields are what make review fast. You read the low-confidence rows, not all of them.

If you use Claude with the Ad Radar MCP server, skip writing the taxonomy: list_taxonomy returns the board's dimensions, a description of each and the valid values, so your ads end up in the same system as 2,443 winners and you can compare your mix with winning_patterns directly. Prompt 24 in Claude prompts for Facebook ads does exactly that.

Validate before you trust the counts

Tagging at scale is cheap, which makes it easy to skip checking. A short routine:

  1. Double-run 50 ads. Tag the same 50 twice in fresh sessions. Where the runs disagree, the definitions are ambiguous.
  2. Human sample. Have one person tag 30 of them blind and compare. Disagreements that repeat point to a missing tie-break.
  3. Fix definitions, not tags. If a dimension disagrees on more than about one ad in five, rewrite its definitions and tie-breaks, then re-run. Hand-correcting tags hides the problem.
  4. Freeze a version. Once it's stable, name it (v1) and don't change values mid-analysis. Changing the taxonomy halfway makes old and new counts incomparable.
  5. Recheck quarterly. New formats appear. Add values deliberately, with definitions.

What to do with the tags

Tags pay off when they meet performance. Three uses that work:

  • Your own account. Tag every ad you've run and join with spend and CPA. You'll see which angles you over-test and which you never tried. Our creative diversity matrix is built on this.
  • Competitors. Tag their long-running ads with the same taxonomy and compare their mix with yours.
  • Briefs. Every brief field becomes a tag value, so a winning ad's tags become the starting brief. See how to write a creative brief with AI.

Figures marked as estimated spend come from Ad Radar's model of engagement on public Meta Ad Library ads. They are estimates, labeled as such, and are best used to rank ads against each other.

Questions

What is AI ad analysis?

Using a language model to read ads (copy, transcripts, sometimes frames) and label them on fixed dimensions such as hook, angle, awareness and format, then comparing those labels against performance. Tagging is the step that turns a pile of ads into data you can count, filter and test against.

What tags should I use for ad creative?

Start with the choices you make when briefing an ad: hook pattern, hook mechanism, narrative angle, audience awareness, proof level, production format, video type, landing page type, niche and CTA. Each dimension should answer one question, with 5 to 13 values defined by what the ad does.

How accurate is AI ad tagging?

Good enough for patterns across hundreds of ads, not perfect ad by ad. Borderline cases are common, especially for openers that fit two patterns. Measure it: tag 50 ads twice, compare runs, compare with a human on a sample, and rewrite definitions for dimensions where they disagree often.

Can Claude tag my ads?

Yes. Give it your taxonomy with a definition for each value, ask for JSON output with only the allowed values, and include two or three tagged examples. If you use the Ad Radar MCP server, list_taxonomy returns the board's dimensions and values so Claude can tag your ads in the same system and compare them with winners.

Keep reading

See the ads that are already winning.

Membership is $49 every 4 weeks at the launch price. Cancel anytime.