Facebook Ad Library Scraper
Pricing
from $20.00 / 1,000 results
Facebook Ad Library Scraper
Scrape every Meta ad (Facebook, Instagram, Messenger, Audience Network) from the Ad Library by keyword, Facebook Page ID, or Ad Library URL. Sort by total impressions or most recent. Extract creatives, copy, CTAs, impressions, and spend ranges. 100+ languages. No Meta Graph API or developer app.
Pricing
from $20.00 / 1,000 results
Rating
0.0
(0)
Developer
Shop Intel
Actor stats
1
Bookmarked
3
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Facebook Ad Library Scraper – Extract Meta Ads by Keyword, Page ID & URL | Apify Actor
Facebook Ad Library Scraper extracts live and historical ads from the Meta Ad Library — search by keyword, Facebook Page ID, or custom Ad Library URL, capture creative, copy, impressions, spend ranges, and export structured data in JSON or CSV.
🧠 Overview
This Facebook Ad Library Scraper is a premium Apify Actor for performance marketers, competitive‑intelligence teams, political researchers, and agencies that need bulk structured access to Meta ads across Facebook, Instagram, Messenger, and the Audience Network. Input a keyword (e.g., nike), a Facebook Page ID, or a pre‑filtered Ad Library URL, choose sortBy (total_impressions or most_recent), set your maxResults, and the Actor scrapes every matching ad — creative, copy, CTA, landing URLs, impressions ranges, spend ranges, regions, demographics, and run timing. Zero filtering technology and universal language support (100+ languages including Arabic, Chinese, Japanese, Korean, Russian) keep the yield high on international brands. No Meta developer app, no token lifecycle, no API review.
🆚 Facebook Ad Library Scraper vs. Meta Ad Library API
| Feature | Official Meta Ad Library API | This Facebook Ad Library Scraper |
|---|---|---|
| Developer app | Required (with review) | None |
| Access tokens | Graph API token lifecycle | None |
| Ad types | Mostly political / issue ads | All ad types — commercial, political, issue |
| Regions | Limited political disclosure markets | Global, all Ad Library regions |
| Languages | English‑biased | 100+ languages incl. Arabic, Chinese, Japanese, Korean, Russian |
| Sort order | Default only | total_impressions or most_recent |
| Input modes | Structured query only | Keyword, Page ID, or full Ad Library URL |
| Output | JSON only | CSV, JSON, Excel + key‑value store |
| Setup time | Days (app review) | Seconds |
✨ Features
- Extract every ad currently in the Meta Ad Library by keyword, Page ID, or URL.
- Search across Facebook, Instagram, Messenger, and Audience Network placements in one run.
- Sort results by
total_impressions(high to low) ormost_recent(relevancy, grouped by month). - Scrape unlimited ads per run — no hard
maxResultscap. - Capture creative assets: ad body, title, CTA, landing page, image and video URLs.
- Track performance ranges: impressions lower/upper bounds and spend ranges (where disclosed).
- Map distribution: regions, countries, age ranges, and gender targeting.
- Support 100+ languages including Arabic, Chinese, Japanese, Korean, Russian — zero filtering on non‑Latin scripts.
- Export per‑ad Dataset rows + structured
OUTPUTJSON with summary and ads array. - Automate with the Apify scheduler, webhooks, and REST API for always‑on ad monitoring.
- Handle typed error objects and
summary.status(SUCCESS/ERROR) for reliable pipelines.
🎯 Use Cases
- Competitor Ad Monitoring: Track every Meta ad a competitor is running across Facebook and Instagram — with creative, copy, and landing URLs.
- Creative Strategy & Swipe Files: Build a searchable library of high‑performing ads (sorted by
total_impressions) for your creative team's briefs. - Political Ad Transparency: Collect political and issue ads for journalism, academic research, and regulatory reporting.
- Brand Safety & IP Enforcement: Detect counterfeit brand ads, unauthorized affiliates, and trademark misuse running on Meta platforms.
- Market Intelligence by Region: Use custom Ad Library URLs to filter by country, date range, ad type, and platform — then benchmark spend and creative across markets.
- Agency New Business: Scrape a prospect's Meta ad footprint pre‑pitch to diagnose creative gaps and propose concrete campaign ideas.
⚙️ Input Parameters
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
keyword | string | One of three | Brand or search term (e.g., nike, adidas). | "nike" |
pageId | string | One of three | Numeric Facebook Page ID. | "15087023549" |
adLibraryUrl | string | One of three | Full Meta Ad Library URL with filters. | "https://www.facebook.com/ads/library/?active_status=all&ad_type=all&country=ALL&q=nike" |
maxResults | integer | Yes | Target number of ads to collect (no upper limit). | 500 |
sortBy | string | No | total_impressions (default) or most_recent. | "total_impressions" |
📤 Output Example (JSON)
{"metadata": {"adArchiveId": "1234567890123456","pageId": "15087023549","pageName": "Nike","publisherPlatforms": ["FACEBOOK", "INSTAGRAM"]},"ad_content": {"body": "Just Do It. Discover the new Pegasus 41.","title": "Nike Pegasus 41","cta": "Shop Now","landingUrl": "https://www.nike.com/launch/t/pegasus-41","mediaUrls": ["https://scontent.../video.mp4"]},"timing": {"startDate": "2026-03-15","endDate": null,"active": true},"performance": {"impressions": { "lowerBound": 500000, "upperBound": 999999 },"spend": { "lowerBound": 10000, "upperBound": 14999, "currency": "USD" }},"distribution": {"regions": ["US", "CA", "UK", "DE"],"demographics": { "ageRange": "18-44", "gender": "all" }},"status": { "active": true, "adDeliveryStartTime": 1710460800 }}
📋 Output Data Schema
Every Meta ad is returned as a structured object with these top‑level keys:
| Key | Type | Fields |
|---|---|---|
metadata | object | adArchiveId, pageId, pageName, publisherPlatforms (FACEBOOK, INSTAGRAM, MESSENGER, AUDIENCE_NETWORK, WHATSAPP) |
ad_content | object | body, title, cta, landingUrl, mediaUrls[] |
timing | object | startDate, endDate, active |
performance | object | impressions.lowerBound, impressions.upperBound, spend.lowerBound, spend.upperBound, spend.currency |
distribution | object | regions[], demographics.ageRange, demographics.gender |
status | object | active, adDeliveryStartTime, adDeliveryStopTime |
additional_info | object | Any extra fields Meta exposes (creative tags, disclaimers, political/issue labels) |
Run‑level OUTPUT also contains summary.status (SUCCESS / ERROR), summary.totalAds, summary.keyword, summary.sortBy, and timing metadata.
▶️ How to Use
- Run on Apify Console: Open the Facebook Ad Library Scraper page, click Try for free, enter a keyword (or Page ID / URL), set
maxResultsandsortBy, and press Start. - Via API: Trigger runs programmatically with the Apify REST API or
ApifyClientand stream the Dataset into your pipeline. - Via CLI: Run with the Apify CLI:
apify call scrapeio/meta-facebook-ad-scrapper-using-ad-library-url-premium \--input='{"keyword":"nike","maxResults":200,"sortBy":"total_impressions"}'
🔗 API Example (JavaScript)
const { ApifyClient } = require('apify-client');const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('scrapeio/meta-facebook-ad-scrapper-using-ad-library-url-premium').call({keyword: 'nike',maxResults: 150,sortBy: 'total_impressions',});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Collected ${items.length} Meta ads`);items.slice(0, 3).forEach(ad => {console.log(`${ad.metadata.pageName}: ${ad.ad_content.title}`);});
📈 Why Use This Meta Ad Library Scraper?
- Speed & Automation: Pull hundreds of Meta ads per brand or keyword in minutes — no manual Ad Library browsing or screenshots.
- Universal Language Support: Zero‑filtering technology handles 100+ languages including Arabic, Chinese, Japanese, Korean, and Russian — unique among Apify ad scrapers.
- Flexible Input Modes: Keyword, Page ID, or full Ad Library URL — plug it into whatever workflow your analysts already use.
- Impression‑Sorted Intelligence:
sortBy=total_impressionssurfaces the highest‑reach ads first — the single best signal for creative strategy. - No Meta Developer Account: Skip the Ad Library API approval queue, Graph API tokens, and rate‑limited SDKs — start scraping immediately.
- Developer Integrations: Apify REST API, webhooks, scheduler, JavaScript + Python SDKs, and structured
OUTPUTfor n8n, Make, Zapier, Google Sheets, and BigQuery.
❓ FAQ
Q: Is it legal to scrape the Meta Ad Library? The Meta Ad Library is a public transparency product from Meta itself. Using it for research, journalism, competitive intelligence, and compliance monitoring is widely accepted. You are responsible for complying with Meta's Terms of Service and local data laws.
Q: How is this different from Meta's own Ad Library API? Meta's Ad Library API requires developer app review, Graph API tokens, and is largely limited to political and issue ads in many regions. This Actor works with all ad types in the public UI and returns structured rows without developer approval.
Q: Does it support Instagram and WhatsApp ads?
Yes — any ad with INSTAGRAM or WHATSAPP in publisherPlatforms is returned. If you only want Instagram, use the companion Instagram Ads Scraper; for WhatsApp only, use the WhatsApp Ads Scraper.
Q: What is the difference between total_impressions and most_recent?
total_impressions sorts ads from highest to lowest reach (best for creative strategy). most_recent matches Meta's grouped "recent" view and surfaces freshly launched ads first.
Q: Can I filter by country or date range?
Yes — build a custom Ad Library URL with the filters you need in the browser and paste it into adLibraryUrl. The Actor honors country, active_status, ad_type, and date parameters.
Q: Does it support proxies? Yes. Configure Apify Proxy (residential or datacenter) for stable high‑volume or scheduled runs.
Q: What output formats are supported?
Dataset exports to CSV, JSON, Excel, XML, and HTML. OUTPUT JSON contains a summary object and a data.ads array for the full run context.
Q: Does it handle CAPTCHAs and rate limits?
Yes — the Actor retries transient errors, rotates through proxy sessions, and returns typed errors in summary.error for debuggable pipelines.
📣 Start Scraping the Meta Ad Library Today
Run the Facebook Ad Library Scraper on Apify now → and turn any brand, keyword, or Ad Library URL into a live feed of Meta ad creatives, impressions, and spend data.
🔗 Related Scrapers by ScrapeIO
Build cross‑platform ad‑intelligence pipelines with these companion Apify Actors:
- Instagram Ads Scraper — Instagram‑only ads with creative and copy.
- WhatsApp Ads Scraper — Click‑to‑WhatsApp ad intelligence.
- Facebook Ad Library Brand Finder — resolve brand names to verified Page IDs.
- Google Maps Scraper — local businesses, reviews, and contacts.
- Amazon Multi‑Marketplace Scraper — ASINs, prices, and rankings across 23 regions.
- Google News Scraper — headlines, sources, and publisher links by keyword.
- YouTube Video Downloader — download videos or audio to cloud storage.
FastAd — automation & growth tooling.