Meta Ad Library Facebook & Instagram Ad Intelligence
Pricing
from $0.01 / 1,000 results
Meta Ad Library Facebook & Instagram Ad Intelligence
Scrape Meta's Ad Library to research Facebook and Instagram advertising strategies. Discover competitor creatives, copy & targeting insights. Ad creative extraction Copy analysis Platform targeting Demographic insights Spend estimates Status filtering Ad research Creative inspo Competitors
Pricing
from $0.01 / 1,000 results
Rating
0.0
(0)
Developer

John Rippy
Actor stats
0
Bookmarked
5
Total users
2
Monthly active users
20 hours ago
Last modified
Share
Meta Ad Library Scraper - Facebook & Instagram Ad Intelligence
Scrape competitor ads from the Meta Ad Library in seconds. Extract ad creatives, copy, targeting insights, and spend estimates from Facebook, Instagram, and Messenger ads for competitive intelligence and market research.
What This Actor Does
Meta Ad Library Scraper automates the process of researching competitor advertising strategies. Instead of manually browsing the Ad Library, this actor:
- Searches the Meta Ad Library by keyword, page name, or Page ID
- Extracts ad data including creatives, copy, CTAs, and targeting
- Provides engagement metrics including impression ranges and spend estimates
- Analyzes ad sentiment using AI (OpenAI, Anthropic, Google, Mistral, Cohere)
- Delivers results via JSON, webhook, or direct API integration
Who Is This For?
Marketing Agencies
- Research client competitors before campaign launches
- Create competitive analysis reports with real ad examples
- Benchmark ad spend and creative strategies
E-commerce Brands
- Spy on competitor promotions and messaging
- Find winning ad formats and copy in your niche
- Track seasonal advertising trends
Media Buyers & Advertisers
- Research successful ad creatives before launching campaigns
- Understand competitor targeting strategies
- Find inspiration for ad copy and visuals
Market Researchers
- Analyze industry advertising trends at scale
- Track brand advertising activity over time
- Quantify competitive advertising spend
Consultants & Freelancers
- Deliver professional competitor reports to clients
- Support strategy presentations with real data
- Validate marketing recommendations with evidence
Quick Start
Demo Mode (Test Output Format)
{"searchQuery": "fitness app","country": "US","demoMode": true}
Real Scraping (Keyword Search)
{"searchQuery": "meal delivery","country": "US","platform": "FACEBOOK","maxAds": 50,"demoMode": false}
Real Scraping (Specific Page)
{"pageName": "Nike","country": "US","maxAds": 100,"includeCreatives": true,"includeEngagement": true,"demoMode": false}
Key Features
| Feature | Description |
|---|---|
| Multi-Platform | Facebook, Instagram, Messenger, Audience Network |
| Ad Creatives | Extract images, videos, and carousel assets |
| Copy Analysis | Headlines, descriptions, CTAs, link URLs |
| Spend Estimates | Impression ranges and estimated ad spend |
| Engagement Metrics | Reach estimates and engagement rates |
| AI Sentiment | Analyze ad copy tone with 5 AI providers |
| Camoufox Mode | Anti-detection browser for reliable scraping |
| Firecrawl Mode | API-based alternative for faster results |
| Webhooks | Real-time delivery to Zapier, Make, n8n |
Input Parameters
Search Options
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQuery | string | - | Search ads by keyword (e.g., "fitness app", "meal delivery") |
pageName | string | - | Facebook/Instagram page name (e.g., "Nike") |
pageId | string | - | Direct Facebook Page ID (more accurate) |
Filter Options
| Parameter | Type | Default | Description |
|---|---|---|---|
country | string | "US" | Target country (US, GB, CA, AU, DE, FR, etc.) |
platform | string | "ALL" | Platform filter (FACEBOOK, INSTAGRAM, MESSENGER, ALL) |
adType | string | "ALL" | Ad category (POLITICAL, HOUSING, EMPLOYMENT, CREDIT, ALL) |
mediaType | string | "ALL" | Media type (IMAGE, VIDEO, MEME, ALL) |
activeStatus | string | "ACTIVE" | Status filter (ACTIVE, INACTIVE, ALL) |
maxAds | number | 50 | Maximum ads to scrape (1-500) |
Data Options
| Parameter | Type | Default | Description |
|---|---|---|---|
includeCreatives | boolean | true | Include image/video URLs in output |
includeEngagement | boolean | false | Include detailed engagement metrics |
demoMode | boolean | false | Generate sample data for testing |
webhookUrl | string | - | URL to POST results when complete |
Anti-Detection Options
| Parameter | Type | Default | Description |
|---|---|---|---|
useCamoufox | boolean | false | Enable Camoufox anti-detection browser |
useFirecrawl | boolean | false | Use Firecrawl API for scraping |
firecrawlApiKey | string | - | Your Firecrawl API key |
proxyConfiguration | object | - | Proxy settings for avoiding blocks |
AI Sentiment Analysis
| Parameter | Type | Default | Description |
|---|---|---|---|
enableSentimentAnalysis | boolean | false | Enable AI sentiment analysis of ad copy |
aiProvider | string | "none" | AI provider: openai, anthropic, google, mistral, cohere |
aiApiKey | string | - | Your AI provider API key |
aiModel | string | - | Custom model override (optional) |
Real-World Examples
Example 1: Competitor Deep Dive
Research all active ads from a specific competitor:
{"pageName": "Peloton","country": "US","activeStatus": "ACTIVE","maxAds": 200,"includeCreatives": true,"includeEngagement": true,"demoMode": false}
Example 2: Industry Keyword Research
Find all ads in a specific niche:
{"searchQuery": "project management software","country": "US","platform": "ALL","maxAds": 100,"enableSentimentAnalysis": true,"aiProvider": "openai","aiApiKey": "sk-...","demoMode": false}
Example 3: Instagram-Only Analysis
Focus specifically on Instagram ads:
{"searchQuery": "skincare","country": "US","platform": "INSTAGRAM","maxAds": 75,"includeCreatives": true,"demoMode": false}
Example 4: International Market Research
Research ads in a specific country:
{"searchQuery": "food delivery","country": "DE","platform": "ALL","maxAds": 50,"demoMode": false}
Example 5: With Camoufox Anti-Detection
For more reliable scraping with bot detection evasion:
{"searchQuery": "SaaS","country": "US","useCamoufox": true,"proxyConfiguration": {"useApifyProxy": true},"maxAds": 100,"demoMode": false}
Example 6: Webhook Integration for Automation
Send results to Zapier/Make for further processing:
{"searchQuery": "ecommerce","country": "US","maxAds": 25,"webhookUrl": "https://hooks.zapier.com/hooks/catch/123/abc","demoMode": false}
Output Format
Standard Ad Output
{"adId": "META-1704412800000-0","pageName": "Nike","pageId": "123456789012345","pageProfileUrl": "https://www.facebook.com/nike","adContent": "Ready to make a change? Our proven system has helped 10,000+ people achieve their goals. Limited spots available!","headline": "Transform Your Life Today","linkCaption": "www.nike.com","callToAction": "Shop Now","linkUrl": "https://www.nike.com/offer","imageUrls": ["https://..."],"videoUrls": [],"platform": ["FACEBOOK"],"startDate": "2026-01-15","endDate": null,"status": "ACTIVE","impressions": "10K-50K","spend": "$500-$999","demographicDistribution": {"age": "25-44","gender": "All","location": "United States"},"scrapedAt": "2026-01-22T10:00:00.000Z"}
With Engagement Metrics (includeEngagement: true)
{"engagement": {"impressionsMin": 10000,"impressionsMax": 50000,"impressionsRange": "10K-50K","reachEstimate": "7000-35000","spendMin": 500,"spendMax": 999,"spendRange": "$500-$999","engagementRate": 3.2}}
With AI Sentiment (enableSentimentAnalysis: true)
{"sentiment": {"score": 0.75,"label": "positive","confidence": 0.89,"summary": "Motivational appeal with urgency and social proof","tone": "aspirational"}}
AI Sentiment Analysis
Understand the emotional appeal and tone of competitor ad copy using AI:
| Provider | Model | Best For |
|---|---|---|
| OpenAI | GPT-4o-mini | Fast, affordable analysis |
| Anthropic | Claude Haiku | Nuanced understanding |
| Gemini Flash | Cost-effective at scale | |
| Mistral | Mistral Small | European data residency |
| Cohere | Command-R | Enterprise deployments |
What Sentiment Analysis Returns
- score: -1 to 1 (negative to positive)
- label: negative, neutral, or positive
- confidence: 0 to 1
- summary: Brief description of ad's emotional appeal
- tone: Primary tone (urgency, excitement, professional, friendly, fear, aspirational)
Anti-Detection Options
Camoufox Mode
Camoufox provides browser fingerprint evasion:
- Hides automation indicators (webdriver, etc.)
- Randomizes browser fingerprints
- Mimics human browsing patterns
- Evades common bot detection systems
Enable with "useCamoufox": true. Recommended for large scrapes.
Firecrawl Mode
Firecrawl provides API-based scraping:
- No browser management needed
- Built-in proxy rotation
- Automatic retries on failure
- Often faster than browser-based scraping
Enable with "useFirecrawl": true and provide your API key.
Country Codes
| Code | Country | Code | Country |
|---|---|---|---|
| US | United States | GB | United Kingdom |
| CA | Canada | AU | Australia |
| DE | Germany | FR | France |
| ES | Spain | IT | Italy |
| BR | Brazil | IN | India |
| MX | Mexico | JP | Japan |
| KR | South Korea | NL | Netherlands |
| SE | Sweden | PL | Poland |
Pricing
This actor uses pay-per-event billing:
| Event | Description | Price |
|---|---|---|
ad_scraped | Per ad extracted | $0.01 |
Cost Examples:
- 50 ads: 50 × $0.01 = $0.50
- 200 ads: 200 × $0.01 = $2.00
- 500 ads: 500 × $0.01 = $5.00
Demo mode runs are free (no real scraping occurs).
Frequently Asked Questions
Does this scraper require Meta API access?
No. This scraper uses the publicly accessible Meta Ad Library website. No Facebook API keys or developer accounts are required.
Why am I getting "No ads found"?
Several possible causes:
- Spelling - Check that page names are spelled correctly
- Page ID - Use Page ID instead of name for more accurate results
- Bot detection - Enable Camoufox mode or try Firecrawl
- No matching ads - The search genuinely returned no results
What's the difference between Camoufox and Firecrawl modes?
- Camoufox: Uses a browser with anti-detection features. More thorough extraction but slower.
- Firecrawl: Uses an API service. Faster but may extract less detail.
For most use cases, start without either, then enable Camoufox if you encounter blocks.
How accurate are the spend estimates?
Spend estimates come from Meta's Ad Library disclosure data. They represent ranges (e.g., "$500-$999") rather than exact figures. Accuracy depends on Meta's reporting requirements in each country.
Can I scrape ads from any country?
Yes! The Meta Ad Library is available globally. Use the country parameter with the appropriate country code (US, GB, DE, FR, etc.).
How often should I run this scraper?
Depends on your use case:
- Weekly - For ongoing competitive monitoring
- Before campaigns - For pre-launch competitor research
- Monthly - For market trend reports
Does demo mode charge me?
No. Demo mode generates sample data without making real requests or charges.
Can I filter by date range?
The Meta Ad Library doesn't support exact date filtering. You can filter by activeStatus (ACTIVE/INACTIVE) and the output includes startDate for each ad.
How do I get a Page ID?
- Go to the Facebook page
- Click "About" or "Page Transparency"
- The Page ID is in the URL or the About section
- Alternatively, use a tool like Find Facebook ID
Is this compliant with Meta's Terms of Service?
This scraper accesses publicly available data from the Meta Ad Library, which Meta provides for transparency purposes. However, always review Meta's current policies and use responsibly.
Troubleshooting
Getting blocked or rate limited
- Enable
useCamoufox: true - Add
proxyConfigurationwith Apify proxies - Reduce
maxAdsper run - Try Firecrawl mode as an alternative
Slow scraping performance
- The Ad Library requires JavaScript rendering
- Try Firecrawl mode for faster results
- Reduce
maxAdsfor quicker runs - Run during off-peak hours
Missing engagement data
- Enable
includeEngagement: true - Some ads don't have engagement data available
- Engagement data availability varies by country
AI sentiment analysis not working
- Verify your AI API key is valid
- Check the
aiProvidermatches your key - Ensure
enableSentimentAnalysis: true
Integration Examples
Zapier
Use Webhooks by Zapier to receive results:
{"searchQuery": "your keyword","webhookUrl": "https://hooks.zapier.com/hooks/catch/YOUR_ID","demoMode": false}
Make.com
Use the Apify module or custom webhook:
{"searchQuery": "your keyword","webhookUrl": "https://hook.make.com/YOUR_WEBHOOK","demoMode": false}
API Integration
const Apify = require('apify');const run = await Apify.call('alizarin_refrigerator-owner/meta-ad-library-facebook-instagram-ad-intelligence', {searchQuery: 'fitness app',country: 'US',maxAds: 50,demoMode: false,});console.log(run.defaultDatasetItems);
Limitations
- Meta Ad Library may require JavaScript rendering (handled automatically)
- Some demographic data requires authentication (not currently supported)
- Rate limits may apply for very large scrapes (use Camoufox + proxies)
- Historical ads beyond ~7 years may not be available
- Exact spend figures are not provided (only ranges)
Support
- Actor Issues: Apify Console
- General Questions: Actor Arsenal
- Built by: John Rippy
Built by John Rippy | Actor Arsenal