№ 004STRATEGY2026-05-14

Where to find winning Meta and TikTok ads worth replicating in 2026

Meta Ad Library and TikTok Creative Center are free. The four filters that turn the library into a winners shelf — and the signals that mark real winners.

PeterPeter’s Lab
RUNTIME 8 MINPUBLISHED 2026-05-14TOPIC STRATEGYISSUE № 004

A Meta Ad Library browser mockup with the four high-signal filters highlighted: format set to video, country set to your target market, "active for 90+ days", and the search field carrying a competitor's brand. The top three result cards each carry a small "winner" tag.

The fastest way to learn paid social is to study ads that pay rent. Not the ads that won an awards show. Not the ads that went viral on a creator's personal account. The ads that have been quietly running on a brand's media budget for three months, twelve months, sometimes longer — because the math works.

This dispatch is about how to find those ads, how to tell them apart from the ones that look winning but aren't, and how to turn the ones that pass the bar into a brief your AI ad generator can actually use.

What "winning" actually means

The first thing to get right is the definition. A winning ad is not the one with the most likes, the most shares, or the most public attention. Engagement-on-organic and conversion-on-paid are two different sports played on the same field.

A winning ad is an ad that a brand chose to keep paying for after they saw the spend versus return. That's the only signal that survives every form of vanity metric. Brands stop running ads that don't make the math work. Brands keep running ads that do. The longer an ad has been live, the louder that signal gets.

Almost everything else you can measure about an ad — likes, shares, comment sentiment, "I love how authentic this feels" — is downstream of either luck or budget. Time-on-spend is the only public signal that filters for actual performance.

Where to look — the two libraries that matter

Two public libraries cover the bulk of paid social inventory worth studying. You can do this work without paying for any third-party tool, although the third-party tools save time once you've gone through this loop a few times manually.

