What is a Winning Score for a Facebook ad, and how is it calculated?
Short answer
Winning Score is a 0 to 100 rank AdRadar gives each active Meta ad that matches your keyword: 45% run time percentile, 35% creative reuse percentile, 10% CTA strength, 10% copy clarity. Advertisers rarely keep paying for an ad that loses money, so ads that run long and get reused score high. It is a longevity signal, not proof of ROAS.
Key takeaways
- Percentiles are computed within your scan, so a score compares an ad to the other ads in the same niche and country, not to the whole library.
- Read it roughly as: 70 and up strong, 40 to 69 worth a look, under 40 weak or too new to judge.
- Ads whose copy doesn't contain your keyword get no score (shown as n/a); sort by days running to see them.
- Brand-new ads always score low on run time. Re-scan a niche every few weeks to catch new winners early.
Evidence from a real scan
Verified scan · Oct 15, 2026 Real AdRadar scan of the US Meta Ad Library for "hair growth serum", Oct 15, 2026 (9 on-topic active ads from 6 advertisers, median 187 days running).
| Advertiser | Days running | Hook | Angle | Ad |
|---|---|---|---|---|
| Vortexhaircare | 359 | Offer led | Fear of missing out | View in Ad Library |
| The PCOS Doctor | 223 | Story | Results testimonial | View in Ad Library |
| The PCOS Doctor | 212 | Story | Results testimonial | View in Ad Library |
| The PCOS Doctor | 187 | Story | Results testimonial | View in Ad Library |
| The PCOS Doctor | 187 | Story | Results testimonial | View in Ad Library |
Full data: hair growth serum ad report. We quote only advertiser names and link to Meta; we don't re-host creatives.
What goes into the Winning Score
| Signal | Weight | Why it matters |
|---|---|---|
| Run time percentile | 45% | Long-running ads are the ones advertisers keep paying for. |
| Creative reuse percentile | 35% | The same creative copied into many ads usually means it tested well. |
| CTA strength | 10% | A clear call to action is a sign the ad is built to convert. |
| Copy clarity | 10% | Readable, specific copy tends to survive longer than vague copy. |
Formula as implemented in AdRadar, Oct 2026.
What AdRadar is
- Remote MCP server at https://adradarmcp.cloud/mcp. Works in Claude, ChatGPT, Cursor and Claude Code; sign in with Google over OAuth.
- ad_radar_spy searches the public Meta Ad Library by keyword and country at the moment you ask (not a stored archive) and returns days running, creative reuse, hook, angle, CTA strength and a link to each ad in the Ad Library.
- ad_radar_tiktok_top returns 20 top TikTok auction ads per country from TikTok Creative Center, with CTR, likes, budget tier and objective.
- Prepaid credits: $3 for 60 scans, $5/100, $10/200, $25/600, $50/1400. Credits never expire. Failed or empty scans refund the credit automatically.
Try it in your agent
AdRadar is a remote MCP server for Claude, ChatGPT and Cursor. Connect it once, then paste this prompt.
Use AdRadar to scan "hair growth serum" in the US. Explain why the top 3 ads by Winning Score rank highest, and what the low scorers do differently.
Pay per scan, no subscription. Credits never expire. Failed or empty scans are refunded.
FAQ
Is a score of 100 guaranteed to be profitable?
No. It means the ad ran longer and was reused more than the others in that scan.
Why is an ad shown as n/a?
Its copy doesn't contain your keyword, so it may be off-topic. It still appears in results with its days running.
Can I get a score for my own ad copy?
Use ad_radar_evaluate to review a draft for hook, clarity and CTA before you launch.