Back to Blog
GuidesSep 6, 2026|12 min read

Meta Ad Library: How to Search It Like a Media Buyer (2026)

EA
Eduard Andrei

Founder at Adship

The Meta Ad Library is Meta's free, public archive of ads running across its technologies. Anyone can search it, no Facebook account required, and it exists because Meta is required to prove it isn't hiding political manipulation or discriminatory targeting behind closed doors. That transparency mandate is also what makes the tool useful for something Meta didn't build it for: watching exactly what your competitors are running, right now, for free.

This guide covers what you can actually search for, what the Library will never show you no matter how you filter it, and three concrete recipes for pulling competitive intelligence out of it in a few minutes.


What the Meta Ad Library actually is

Per Meta's own help documentation, the Ad Library "is a place where you can search for ads that are running across Meta Products." For an ordinary commercial ad, that means what's currently active. Once an advertiser turns an ad off, it drops out of search results.

Three categories get longer retention, specifically because Meta has to prove it isn't enabling election interference. Meta's Transparency Center confirms the political and EU windows directly; the UK window and the 24-hour timing below are as shown in the Ad Library interface itself:

  • Ads about social issues, elections, or politics stay searchable, active or not, for seven years, anywhere in the world.
  • Ads that ran anywhere in the EU stay searchable for one year, regardless of category.
  • Ads that ran in the UK stay searchable for one year, but only ads that ran after July 1, 2025.

As shown in the Ad Library interface, an ad appears in the Library within 24 hours of its first impression, and any change to it (new copy, new creative, paused or resumed) is reflected within 24 hours as well.

What you can actually search for

FilterOptions
Keyword or advertiserFree-text search, or select a specific Facebook Page
CountryAny single market Meta supports, or all of them
Ad categoryAll ads, Issues/elections/politics, Housing, Employment, Financial products and services
PlatformFacebook, Instagram, Audience Network, Messenger, WhatsApp, Threads, and (via the API) Oculus and streaming services
Media typeAll, Image, Video, Meme, or None (text-only)
Active statusActive only (the default), or active + inactive
Delivery dateA start/end window

Two details most people miss: "Meme" is its own media type, separate from "Image," so you can isolate meme-format creative on its own. And "Ad category" isn't decorative: Housing, Employment, and Financial products and services are Meta's documented special ad categories, with their own filter in both the web tool and the API.

Ads in the social-issues/elections/politics category expose fields ordinary ads never get: total spend as a range, total impressions as a range, an estimated audience size, and a demographic breakdown by age and gender. Ads delivered into the EU or UK, plus political/issue ads reaching Brazil, get that demographic breakdown split out by region too, alongside targeting estimates (age, gender, location) of who the ad reached. EU-delivered ads additionally carry a Beneficiary field (the legal name of who the ad is presented on behalf of) and a Payor field (who actually paid for it, if different). Meta's own Advertising Standards documentation states these two fields exist specifically to meet its transparency obligations under the EU Digital Services Act. None of this appears for a normal commercial ad, ever, regardless of what filters you apply.

What it does not show you

  • No spend data for ordinary ads. Full stop. Spend ranges only exist for ads about social issues, elections, or politics.
  • No targeting parameters for ordinary ads. Age, gender, interest, and lookalike settings are never shown. The only targeting-adjacent fields that exist at all (target_ages, target_gender, target_locations) are Meta's own estimate of who an ad reached, and only for ads delivered to the UK or EU, or political ads reaching Brazil.
  • No performance data, for any ad, ever. CTR, conversion rate, ROAS, CPA: none of it. The Library shows creative and delivery, never results. An ad running for six months tells you it hasn't been killed; it does not tell you it's profitable.
  • No bulk export for ordinary ads. The API is read-only, and its full field set is scoped to political/issue ads and UK/EU-delivered ads. Meta's own field documentation is explicit that "you cannot currently download a batch of archived ads."

Three search recipes

