Answers

Is the Meta Ad Library API free, and what are its limits?

Short answer

Meta charges nothing for its Ad Library API, but you must confirm your identity with an ID document, and outside the EU it only returns ads about social issues, elections or politics, with no image or video files. To read ordinary commercial ads in any country, okdata returns 30 ads per call for $0.004, so 1,000 ads cost $0.136.

A founder selling portable espresso makers in the US wants every Facebook and Instagram ad that mentions the product category in one sheet, creatives included, to brief a designer. The official Ad Library API looks like the obvious pick because it is free. Two hours later the founder has uploaded a passport, created a developer app, and the query comes back empty: for ads that never reached the EU, the API only returns political and social issue ads.

What Meta's own API gives you

Rules as Meta documents them for the ads_archive endpoint, checked on 12 November 2026:

Official Ad Library API
Price Free
Access Identity and location confirmed at facebook.com/ID, plus a Meta for Developers account and an app. Without it, calls fail with error code 10
Commercial ads Only those that reached the EU, kept for a year. Elsewhere only ads about social issues, elections or politics
Creative Text fields and an ad_snapshot_url that renders the ad; no direct image or video files
Spend and impressions Political and issue ads only
Page filter Up to 10 page IDs per query
Rate limit No fixed quota published; Graph API throttling applies and over-limit calls fail with error 613

For research on political ads, or on EU ads with Meta's targeting and reach breakdowns, the official API is the right tool and nothing here replaces it.

Reading commercial ads in any country

okdata reads the public Ad Library, the same pages anyone can browse, and hands back ads as data:

  • Meta Ad Library search by keyword, with country, status (active, inactive or all), media (image or video) and sort (most impressions or newest). Each ad has the advertiser, copy, headline, image and video URLs, landing page, platforms and start date.
  • Meta advertiser ads lists what one Facebook page runs, by page ID or brand name.
  • Meta Ad Library ad detail fetches one ad by library ID or link, with first and last day shown and whether it still runs.
Job Calls Cost
300 ads for one keyword in one country 10 $0.04
Live ads of 10 competitors, 2 pages each 20 $0.08
Check whether 50 saved ads still run 50 $0.20

No developer app, no ID upload. New keys start with $0.10 of credit.

curl -G "https://api.okdata.online/v1/meta/ads/search" \
  -H "Authorization: Bearer $OKDATA_API_KEY" \
  --data-urlencode "query=portable espresso" \
  -d country=US -d status=active -d media=video

Pass page.next_cursor back as cursor for the next page; every page is its own call.

Limits on this side too

  • Spend and reach are Meta's to publish. Commercial ads outside the EU show no spend, impressions or reach in the library, so reach comes back null and is named in meta.unavailable. EU ads carry Meta's reach figure.
  • Stopped ads disappear. Outside the EU the library keeps an ad after it stops only if it is about social issues, elections or politics, so status=inactive mostly returns EU and political ads.
  • Media links point at Meta's servers. Download the creatives you want to keep; such links can expire.
  • Public data only. Nothing from ad accounts and no targeting beyond what the library shows.

Which one to use

Use Meta's API for political ad research or EU work that needs targeting and demographic reach, if verifying your identity is fine. Use the Ad Library website for a one-off look; it is free and needs no account. Use okdata when you need commercial ads from the US, Asia or anywhere else, with creatives, inside a script or an agent. Paid ad-intelligence tools add spend estimates and long history, which no library publishes. See ad intelligence for the full workflow and pricing for every endpoint.

Updated