Facebook Ads Library Scraper for Marketers
Pricing
from $6.00 / 1,000 ads
Facebook Ads Library Scraper for Marketers
Get the ads any brand or keyword runs on Facebook and Instagram from the Meta Ad Library: advertiser, ad copy, CTA, landing page URL, start date, days running, platforms, ad variations and an ads-per-advertiser summary. $6 per 1,000 ads; empty searches are free.
Pricing
from $6.00 / 1,000 ads
Rating
0.0
(0)
Developer
Tenfold Fleet
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
18 hours ago
Last modified
Categories
Share
Not affiliated with, endorsed by or sponsored by Meta Platforms, Inc. Facebook and Instagram are trademarks of Meta.
What does Facebook Ads Library Scraper for Marketers do?
Facebook Ads Library Scraper for Marketers collects the ads that brands run on Facebook, Instagram, Messenger, Threads and Audience Network from the public Meta Ad Library (facebook.com/ads/library). Type a keyword ("running shoes"), an advertiser Page ID or paste an Ad Library search link, pick a country, and you get one clean row per ad with the fields a marketer looks at first: advertiser, ad copy, headline, call to action, landing page URL, start date, days running, platforms and number of ad variations.
It also writes an ads-per-advertiser summary for every search: who is advertising on your keyword, how many ads each brand runs, how many variations they test and their longest-running ad. Use it as a Facebook Ads Library API: call it from the Apify API, a schedule, Make, Zapier or an AI agent. No Facebook account, login or cookies are needed.
Why use it?
- Competitor ad research: see every ad a competitor runs right now, with the copy, offer and landing page.
- Find winning ads: ads that have run for many days, or that the advertiser tests in many variations, usually perform. Sort by
daysRunningorcollationCount. - Market mapping: search a niche keyword and read the summary to see which brands spend on Meta ads in it.
- Creative swipe files: collect image and video URLs, headlines and CTAs for inspiration.
- Political and issue ads: spend ranges, impressions, currency and who paid for the ad.
- Monitoring: schedule it weekly on your competitors' Page IDs and compare
adArchiveIdvalues between runs.
Dynamic creative and catalog ads often show {{product.name}} placeholders in the Ad Library data. This Actor fills bodyText, title, linkUrl and ctaText from the ad's first real card instead, so the copy you get is the copy people saw.
What data can it extract?
| Field | Description |
|---|---|
pageName, pageId, pageProfileUrl, pageLikeCount | The advertiser |
bodyText, title, linkDescription | Ad copy, headline and link description |
ctaText, ctaType | Call to action ("Shop now", SHOP_NOW) |
linkUrl, displayUrl | Landing page URL and the domain shown on the ad |
startDate, endDate, daysRunning, isActive | When the ad started, stopped and how many days it has run |
platforms | facebook, instagram, messenger, threads, audience_network, whatsapp |
collationCount | How many variations of this ad the advertiser runs |
displayFormat | IMAGE, VIDEO, CAROUSEL, DCO (dynamic creative) or DPA (catalog) |
imageUrls, videoUrls, videoPreviewImageUrls, cards | Creative media and carousel cards |
spend, spendMin, spendMax, impressions, impressionsMin, impressionsMax, currency, paidForBy | Shown for political and issue ads |
adArchiveId, adLibraryUrl | Ad ID and a direct link to the ad in the Ad Library |
query, queryType, country | Which search found the ad |
How to scrape the Facebook Ads Library
- Add one or more search terms, advertiser Page IDs or Ad Library URLs.
- Choose a country (US by default, or ALL), active status, ad category and media type. Optionally set a date range.
- Set Max ads per query (default 100, up to 5,000).
- Click Start. Download the ads as JSON, CSV or Excel, or read them through the API. The ads-per-advertiser summary is in the run's key-value store under
SUMMARY.
How much does it cost?
Pay per result: $6 per 1,000 ads ($0.006 per ad), plus a tiny $0.00005 start fee per run. Proxy and compute costs are included. Searches that find no ads, invalid input and failed searches return a free row and cost nothing. Set a maximum cost per run in Apify and the Actor stops cleanly when it is reached. On the Apify Free plan, the $5 monthly credit covers about 800 ads.
Input
{"searchTerms": ["running shoes"],"pageIds": ["15087023444"],"country": "US","activeStatus": "active","adType": "all","mediaType": "all","maxAdsPerQuery": 100}
Output
{"pageName": "Example Running Co","bodyText": "Our lightest trainer yet. Free returns for 60 days.","title": "Meet the Cloud Runner 2","ctaText": "Shop now","linkUrl": "https://example.com/cloud-runner-2","startDate": "2026-08-17","daysRunning": 68,"isActive": true,"platforms": ["facebook", "instagram"],"collationCount": 3,"displayFormat": "VIDEO","adArchiveId": "1234567890123456","adLibraryUrl": "https://www.facebook.com/ads/library/?id=1234567890123456","pageId": "100000000000000","imageUrls": [],"videoUrls": ["https://video.xx.fbcdn.net/..."],"query": "running shoes","country": "US"}
A search with no ads returns {"query": "...", "adsFound": 0} and is not charged.
Tips
- Page ID: open the advertiser in the Ad Library; the number after
view_all_page_id=in the address bar is the Page ID. You can paste that whole link into Advertiser Page IDs. - Exact phrase matches the whole phrase; without it, an ad that contains any of the words can match.
- Keyword results come in the order the Ad Library itself shows them, so the first ads you get are the ones a visitor sees first.
- Media URLs from Meta expire after a few days. Download the creatives you want to keep soon after the run.
- The proxy setting defaults to residential, which is included in the price. Datacenter proxies only get the first 30 ads of a search.
- Parallel queries opens one browser session per parallel query, and only when there are at least 3 queries for each session.
Use it with AI agents (MCP)
Give Claude, ChatGPT, Cursor or any MCP client this Actor as a tool through Apify's MCP server: add https://mcp.apify.com?tools=tenfoldfleet/facebook-ads-library-scraper as a remote MCP server and sign in with your Apify account. The agent fills in the input, runs the Actor and reads the ads itself; you pay the same per-ad price as a normal run.
FAQ
Do I need a Facebook account?
No. The Meta Ad Library is public, and the Actor reads it the way a logged-out visitor does. It never logs in and uses no account cookies.
Can I get every ad of one brand?
Yes. Put the brand's Page ID in Advertiser Page IDs, set Active status to "Active and inactive ads" and Country to ALL.
Why do spend and impressions appear only on some ads?
Meta publishes spend, impressions and the payer only for ads about social issues, elections or politics. Set Ad category to "Issues, elections or politics" to search those ads.
How many ads can I get per search?
Up to 5,000 per query. Popular keywords have tens of thousands of ads; the summary shows the total that Meta reports. After the first 30 or so, Meta sends ads 10 at a time, so one query collects roughly 100 to 150 ads a minute. For several thousand ads per query, raise the run timeout or split the work over a few runs.
Disclaimer
This Actor is not affiliated with or endorsed by Meta. It collects only publicly available advertising data from the Meta Ad Library and does not log in. Make sure your use of the data complies with Meta's terms and the laws that apply to you.