Meta Ad Library
A public, searchable database of all active ads running across Meta's platforms - Facebook, Instagram, Messenger, and the Audience Network - available to anyone without an account.
The Meta Ad Library is a public database of all ads currently running on Facebook, Instagram, Messenger, and the Audience Network. No account required. Anyone can search it.
This makes it one of the best free competitive intelligence tools in digital marketing. Most brands don’t use it systematically. The ones that do have a meaningful information advantage.
What you can see
For every active ad in the library:
- The full creative: image, video, carousel frames, or collection format
- Complete ad copy and headline, exactly as running
- CTA button type (Shop Now, Learn More, Sign Up, etc.)
- Launch date: when the ad started running
- Platforms where it’s serving (Facebook, Instagram, Messenger, Audience Network)
- Active/inactive status
For political ads and issue ads, Meta also shows spend ranges and impression estimates. For commercial ads, these are not disclosed.
What the library does not show: targeting parameters, audience size, spend levels, impressions, click-through rates, or ROAS. You see the creative but not the business data behind it. This is a meaningful limitation - an ad running for six months might be a top performer, or it might be a forgotten campaign that was never paused. You cannot tell from library data alone.
How to use it manually
Go to facebook.com/ads/library. Search by advertiser name or keyword. Filter by country and ad category. Select “Active” status to see only currently running ads.
For a basic competitive audit, start by searching your top competitor. Look at:
- How many ads they are running. Volume signals investment level and testing activity.
- How long each ad has been running. Sort by “oldest” to surface long-running ads.
- Format mix. Count the ratio of video to image to carousel ads.
- Copy patterns. Read through the body copy across multiple ads. What themes repeat?
- CTA patterns. What percentage use “Shop Now” vs. “Learn More”?
This takes 30-60 minutes and gives you a meaningful read on a competitor’s current creative strategy - what they’re testing, what they’re leaning on, and what they’ve apparently stopped investing in.
How to read the longevity signal
An ad running for 90+ days is almost certainly generating positive returns. Brands do not pay to serve ads for three months if they are not converting. The oldest-running ads in a competitor’s library are their best performers.
This is the most actionable insight the library offers: you do not need to see their ROAS to know which ads are working. Longevity is a proxy signal.
Caveats worth knowing:
- Longevity does not tell you why an ad is working. A brand-awareness video can run for months at low spend with no conversion pressure.
- Some brands run legacy ads that were never properly paused. An ad that launched in 2022 and is still technically “active” might be delivering $2/day to an abandoned campaign.
- A recent mass launch (20+ ads in one week) usually signals either a new campaign push or a systematic creative test, not that every ad is a winner.
In RYZE’s ad account, one video ad launched June 14, 2025 was still running 265 days later at the time of scraping. Their Stir.Sip.Shine brand campaign averaged 207 days per ad. Their workhorse conversion ads averaged 39.5 days. The longevity gap between those two segments tells you something real: the brand campaign is built to run long, the conversion ads cycle through continuously.
Reading format mix
The ratio of video to image to carousel ads signals where a brand is finding efficiency and where they’re experimenting.
A brand running 70% static images is typically a brand that has found image formats efficient for direct conversion - lower production cost, predictable performance. A brand shifting heavily toward video is either in discovery mode (testing if video outperforms image) or has found video converts better and is doubling down.
Looking at Obvi’s Meta account: heavy use of long-form copy advertorials with images. This reflects a deliberate choice: cold audience conversion through educational copy outperforms short-form creative for their supplement category. A competitor looking at that format mix would see a signal about what audience behavior actually rewards in that space.
Analyzing copy patterns at scale
Browsing 10-20 ads manually shows you what a brand is saying. Reading 50-100 ads reveals the architecture of their messaging.
When looking at copy across a large sample, focus on:
- Recurring phrases: what words appear in almost every ad? These are the brand’s locked messaging anchors.
- Lead variation: what changes in the opening line? This shows what hooks they’re testing.
- CTA consistency: brands that use “Shop Now” on 94% of ads (like RYZE) are optimizing for direct conversion. Brands split between “Shop Now” and “Learn More” are running two distinct strategies.
- Length consistency: if 80% of ads fall in the same character range, they have found a copy length sweet spot.
Copy pattern analysis by manual browsing has obvious limits at 200+ ads. This is where scraping becomes useful.
Scaling with the Ad Library API
Meta offers an Ad Library API for programmatic access, accessible with a developer account at facebook.com/ads/library/api. The API lets you pull structured data: ad IDs, launch dates, creative types, platforms, page information.
For the teardowns on this site, we use Apify’s Facebook Ads Library Scraper to pull structured datasets of 400-500 active ads per brand, sorted by impressions. This produces a dataset you can analyze in Python - counting creative types, identifying copy variants, measuring longevity distributions, detecting launch patterns. The RYZE Meta teardown pulled 400 ads from 4,743 total in their library and found signals (the MCT oil to prebiotics copy switch, the automated 07:00 UTC launch cadence) that are completely invisible from manual browsing.
What the library doesn’t tell you
Understanding these gaps prevents over-interpreting what you see:
- No spend data for commercial ads. You cannot tell if a brand is spending $500/day or $50,000/day on a given ad.
- No targeting data. You cannot see who they are reaching - age, geography, interests, custom audiences.
- No performance data. CTR, ROAS, conversion rate, CPA - none of this is visible.
- No audience size. You cannot tell if an ad is serving to 100,000 people or 1,000.
- Paused ads disappear. The library only shows active ads. Ads that were killed last week are not visible, so you cannot see what a brand tested and abandoned.
The library is a creative intelligence tool, not a business intelligence tool. It tells you what a competitor is saying and how long they’ve been saying it. Why it works, how much they’re paying for it, and who they’re showing it to - that stays private.
Frequently asked questions
Does the Meta Ad Library show ads from all countries? You can filter by country, but availability varies. The EU, US, and major markets have the most complete data due to regulatory transparency requirements. Some ad formats and political ad data have different disclosure rules by region.
Can I see ads that ran in the past and are no longer active? Partially. The library retains a 7-year archive for political and issue-based ads. For commercial ads, inactive ads are removed from the default view. You can see some inactive ads if you search by advertiser and toggle “All” instead of “Active,” but the data is less reliable than for currently running ads.
What’s the best way to track a competitor’s creative strategy over time? Manual monitoring weekly using the “Sort by newest” filter to catch new launches. For more systematic tracking, tools like Foreplay, BigSpy, or Minea aggregate and notify on new ads from tracked competitors. For deep analysis with structured data, the Ad Library API with custom scraping is the most complete option.
Where we've analyzed Meta Ad Library
Obvi Runs 4x More Google Ads Than Meta Ads. But When You Look at What's Actually Active - the Ratio Reverses.
119 Google ads vs 30 Meta ads - but only 22 Google ads are live. Obvi's real ad engine is Meta: 70% video, zero discounts, three pain-point funnels, and a two-track CTA strategy.
Ridge Wallet Marketing Strategy: 273 Meta Ads, 50 Instagram Posts and Website Scraped, Full Funnel Analyzed
I scraped Ridge Wallet's entire Meta Ad Library - all 273 active creatives - and analyzed their Instagram, tech stack, and email flows. 88% of their ads lead with value, not discounts.
I Scraped 400 of RYZE's Meta Ads. Here's What a $50M Mushroom Coffee Brand's Ad Machine Actually Looks Like.
400 active ads, 28 body copy variants, one copy powering 56% of the sample. Inside RYZE's two-track Meta strategy - workhorse acquisition engine vs. 207-day brand play - plus a product reformulation their ads gave away.