Facebook Ad Library Scraper: All Filters, Full Creative, $2 per 1,000 Ads
Scrape any Facebook, Instagram, WhatsApp or Threads ad from Meta's public Ad Library. Paste an Ad Library URL and every filter (country, ad_type, active_status, media_type, publisher_platforms, content_languages, page_ids, date range, sort) is auto-parsed, or supply keywords, Page IDs and advertiser names directly. Returns the full creative (body, title, link, all images, all videos, carousel cards), page profile (likes, picture, categories), AAA / transparency data (payer, beneficiary, EU reach, age / gender / country breakdown), and lifetime advertiser spend.
Coverage
Global, all Ad Library countries
What you can scrape
- Ad identity: ad_archive_id, ad_id, collation_id, collation_count (variants in same A/B group), publisher_platform, display_format, is_active
- Creative: body_text, title, link_url, link_description, cta_text, cta_type, ad_caption, all images, all videos (watermarked), carousel cards
- Page profile: page_name, page_id, page_like_count, page_profile_picture_url, page_categories, branded content flags
- Transparency (AAA): payer_beneficiary_data, EU targets, location / age / gender audience, EU reach, country-age-gender breakdown
- Spend: total_advertiser_spend_lower / upper / currency (lifetime), political-ad spend and reach bounds
- Timing: start_date, end_date, total_active_time, start_date_formatted (YYYY-MM-DD)
- Compliance flags: contains_digital_created_media, contains_sensitive_content, is_violating_eu_siep, violation_types
Primary use cases
- Competitor ad audit. Pull every active ad for a competitor Page across 7+ countries to map their funnel hooks and creative themes
- Creative inspiration library. Sort by total_impressions DESC in a vertical to find the highest-spend ads worth modelling
- Political-ad transparency. Pull AAA data on issue ads in a region, surface payer / beneficiary chains for journalism or research
- Advertiser tracking. Daily snapshot of total_advertiser_spend on a competitor Page to estimate their monthly Meta budget
- EU age / gender targeting analysis. Use the country-age-gender breakdown to reverse-engineer competitor audience targeting
API example
curl -X POST "https://api.apify.com/v2/acts/santamaria-automations~facebook-ad-library-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"searchUrls": ["https://www.facebook.com/ads/library/?active_status=all&ad_type=all&country=DE&q=nike"],
"searchQueries": ["Tesla Model 3"],
"pageIds": ["15087023444"],
"country": "US",
"activeStatus": "ACTIVE",
"sortBy": "total_impressions_DESC",
"maxAdsPerInput": 50
}'
Integrations
- n8n, Make, Zapier: trigger runs and stream new ads to Slack or Notion via webhook
- AI Agents (MCP): Claude Desktop, Cursor, VS Code, LangChain, LlamaIndex
- Python, Node.js: Apify SDK for programmatic access
- Google Sheets, Airtable: Page IDs or URLs in, full ad dataset out
Output fields
| Field | Type | Example |
| ad_archive_id | string | 1843729385720156 |
| page_name | string | Nike |
| page_like_count | integer | 38,000,000 |
| publisher_platform | array | ["FACEBOOK", "INSTAGRAM"] |
| body_text | string | Just Do It. Get yours today. |
| link_url | string | https://nike.com/promo |
| cta_type | string | SHOP_NOW |
| start_date_formatted | string | 2026-04-01 |
| total_advertiser_spend_upper | integer | 1,200,000 |
| snapshot.videos | array | [{video_hd_url, video_preview_image_url, ...}] |
Related Actors