Meta Ad Library is the one to learn first. It covers Facebook and Instagram (same library, since both run on Meta's ad system), is fully searchable by brand or keyword, and crucially, exposes the date a creative first went live. That date is your most important filter. The library is at facebook.com/ads/library and requires no login.

TikTok Creative Center covers TikTok Ads Manager creatives that have opted into discoverability. Coverage is patchier than Meta's — TikTok doesn't surface every running ad — but the ads that are surfaced are typically high-performing because brands volunteer them as case studies. It's at ads.tiktok.com/business/creativecenter.

For a third channel, YouTube Ads Library exists but is less useful for short-form UGC research. YouTube's ad inventory leans heavier on long-form pre-roll, which is a different rhythm and rewards different mechanics. Skip it for now.

Third-party tools — Foreplay, Atria, Minea, BigSpy — wrap the Meta and TikTok libraries with better search, saved boards, and "show me ads similar to this one." Worth paying for once you're spending more than two hours a week on this work. Not necessary to start.

How to filter for "still running"

Open Meta Ad Library. Type your competitor's brand name. Set the country to your target market (US, UK, AU, whichever you actually advertise in). Set the format to video. Then scroll, and look at the date next to each ad.

The four filters that matter, in order:

Format = video. Static images and carousels follow different rules than video; mixing them dilutes the read. Stick to video for video research.

Country = your target market. A creative that wins in the US may lose in the UK because the cultural references don't translate. The reverse is also true. Filter to the geo you actually compete in.

First seen ≥ 90 days ago. This is the rent-paying filter. An ad that's been live for more than 90 days is paying its way; the brand wouldn't keep funding it otherwise. 30 days is too noisy (the brand might still be in test phase); 90 days is the cleanest threshold.

Active = yes. Some ads have been removed but stayed in the library; they're not winners, they're former winners. Filter to currently-active.

What you get back, after these four, is a small set of ads you can take seriously. For most competitor pages, this filter pass cuts a noisy library of 200+ ads down to maybe 8–15 worth analyzing.

The signals that separate "kept running" from "kept testing"

Even within the "live for 90+ days" filter, not every ad you find is a true winner. Brands sometimes leave under-performing creatives running because nobody pruned the campaign. The signals that distinguish a real winner from a forgotten test are mostly visible in the ad itself plus the ad library's metadata.

Eight signals that flag a Meta or TikTok ad as worth replicating: long active window, multiple format variants, multiple geo placements, multiple language versions, current week activity, paired with younger creatives in same campaign, distinct hook from rest of library, and creator-style natural performance.

The strongest signals, ranked:

Multiple format variants of the same creative. If a brand has the same script live as a 9:16, a 1:1, and a 4:5 — and those variants are all 90+ days old — that creative is paying for the cost of being re-cut. Brands don't pay for re-cuts on losers.

Multiple geo or language versions. A creative that's been re-shot or re-dubbed for a second market is a creative the brand has high confidence in. Localization is expensive; nobody localizes a guess.

Same campaign mixes the old creative with newer ones. Brands that keep an old winner in rotation while testing new variants alongside it are signaling that the old one is still pulling its weight. The creative is the control in their ongoing test.

Currently-active spend on the brand's other channels. If the brand is running a TikTok Spark Ads version of a creative they're also running on Meta, that creative has cleared two ad systems' performance bars, not one.

Try the loop on a winner you've already found. Paste any Meta or TikTok ad URL — get a structured analysis of what's actually doing the lifting in 90 seconds, then turn it into an AI video ad ready for your own brand.

Analyze a winning ad →

The signals that fool you

A handful of things look like winning signals but aren't. These are the ones to discount:

High view count. View count is mostly a function of media spend. A brand with a $10K/day budget will rack up views on any creative they run; the view count tells you about the budget, not the creative.

A famous creator's face. Some brands run ads that feature recognizable creators because the creator is part of the deal, not because the ad performs. The creator's reach lifts the metrics; the creative itself may be average. If you can't replicate the casting, treat the creative as un-replicable.

A long, polished production. The aesthetic of "this clearly cost a lot to make" doesn't correlate with conversion. Often anti-correlates — the highest-performing UGC reads as if it were filmed on a phone, because that's exactly what stops the scroll.

A meme-aware reference. Trend-jacking ads have a short half-life and are usually pulled within 30 days. If you find one in the 90+ filter, it's the exception, not the rule.

What to do with the ads you find

Once you have your filtered set of 8–15 ads worth taking seriously, the work splits into two paths.

The first path is doing the analysis by hand: watch each ad, note where the hook lands, name the emotional arc, mark when the product enters frame, score the CTA. Twenty minutes per ad if you're disciplined. Two hours minimum for the set. Doable for one round; brittle as a habit.

The second path is running each ad URL through an analyzer that does the same pass on a fixed rubric — same dimensions, same vocabulary, same grade scale every time. The output is a structured report you can compare across ads and feed directly into the script generator that writes your replication. Same loop, ten minutes for the set instead of two hours.

Either way, the rhythm is the same: filter → analyze → derive a brief → generate. Skip any of the four steps and the math falls apart.

What's still hard

A few things even this filter pass won't solve.

Brand-new categories. If you're launching something genuinely novel where no direct competitor has been running ads, you don't have a winners shelf to study. You'll have to study adjacent categories (similar buyer, different product) and translate the mechanics. Slower, but the same loop.

Geo arbitrage signals. A creative that's been a US winner for 12 months sometimes still won't work in a smaller market simply because the comparison set the audience holds in their head is different. You learn this only by testing.

Brands with small ad budgets. If a competitor is spending under $50K/month on Meta, their "kept running" signal is noisy — they may simply not have rotated the creative because they don't have the bandwidth. Treat small-spender libraries with a lighter hand than enterprise libraries.

The takeaway

The fastest path to AI ads that convert isn't a better model. It's a better source set. Meta Ad Library and TikTok Creative Center are public, free, and load-bearing for any brand running paid social. The four filters above turn either library into a rent-paying winners shelf you can study at your own pace.

Once that shelf is populated, the rest of the loop — analyze, replicate, generate — is what the AI ad generator handles. The only thing the system can't do is pick which winners to feed it. That part stays a human judgment call, and now you know what to look for.


If you have a winner you've already filtered out of your competitor's library, the CTA below will run it through the analyzer in 90 seconds and hand you a brief you can take straight into the script generator.

Where to find winning Meta and TikTok ads worth replicating in 2026 · AI Ad Generator