Facebook Ad Library Scraper - Competitor Ads, No Login
Pricing
Pay per usage
Facebook Ad Library Scraper - Competitor Ads, No Login
Spy on competitor Facebook & Instagram ads with no login — pull every active ad creative, copy, spend range, run dates and landing page from the Meta Ad Library. No account, no API key. For media buyers, agencies and dropshippers researching winning ads. Pay per ad scraped.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Renzo Madueno
Maintained by CommunityActor stats
0
Bookmarked
4
Total users
2
Monthly active users
3 days ago
Last modified
Categories
Share
Facebook Ad Library Scraper - Competitor Ads, Creatives, No Login
Spy on any brand's live Facebook & Instagram ads. This scraper pulls structured data straight from the public Facebook Ad Library (the transparency database Meta is legally required to keep open) — no login, no cookies, no Facebook account needed.
Search by advertiser (e.g. Nike) or by keyword (e.g. skincare, black friday) in any country, and get back the full ad creative: copy, headline, images, video URLs, CTA, destination link, platforms, run dates, and how many variants the advertiser is testing.
Perfect for ad spying, competitor research, creative inspiration, and agency ad-intelligence reports.
What you get per ad
| Field | Example |
|---|---|
pageName / pageId | Nike / 15087023444 |
adArchiveId + adLibraryUrl | direct link to the ad in the Library |
isActive, startDate, endDate | running since 2026-03-17 |
platforms | ["FACEBOOK","INSTAGRAM","AUDIENCE_NETWORK","MESSENGER"] |
mediaType | IMAGE / VIDEO / CAROUSEL / DPA |
title, body, caption | full ad copy |
ctaText, ctaType | Shop now / SHOP_NOW |
linkUrl, linkDescription | destination landing page |
imageUrls, videoUrls, videoPreviewUrls | downloadable creative assets |
cards | every card of a carousel ad (image/video + copy + link) |
variantCount | how many versions the advertiser is A/B testing |
pageLikeCount, pageCategories, pageProfilePicture | advertiser profile |
spend, impressions, currency | populated for political/issue ads |
containsDigitalCreatedMedia | AI-generated creative flag |
Example output
{"adArchiveId": "1869276447125570","adLibraryUrl": "https://www.facebook.com/ads/library/?id=1869276447125570","pageName": "Nike","pageId": "15087023444","isActive": true,"startDate": "2026-03-17T07:00:00.000Z","endDate": "2026-06-11T07:00:00.000Z","platforms": ["FACEBOOK", "INSTAGRAM", "AUDIENCE_NETWORK", "MESSENGER"],"mediaType": "CAROUSEL","title": "Nike: Shoes, Apparel, Stories","body": "Celebrate your birthday with Nike and unlock exclusive products, free shipping and returns.","ctaText": "Shop now","ctaType": "SHOP_NOW","linkUrl": "https://www.nike.com/...","imageUrls": ["https://scontent.xx.fbcdn.net/.../creative.jpg"],"videoUrls": [],"variantCount": 6,"cards": [ { "title": "...", "body": "...", "imageUrl": "...", "linkUrl": "..." } ],"queriedCountry": "US","scrapedAt": "2026-06-12T09:00:00.000Z"}
Input
| Field | Description | Default |
|---|---|---|
searchQuery ✅ | Brand/advertiser name or keyword (what you'd type in the Library search box) | Nike |
country | Two-letter country code for ad delivery (US, GB, CA, AU, DE, BR…) | US |
adType | all (commercial) or political_and_issue (adds spend & impressions) | all |
activeStatus | active, inactive, or all | active |
mediaType | all, image, video, meme, image_and_meme, none | all |
maxResults | Max ads to return (1–2000) | 50 |
proxyCountry | Residential proxy country (required — see below) | US |
Minimal input
{ "searchQuery": "Nike", "country": "US", "maxResults": 50 }
Use cases
- Ad spying — see exactly what creatives a competitor is running right now, across FB & Instagram.
- Competitor research — track which offers, hooks and landing pages a brand pushes, and how many variants they test.
- Creative inspiration — build a swipe file of winning ad copy + creative for your niche.
- Agencies — generate ad-intelligence reports for clients in seconds; export to Sheets/Looker.
- Trend monitoring — schedule daily runs on a keyword to catch new advertisers entering a market.
Pricing
This actor uses pay-per-event pricing:
- $0.005 per actor start
- $0.01 per ad returned
A typical 50-ad run costs about $0.51. You only pay for ads actually returned.
How it works (and reliability notes)
The Facebook Ad Library is a public, login-free transparency tool. This actor:
- Loads the public Library search page through a residential proxy.
- Harvests the ads embedded in the page, then drives Facebook's own ad-search GraphQL query by cursor to paginate.
Residential proxy is required. Facebook rate-limits ad pagination from datacenter IPs. The actor uses Apify Residential proxy by default; pick the proxyCountry that matches your target market for best results. If a run is partially rate-limited, simply rerun — each run gets a fresh IP.
political_and_issue ads additionally expose spend ranges and impressions (Meta publishes these for political advertising); commercial ads do not include spend/impression numbers (Meta does not publish those publicly).
FAQ
How do I scrape the Facebook Ad Library?
Enter a brand/advertiser name or a keyword in searchQuery (e.g. Nike or skincare), pick a country, set maxResults, and run the actor. It returns every matching live ad with full creative — copy, headline, images, video URLs, CTA, destination link, platforms, run dates, and variant count.
Do I need an API key or Facebook account? No. There is no login, cookie, Facebook account, or API key required. The Ad Library is a public transparency database, and the actor reads it through a residential proxy.
Why use this instead of the official Meta Ad Library API? Meta's official Ad Library API restricts full structured access to political and issue ads and requires identity verification and a registered app; commercial-ad coverage through the API is limited and heavily rate-limited. This actor pulls the same public commercial ad creatives you can see in the Library UI — copy, images, video, CTA, and variant counts — with no app registration.
Is there a Facebook Ad Library API alternative? Yes. This actor is a practical alternative to the Meta Ad Library API and to paid ad-spy tools, returning structured commercial ad data by advertiser or keyword in any country with simple pay-per-event pricing and no verification gate.
How fresh is the ad data?
Ads are pulled live from the Library at run time with a scrapedAt timestamp, reflecting what an advertiser is running right now. Schedule daily runs on a keyword to catch new advertisers and fresh creatives as they launch.
Can I get ad spend and impressions?
Only for political and issue ads — set adType: political_and_issue and the actor returns spend, impressions, and currency. Meta does not publish spend or impression numbers for commercial ads, so those fields are empty for adType: all.
Automate it
Add this actor to an Apify Schedule to monitor competitors automatically — for example a daily run on a brand name or niche keyword to detect new ad creatives, fresh variants, and advertisers entering your market. Connect the output to Make, n8n, Zapier, Google Sheets, Slack, or a webhook/CRM via Apify integrations so new ads land in your swipe file or client dashboard the moment they go live. Recurring ad monitoring is the core of any ad-intelligence workflow.
Related actors
- Facebook Marketplace Scraper — Scrape public Facebook Marketplace listings and prices, also without login.
- Instagram Scraper — Pull Instagram profiles and posts to round out your social ad-creative research.
- TikTok Scraper — Track competitor video creatives and trends on the other major paid-social platform.
- Google Trends Scraper — Correlate ad pushes with rising search demand for a brand or keyword.
- Website Contact Finder — Turn the advertisers you discover into outreach leads with direct contact info.
Not affiliated with or endorsed by Meta. Scrapes only the public, login-free Ad Library transparency data.