Reading competitor ad libraries: what they reveal, what they hide

Every strategist has done the ritual. Open Meta's Ad Library, type a rival's name, scroll for twenty minutes, screenshot a few ads that look expensive, drop them in Slack with "thoughts?". The libraries are genuinely useful — free, legal, and complete in very specific ways — but most conclusions people pull from them are wrong, because the column everyone wants is missing from every single one. You can't see what a competitor's ads cost or what they returned. You can see something almost as good, if you know how to read it.
What the big three actually expose
Meta's Ad Library is the deepest of the three. For any Facebook or Instagram Page you get every currently active ad: the full creative, primary text, headline, call to action, which platforms it runs on, and — the part that matters most — the date each ad started running. You also see variations side by side, so when a brand is testing four hooks on the same concept, all four are sitting right there. What you don't get for commercial ads is spend, impressions, clicks, or anything resembling a result. Meta reserves that for political and social-issue ads, which carry spend bands and demographic reach and, per Meta's own documentation, stay searchable for seven years.
There's a second asymmetry people miss: commercial ads mostly vanish the moment they stop running. The exception is ads delivered in the EU, which the Digital Services Act forces Meta to archive for about a year after the last impression, with targeting parameters and per-country reach attached — but still no spend. Everywhere else, a paused ad simply disappears from the library, taking its start date with it.
Google's Ads Transparency Center covers Search, Display, and YouTube, but only for verified advertisers. You can pull an advertiser's creatives — including full video for YouTube — filter by format, region, and date, and see who actually pays for the ads, a disclosure Google added in 2025. Same wall, though: no spend or performance for commercial ads. Political ads get ranged spend buckets and a multi-year archive; everything else gets a creative and some dates, and older commercial ads age out of the archive rather than accumulating.
TikTok splits the job in two. The Creative Center's Top Ads is a curated showcase: real ads, filterable by region, industry, and objective — but selected by TikTok's own algorithm as representative top performers. It's an inspiration feed, not an archive, and you can't pull a specific competitor's full active roster from it. The Commercial Content Library is the regulatory counterpart, covering ads delivered in Europe under the DSA. Built for compliance audits, usable for research, thin outside the EEA and UK.
- Spend: hidden for commercial ads on every platform. Political and issue ads are the lone exception, and even those only get ranged buckets.
- Performance: no ROAS, CTR, or conversion data anywhere. The libraries show what ran, never what worked.
- Targeting: hidden outside the EU, where the DSA forces age, gender, and location parameters into view.
- The graveyard: on Meta, stopped commercial ads vanish. The only record of what a rival killed is whatever you captured before it disappeared.
Longevity: the one signal nobody can hide
Here's what the libraries can't obscure: time. An ad that's been running for three months is an ad somebody chose to keep funding, day after day, with real money. Agencies and in-house teams kill losing ads fast because losers bleed budget every single day they stay live. So survival isn't a passive fact — it's a spend decision renewed over and over by someone who can see the numbers you can't. An ad that died within a week told you the opposite story: it went into the account, met reality, and got pulled.
Longevity isn't a pure signal, so read it with the account's behavior in mind. A brand-awareness line item on a tiny always-on budget can run forever without proving anything. A neglected account keeps zombie ads alive out of inattention, not conviction. The tell is whether the account prunes: if you watch a competitor for a few weeks and see ads regularly appearing and dying, then the survivors in that account mean something. If nothing ever dies, longevity there is noise.
The libraries hide the scoreboard, but they can't hide the clock. Nobody keeps paying for an ad that isn't paying them back.
The hero / killed-fast / new-test read
Once you accept longevity as the signal, competitive research stops being vibes and becomes a sorting exercise. Pull a competitor's active ads with their start dates and split them into three piles.
- Heroes — live for months. These are carrying the account. Study their hook, tone, format, and claim structure hardest; this is the direction the competitor's own data keeps voting for.
- Killed fast — appeared in one sweep, gone by the next. These failed their test. A cluster of similar kills is a map of directions the rival already paid to disprove.
- New tests — started in the last week or two. This is where their creative team is betting next. Watch which of these survive into the hero pile.
Notice that two of the three piles only exist if you look more than once. Because Meta deletes stopped commercial ads, a single visit shows you a snapshot with no history — you literally cannot see what was killed. The read lives in the diff between visits. One browse tells you what a competitor is running; repeated sweeps tell you what they've learned.
Turning rival reads into briefs
A sorted competitor roster feeds briefs two ways. The first is counter-positioning: their heroes tell you which claim territory they own. If a rival's longest-running ads are all founder-to-camera trust plays, out-foundering them means fighting a proven incumbent on their home ground. The sharper brief concedes that lane and attacks a flank — proof-led demos, customer voice, a harder offer — where their account shows no surviving ads at all.
The second is gap-finding: what's absent from their roster entirely. Personas they never speak to, formats they've never tested, objections their copy never answers. If your own graded creatives show a hook style winning for you and the competitor's library shows they've never touched it, that's not a reason to relax — it's a reason to press before they find it. Their kill pile earns its keep here too: a direction they tested and abandoned quickly is a direction to approach differently or not at all.
The trap: copying winners without their context
The most tempting move is the worst one: take a rival's hero, reskin it in your brand colors, ship it. It usually disappoints, because you copied the ad but not the machine behind it. That hero works inside their offer, their landing page, their pricing, their audience history, and their brand equity — none of which came with the screenshot. An ad that survives on the strength of a beloved founder or a free-shipping threshold you don't match isn't evidence your version wins anything.
There's a survivorship problem underneath, too. You're seeing the ads that lived, not the forty siblings that died to get there, so the hero looks more inevitable than it was. What transfers across accounts is the structural read — hook style, tone, format, angle, the shape of the claim — not the execution. Copy the lesson, not the ad, and then let your own performance data grade whether the lesson holds for your brand.
Sweeping weekly, by hand or not
The manual version of all this is real work. Per brand, per rival, per platform: open the library, log start dates in a spreadsheet, screenshot creatives into a deck, diff against last week's notes to catch the kills, tag hooks and tones by eye. It's a solid afternoon for one brand's competitive set, and it decays instantly — skip two weeks and the graveyard evidence is gone, because the libraries don't keep it for you. Most teams do this exactly once, for the pitch, and never again.
This is the part worth automating, and it's how AgentMark handles competitors: weekly automated sweeps of each rival's public ad libraries, every ad grouped and tagged by hook, tone, and format, with first-seen and last-seen tracked so longevity is computed rather than eyeballed. Heroes, fast kills, and new tests fall out of the record instead of your memory. And because the libraries expose no spend or performance for commercial ads, AgentMark doesn't pretend otherwise — no invented spend estimates, no fake ROAS. Longevity is the honest signal, so longevity is the signal it reads. From there, a rival pattern is one step from a grounded brief: counter it or claim the gap, with the receipt attached.
Can I see how much a competitor spends on Meta or Google ads?+
Not for normal commercial ads. Meta and Google only publish spend for political and social-issue ads, and even then as ranged buckets, not exact figures. Third-party tools that quote a rival's monthly spend are publishing model-based estimates, not disclosures. The honest substitutes are longevity (how long an ad stays funded) and volume (how many variants a competitor keeps live).
How long does an ad need to run to count as a winner?+
There's no universal threshold — judge it against the account's own pruning behavior. In an account where ads visibly appear and die every couple of weeks, a creative that survives for months is a strong signal someone keeps choosing to fund it. In an account where nothing ever dies, longevity means little; it may just be neglect or a small always-on brand budget.
Why can't I find a competitor's old ads in the Meta Ad Library?+
Because Meta removes commercial ads from the library once they stop running. Only political and social-issue ads stay archived long-term, and ads delivered in the EU persist for about a year under the Digital Services Act. Everywhere else, the kill pile is invisible unless you swept the library before the ad died — which is the practical argument for sweeping on a schedule.
Connect read-only — wake up to your book graded and one grounded round per brand.
Start your free trial