Find a competitor's longest-running ads

  1. Go to the Ad Library and select their Facebook Page directly (more reliable than a keyword, since keyword search can also surface unrelated advertisers using the same words).
  2. Set Country to the market you're researching, and leave Active status on Active.
  3. Set Ad category to "All ads" unless you specifically want political ads.
  4. Every result card shows "Started running on [date]." Scan for the oldest dates. There's no native oldest-first sort for ordinary ads, so this is manual, but a handful of creatives that have been live for months while everything else around them cycles every few weeks is a strong signal of what's actually converting for that advertiser.

Find every video ad an advertiser runs in one country

  1. Select the advertiser's Page, set Country, and set Media type to Video.
  2. Leave Ad category on "All ads."
  3. What's left is every currently active video creative that Page is running in that specific market. Repeat with different countries to see how the same advertiser adapts video creative by geography.

Find new launches this week

  1. Select the advertiser (or search a keyword/niche if you're scanning a category rather than one brand).
  2. Leave Active status on Active, since a brand-new ad is by definition still running.
  3. Scan the "Started running on" date on each card for anything inside the last seven days.

If you're doing this recipe across more than two or three advertisers, the manual scanning stops being worth your time. That's the exact workflow Adship's Ad Spy automates (more on that below).

How to read an ad detail page

As shown in the Ad Library interface, click "See ad details" on a single ad, or "See summary details" when Meta has grouped several near-identical variants under a label like "3 ads use this creative and text." That page shows:

  • Library ID: the permanent identifier for that specific creative-and-text combination.
  • "Started running on [date]": the delivery start date.
  • Platforms: which Meta technologies (Facebook, Instagram, etc.) the ad is running on.
  • The full creative: Meta's own field documentation describes this as "uncompressed images and videos from the ad."
  • "This ad has multiple versions": shown when the advertiser is running several small variations of the same base ad. This is the fastest signal that an ad is being actively tested rather than left alone.
  • An "EU transparency" tag: shown on ads delivered into the EU, meaning that specific ad carries the extra reach and targeting-estimate fields described above.

The Ad Library API

The API exists for anyone who wants to query the Library programmatically instead of clicking through the web tool. Per Meta's own onboarding page, it's built for two specific jobs: pulling ads about social issues, elections, or politics delivered anywhere in the world over the past seven years, and pulling ads of any type delivered to the UK or EU over the past year. For searching all currently running ads across Meta technologies generally, Meta directs you back to the regular Ad Library web tool instead.

Getting access takes three steps: confirm your identity and location at facebook.com/ID (the same confirmation process required to run political/issue ads, which Meta says typically takes 1 to 2 days if you haven't already confirmed your ID), create a Meta for Developers account and agree to its Platform Policy, then go to facebook.com/ads/library/api/ and select Access the API. Meta also publishes an official Ad Library API Script Repository on GitHub with working code and a command-line interface.

What it returns: every ad includes its Library ID, creative content (body text, link titles, captions, descriptions), Page name and ID, delivery start/stop dates, and which platforms it ran on. Ads about social issues, elections, or politics additionally return spend (as a range), impressions (as a range), an estimated audience size, and demographic reach. Ads delivered to the UK or EU, or political/issue ads reaching Brazil, additionally return targeting estimates and reach by location.

Limits worth knowing: search_terms is capped at 100 characters, search_page_ids accepts up to 10 Facebook Page IDs per request, and the API is read-only (no creating, updating, or deleting). Error code 613 means you've exceeded the rate limit; 190 means your access token is invalid.

Instagram in the Ad Library

There's no separate Instagram ad archive. Instagram ads, including branded content carrying a paid-partnership label, live inside the same Meta Ad Library, filterable by setting Platform to Instagram. On the Instagram app itself, you can see any account's active ads by opening their profile, tapping the menu, and selecting "About this account," which links straight into the Ad Library. We cover this in more depth, including how to isolate Reels and Stories placements, in our Instagram Ad Library guide.

Common mistakes

  • Treating "Active" as "winning." The Library has no performance data. An ad that's been live for months hasn't necessarily converted well, it's just still turned on.
  • Searching one keyword and assuming you've found everything. A company running sub-brand or regional Pages won't all surface from a single search term. Search each Page directly when you can.
  • Forgetting that killed ads disappear. For ordinary ads, "inactive" means gone from search entirely. A competitor could have tested and scrapped dozens of losing creatives you'll never see.
  • Expecting spend or targeting data on a normal ad. It doesn't exist for anything outside the social-issues/elections/politics category and UK/EU-delivered ads, no matter which filter you try.
  • Leaving Country on your own location. Competitors localize creative by market. Check the countries that actually matter to your business, not just your default.
  • Treating it as real-time. New ads and edits can take up to 24 hours to appear.

Where Adship's Ad Spy fits in

Everything above is a manual process: pick an advertiser, set filters, scan dates, repeat tomorrow to see what changed. That's fine for a one-off lookup. It doesn't scale past two or three competitors tracked over time.

Adship's Ad Spy pulls from the same public Ad Library data and automates the part that doesn't scale: you track a competitor once, and it keeps pulling their ads on an ongoing basis instead of you re-searching manually. Each ad gets scored with a Winner Score (0-100, based on observed longevity, duplication, and reach) and a decoded hook, and the feed has quick filters for exactly the questions this guide walks through by hand: longest-running, newest, scaling, likely winners, duplicated creative, and changed ads. A minimum days-running filter does the "find their oldest ads" recipe for you automatically. When you find something worth referencing, you tag it into a Swipe File instead of screenshotting it into a folder, and a Strategy Drawer summarizes an advertiser's dominant hooks and creative patterns across everything you've tracked, meant to inform your next brief, not to be copied wording-for-wording.

Start a free 7-day trial to try Ad Spy on your own competitors. If you're specifically trying to save or archive ads rather than track them over time, see our guide to legitimate ways to save Ad Library ads.

Frequently Asked Questions

Do I need a Facebook account to use the Meta Ad Library?

No. Meta's own help documentation confirms anyone can view and search the Ad Library without logging in. You only need an account for account-specific features elsewhere on Facebook or Instagram.

How long does it take for a new ad to show up in the Library?

Within 24 hours of its first impression, per Meta. Edits to an existing ad, including pausing or resuming it, also reflect within 24 hours.

Can I see how much a competitor is spending on a normal ad?

No. Spend ranges only exist for ads about social issues, elections, or politics. An ordinary product or service ad never shows spend, no matter what plan or tool you use, because Meta simply doesn't expose that field for it.

Can I see who a competitor is targeting?

No, not for ordinary ads. The only targeting-adjacent fields in the entire system are Meta's own reach estimates for UK/EU-delivered ads and political ads reaching Brazil, and those describe who the ad reached, not the advertiser's original targeting settings.

Why can't I find an ad I saw yesterday?

It was most likely paused or turned off. For ordinary commercial ads, inactive means removed from search. Only ads about social issues, elections, or politics (and EU/UK-delivered ads, for a year) stay searchable after they stop running.

What's the difference between the Ad Library, the Ad Library Report, and the Ad Library API?

The Ad Library is the searchable web tool for browsing individual ads. The Ad Library Report is a downloadable CSV of aggregate spend data, covering ads about social issues, elections, or politics since September 2019. The API is the programmatic interface for querying the same underlying data, built for developers.

Can I download ads in bulk?

Not through the free web tool or the API for ordinary ads. Meta's own documentation states you can save the creative from an individual ad for analysis, but batch downloading isn't supported. See our downloader guide for what's actually available.

Does the Ad Library show an ad's performance, like CTR or ROAS?

No, never, for any ad in any category. The Library documents what ran and, for political/issue and EU/UK ads, roughly how much was spent and who it reached. It does not measure results.


Sources

Meet the AI Ad Operating System

Scan, spy, create, and launch Meta and TikTok ads with guarded actions taken with your approval.

Start Free
Share this article

Research. Create. Launch. Learn.

Adship connects Agent, Ad Spy, Canvas, and Learning Loop across Meta and TikTok, with bulk launch and guarded actions built in.

Get Started: It's Free