Meta Ad Library Facebook & Instagram Ad Intelligence avatar
Meta Ad Library Facebook & Instagram Ad Intelligence

Pricing

from $0.01 / 1,000 results

Go to Apify Store
Meta Ad Library Facebook & Instagram Ad Intelligence

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

John Rippy

Maintained by Community

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:

  1. Searches the Meta Ad Library by keyword, page name, or Page ID
  2. Extracts ad data including creatives, copy, CTAs, and targeting
  3. Provides engagement metrics including impression ranges and spend estimates
  4. Analyzes ad sentiment using AI (OpenAI, Anthropic, Google, Mistral, Cohere)
  5. 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
}
{
"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

FeatureDescription
Multi-PlatformFacebook, Instagram, Messenger, Audience Network
Ad CreativesExtract images, videos, and carousel assets
Copy AnalysisHeadlines, descriptions, CTAs, link URLs
Spend EstimatesImpression ranges and estimated ad spend
Engagement MetricsReach estimates and engagement rates
AI SentimentAnalyze ad copy tone with 5 AI providers
Camoufox ModeAnti-detection browser for reliable scraping
Firecrawl ModeAPI-based alternative for faster results
WebhooksReal-time delivery to Zapier, Make, n8n

Input Parameters

Search Options

ParameterTypeDefaultDescription
searchQuerystring-Search ads by keyword (e.g., "fitness app", "meal delivery")
pageNamestring-Facebook/Instagram page name (e.g., "Nike")
pageIdstring-Direct Facebook Page ID (more accurate)

Filter Options

ParameterTypeDefaultDescription
countrystring"US"Target country (US, GB, CA, AU, DE, FR, etc.)
platformstring"ALL"Platform filter (FACEBOOK, INSTAGRAM, MESSENGER, ALL)
adTypestring"ALL"Ad category (POLITICAL, HOUSING, EMPLOYMENT, CREDIT, ALL)
mediaTypestring"ALL"Media type (IMAGE, VIDEO, MEME, ALL)
activeStatusstring"ACTIVE"Status filter (ACTIVE, INACTIVE, ALL)
maxAdsnumber50Maximum ads to scrape (1-500)

Data Options

ParameterTypeDefaultDescription
includeCreativesbooleantrueInclude image/video URLs in output
includeEngagementbooleanfalseInclude detailed engagement metrics
demoModebooleanfalseGenerate sample data for testing
webhookUrlstring-URL to POST results when complete

Anti-Detection Options

ParameterTypeDefaultDescription
useCamoufoxbooleanfalseEnable Camoufox anti-detection browser
useFirecrawlbooleanfalseUse Firecrawl API for scraping
firecrawlApiKeystring-Your Firecrawl API key
proxyConfigurationobject-Proxy settings for avoiding blocks

AI Sentiment Analysis

ParameterTypeDefaultDescription
enableSentimentAnalysisbooleanfalseEnable AI sentiment analysis of ad copy
aiProviderstring"none"AI provider: openai, anthropic, google, mistral, cohere
aiApiKeystring-Your AI provider API key
aiModelstring-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:

ProviderModelBest For
OpenAIGPT-4o-miniFast, affordable analysis
AnthropicClaude HaikuNuanced understanding
GoogleGemini FlashCost-effective at scale
MistralMistral SmallEuropean data residency
CohereCommand-REnterprise 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

CodeCountryCodeCountry
USUnited StatesGBUnited Kingdom
CACanadaAUAustralia
DEGermanyFRFrance
ESSpainITItaly
BRBrazilINIndia
MXMexicoJPJapan
KRSouth KoreaNLNetherlands
SESwedenPLPoland

Pricing

This actor uses pay-per-event billing:

EventDescriptionPrice
ad_scrapedPer 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:

  1. Spelling - Check that page names are spelled correctly
  2. Page ID - Use Page ID instead of name for more accurate results
  3. Bot detection - Enable Camoufox mode or try Firecrawl
  4. 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?

  1. Go to the Facebook page
  2. Click "About" or "Page Transparency"
  3. The Page ID is in the URL or the About section
  4. 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

  1. Enable useCamoufox: true
  2. Add proxyConfiguration with Apify proxies
  3. Reduce maxAds per run
  4. Try Firecrawl mode as an alternative

Slow scraping performance

  1. The Ad Library requires JavaScript rendering
  2. Try Firecrawl mode for faster results
  3. Reduce maxAds for quicker runs
  4. Run during off-peak hours

Missing engagement data

  1. Enable includeEngagement: true
  2. Some ads don't have engagement data available
  3. Engagement data availability varies by country

AI sentiment analysis not working

  1. Verify your AI API key is valid
  2. Check the aiProvider matches your key
  3. 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


Built by John Rippy | Actor Arsenal