Facebook Ad Library Scraper
Under maintenancePricing
from $2.50 / 1,000 ad results
Facebook Ad Library Scraper
Under maintenanceScrape every active and inactive Facebook and Instagram ad for any advertiser Page or keyword creative, copy, run dates, platforms, and EU reach.
Pricing
from $2.50 / 1,000 ad results
Rating
0.0
(0)
Developer
Andrew
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Pull every active and inactive Facebook and Instagram ad an advertiser is running — creative, copy, run dates, targeted platforms, EU reach, and direct image and video URLs. Search by advertiser Page or keyword, and export the full ad library to JSON, CSV, or Excel.
What you get
For every ad, the dataset returns:
- adArchiveId — Meta's stable archive ID for the ad creative
- adId — internal ad delivery ID when available
- pageId / pageName — the advertiser Page running the ad
- pageProfilePictureUrl — current avatar of the Page
- pageCategories — Page categories (e.g.
Retail company,Beauty brand) - isActive — true if the ad is still in delivery
- startDate / endDate — ISO timestamps;
endDateis null while still active - publisherPlatforms —
FACEBOOK,INSTAGRAM,MESSENGER,AUDIENCE_NETWORK - bodyText — primary ad copy
- ctaText / ctaType — call-to-action button text and type (e.g.
Shop Now/SHOP_NOW) - linkUrl — destination URL of the ad
- linkDescription, title, caption — additional headline / display URL fields
- images — full-size image URLs (carousels return every card)
- videos —
{ url, preview }pairs for every video creative variant - euTotalReach — EU-wide reach (EU ads only, null elsewhere)
- euSpendRange — lower/upper spend bounds with currency (EU ads only)
- snapshotUrl — permalink to the ad inside the Meta Ad Library
- scrapedAt — ISO timestamp of scrape
Use cases
- Competitor ad intelligence — monitor every Facebook and Instagram ad your competitors are running, including creative and copy
- Ad creative research — pull a brand's entire ad library to study hooks, formats, and visual direction
- Affiliate and partner compliance — audit affiliates running paid traffic on your brand or trademark
- Influencer and merchant vetting — verify advertiser identity and ad volume before partnerships
- Political and issue ad monitoring — track spend, reach, and creative across electoral and social issue advertisers
- Market and trend research — see how brands roll out launches and seasonal campaigns over time
- Brand safety monitoring — surface unauthorized advertisers using your brand name or domain
How to use
- Pick Search Type —
By Advertiser Page(paste a Facebook Page URL or numeric Page ID) orBy Keyword - Enter the Page URL / Page ID / Keyword — e.g.
https://www.facebook.com/nike,15087023444, orrunning shoes - Pick a Country — 2-letter ISO code (
US,GB,DE,AU, ...) orALLfor worldwide - Filter by Ad Status (
All,Active only,Inactive only) - Filter by Ad Category (
All,Political & social issue,Housing,Employment,Credit) - Set Max Items — default 200, or
0for unlimited (auto-paginates until exhausted or the run times out) - Run the actor — results stream into the Dataset tab. Download as JSON, CSV, or Excel.
Pagination across runs
A single run pulls up to your Max Items in one go. For very large advertisers (Nike, Shein, election campaigns), set maxItems to 0 and let the actor auto-paginate until it times out — the cursor is saved automatically.
After the run finishes, open the Key-value store tab → copy the NEXT_PAGE_ID value → paste it into Page ID on the next run to resume. If NEXT_PAGE_ID is null, you've fetched everything.
Search types
- By Advertiser Page — paste a full Facebook Page URL (
https://www.facebook.com/nike), a username (nike), or a numeric Page ID (15087023444). Usernames are resolved to the numeric Page ID automatically. Returns every ad that Page has run. - By Keyword — full-text search across active and inactive ads. Useful when you don't know the exact Page (e.g.
crypto presale,mounjaro alternative).
Country filter
Country filtering is applied at the Meta API level. Setting a specific country (US, GB, DE, ...) returns ads targeted to people in that country. Setting ALL returns ads from every country — useful for finding ads that ran globally or for political / issue ads where region matters less than topic.
Sample output
{"adArchiveId": "1234567890123456","adId": null,"pageId": "15087023444","pageName": "Nike","pageProfilePictureUrl": "https://scontent.xx.fbcdn.net/...","pageCategories": ["Sportswear store"],"isActive": true,"startDate": "2026-04-12T00:00:00.000Z","endDate": null,"publisherPlatforms": ["FACEBOOK", "INSTAGRAM"],"bodyText": "New Vomero 18 — Run softer, run longer.","ctaText": "Shop Now","ctaType": "SHOP_NOW","linkUrl": "https://www.nike.com/launch/vomero-18","linkDescription": "nike.com","title": null,"caption": "nike.com","images": ["https://scontent.xx.fbcdn.net/...jpg"],"videos": [],"euTotalReach": null,"euSpendRange": null,"snapshotUrl": "https://www.facebook.com/ads/library/?id=1234567890123456","scrapedAt": "2026-05-20T13:01:22.901Z"}